Путь Python Junior-а в 2017

3
27728

Инфографика о минимум знаний и навыков, необходимых современному джуниору. Без каких технологий не обойтись начинающему питон-разработчику?

python

Общее

Есть несколько вещей, которыми должен владеть любой начинающий разработчик. Это системы контроля версий, базовые знания информатики, алгоритмы и структуры данных и не только.

  • Git — контроль версий
  • SSH — сетевой протокол прикладного уровня, позволяющий производить удалённое управление операционной системой и туннелирование TCP-соединений (например, для передачи файлов)
  • HTTP — протокол прикладного уровня передачи данных
  • Базовые навыки пользования терминалом
  • Алгоритмы и структуры данных — основа основ
  • Кодировки
  • SQL, базы данных
  • nginx — веб-сервер и почтовый прокси-сервер, работающий на Unix-подобных операционных системах
  • GitHub
    • создайте свой профиль
    • изучайте интересные вам проекты, учитесь читать чужой код, выработайте привычку разбираться в том, как он работает
    • создайте свой проект с открытым кодом или присоединитесь к уже существующему
  • ООП
    • основные принципы ООП
    • императивный и декларативный стили
    • замыкания и интроспекция
    • асинхронная концепция программирования
  • ОС
    • потоки
    • процессы
    • сокеты
    • стек протоколов TCP/IP

Основы Python

  • Python2 vs Python3 — различия синтаксиса
  • Дескрипторы — очень мощный инструмент в Python. Дескрипторы — это классы, в которых определены методы __get__, __set__ и __delete__
  • GIL — способ синхронизации потоков
  • WSGI — стандарт взаимодействия между Python-программой, выполняющейся на стороне сервера, и самим веб-сервером
  • Генераторы и итераторы
  • Импорт модулей

Дополнительные инструменты

Фреймворки

Асинхронные

  • Tornado
  • gevent
  • aiohttp
  • Celery

Синхронные

  • Pyramid
  • Flask
  • Django

Тестирование

  • doctest
  • py.test
  • Selenium
  • unittest/pyUnit

Менеджеры пакетов

  • pip



3 Комментарии