Курс Разработчик Python создан для программистов, желающих приобрести дополнительные знания для повышения своего текущего уровня программирования на языке Python. Чтобы стать слушателем данного курса у вас должен быть определенный опыт разработки на этом языке. Курс научит вас создавать уникальные подходы к решению различных задач, а Python будет лишь неким инструментом, благодаря которому вы сможете реализовывать свои идеи.
Курс ставит своей целью погрузить вас в современную “промышленную” разработку в широком смысле, как в теории, так и на практике. При этом сам язык Python является лишь инструментом, с помощью которого мы будем препарировать различные области программерских знаний. Во главу угла же поставлено освоение основных software engineering компетенций через призму конкретного языка, а также формирование прагматичного подхода к решению задач.
Особенности курса: практикоориентированность и охват. На курсе много домашних заданий, некоторые из которых будут представлять настоящий challenge, а опциональные задания позволят самым смелым капнуть еще глубже и “потрогать” еще более продвинутые вещи. При этом области, в которых вы будете испытывать свои способности, имеют весьма широкий спектр: курс охватывает и web, и анализ данных и вопросы создания высоконагруженных систем. В конце курса вы реализуете проект на свободную тему.
Курс универсальный, рассматриваются и 2 и 3 версии Python. Домашние работы и проект можно выполнять на любой версии, примеры на занятиях чаще работают под обе версии, но большинство писались на 2ой версии, запущен процесс их переделывания на Python 3. Все необходимые отступления и обсуждения разницы в версиях делаются.
По окончании курса вы получите понимание структуры современной разработки ПО и место Python и прочих инструментов в ней, ответите на вопросы: “как писать простой и идиоматичный код, за который не будет мучительно стыдно?“, “как тестировать и поддерживать код на Python?“, “как написать приложение, которое не умрёт под нагрузкой?“
Будет сложно:
Придется много кодить, быстро разбираться в темах и выдерживать сроки сдачи домашних заданий. А за последний месяц вам предстоит написать полноценный выпускной проект!
Мы не учим тех, кто только начинает разбираться в основах:
После регистрации вы проходите тестирование, чтобы определить, сможете ли вы попасть в группу или нет. Если вам не хватает знаний, то вам нужны курсы попроще.
Программа курса:
Первый месяц
Скачать
Курс ставит своей целью погрузить вас в современную “промышленную” разработку в широком смысле, как в теории, так и на практике. При этом сам язык Python является лишь инструментом, с помощью которого мы будем препарировать различные области программерских знаний. Во главу угла же поставлено освоение основных software engineering компетенций через призму конкретного языка, а также формирование прагматичного подхода к решению задач.
Особенности курса: практикоориентированность и охват. На курсе много домашних заданий, некоторые из которых будут представлять настоящий challenge, а опциональные задания позволят самым смелым капнуть еще глубже и “потрогать” еще более продвинутые вещи. При этом области, в которых вы будете испытывать свои способности, имеют весьма широкий спектр: курс охватывает и web, и анализ данных и вопросы создания высоконагруженных систем. В конце курса вы реализуете проект на свободную тему.
Курс универсальный, рассматриваются и 2 и 3 версии Python. Домашние работы и проект можно выполнять на любой версии, примеры на занятиях чаще работают под обе версии, но большинство писались на 2ой версии, запущен процесс их переделывания на Python 3. Все необходимые отступления и обсуждения разницы в версиях делаются.
По окончании курса вы получите понимание структуры современной разработки ПО и место Python и прочих инструментов в ней, ответите на вопросы: “как писать простой и идиоматичный код, за который не будет мучительно стыдно?“, “как тестировать и поддерживать код на Python?“, “как написать приложение, которое не умрёт под нагрузкой?“
Будет сложно:
Придется много кодить, быстро разбираться в темах и выдерживать сроки сдачи домашних заданий. А за последний месяц вам предстоит написать полноценный выпускной проект!
Мы не учим тех, кто только начинает разбираться в основах:
После регистрации вы проходите тестирование, чтобы определить, сможете ли вы попасть в группу или нет. Если вам не хватает знаний, то вам нужны курсы попроще.
Программа курса:
Первый месяц
- Advanced basics. Unicode. Floating point numbers.
Itertools, functional programming, recursion, lambda, closures. Decorators. - HW1: Advanced Python Exercises.
- Internals. CPython, source structure, basic types implementation. Memory model, allocation, reference counting, garbage collection. GIL.
Algorithms, Python time complexity, classic algorithms, graph algorithms. - HW2: Adding new statement to Python language.
- OOP. Object model. Descriptors. Magic methods. ABC. Metaprogramming.
- HW3: Design Patterns.
- Automatization. Databases, networking, daemons.
Deployment. Setup tools, distribution. packaging, containers. - HW4: Asynchronous HTTP server.
- WSGI. Fast CGI, uWSGI, Gunicorn.
Django. MVC\MTV, environment setup. - HW5: uWSGI microservice daemon.
- ORM. CRUD, Query sets, Object managers, Transactions, Migrations.
SQLAlchemy. Schema, Types, CRUD, Exceptions, Transactions. - HW6: Django App I
- Views, Function/Class based views. Forms, validation. Pagination.
Templates. Filters, tags, Jinja2. - HW7: Django App II
- Middleware. Django Admin.
Testing. Unit tests, CI. - HW8: Django App III
- REST API. Architecture, frameworks, rate limiting, documentation.
Queues, Celery.
Twisted. Tornado. Flask. - HW9: Django App IV
- IPython.
SciPy, NumPy. Basics, arrays, linear algebra, advanced usage. - HW10: Logistic Regression.
- Pandas. Basics, data loading and storage, data wrangling, aggregation, time series.
- HW11: Open data analysis.
- Visualization. matplotlib, seaborn, pandas, d3.js, Apache Zeppelin.
Python and Hadoop. Hadoop basics, streaming, ETL. - HW12: MapReduce task with visualization.
- Profiling. Linux tools, CPU, Memory, Tracing.
Concurrency, Parallelism. Multithreading, multiprocessing, gevent. - HW13: Concurrent file processing.
- C extensions, C API, ctypes, cffi.
Cython, Pypy. - HW14: Protobuf (un)packer extension.
- Clustering. Parallel Python, IPython Parallel, Queues.
Memory optimization. RAM usage, probabilistic data structures.
Golang. - HW15: Concurrent file processing in Go.
- Python 3. Overview, migration, features.
- HW16: Python 3 Exercises.
- Monitoring system
- Flask REST API
- Django Web App
- Data pipeline
- Custom project
Для просмотра скрытого содержимого вы должны войти или зарегистрироваться.
Скачать
Для просмотра скрытого содержимого вы должны войти или зарегистрироваться.