Найти в Дзене

Учим змеиный или первые шаги в Python. Введение

Всем привет! Меня зовут Даниил и я начинающий разработчик, вернее тот, кто стремится связать свою жизнь с разработкой. За плечами у меня практически нет опыта, разве что несколько месяцев программирования на мёртвом Pascal. Но сейчас речь о том как я решил выучить Python до уровня Junior-разработчика и начать свою карьеру. Попытки были и до этого, но всё заканчивалось очень быстро. Надеюсь, что цикл этих статей поможет мне оставаться в тонусе и не бросать начатое. Если у вас тоже есть огромное желание постичь змеиный язык, но под натиском сериалов и игр не получается достичь успеха, то присоединяйтесь, будем идти к цели вместе. А какой план, сэр? Изучение змеиного языка представлено в Сети чем-то элементарным, но не смотря на обилие всяческой информаци, статей, курсов и книг — легче не становится. Кроме того стоит помнит, что не все материалы нам подходят. Наш язык программирования существует в двух версиях Python 2 и Python 3. Накопилось множество материалов по обеим версиям языка, но
Оглавление

Всем привет! Меня зовут Даниил и я начинающий разработчик, вернее тот, кто стремится связать свою жизнь с разработкой. За плечами у меня практически нет опыта, разве что несколько месяцев программирования на мёртвом Pascal. Но сейчас речь о том как я решил выучить Python до уровня Junior-разработчика и начать свою карьеру. Попытки были и до этого, но всё заканчивалось очень быстро. Надеюсь, что цикл этих статей поможет мне оставаться в тонусе и не бросать начатое. Если у вас тоже есть огромное желание постичь змеиный язык, но под натиском сериалов и игр не получается достичь успеха, то присоединяйтесь, будем идти к цели вместе.

А какой план, сэр?

Изучение змеиного языка представлено в Сети чем-то элементарным, но не смотря на обилие всяческой информаци, статей, курсов и книг — легче не становится. Кроме того стоит помнит, что не все материалы нам подходят. Наш язык программирования существует в двух версиях Python 2 и Python 3. Накопилось множество материалов по обеим версиям языка, но нам нужны только относящиеся к Python 3. Я подсмотрел в одном из видеороликов классную, на мой взгляд, стратегию по изучения, её же и буду придерживаться:

  • Читаем книгу «A byte of Python» (Укус питона). Сам по себе учебник чуть больше 150 страниц, а если исключить все оглавления, примечания и официальные благодарности, то и того меньше. Книга познакомит нас с синтаксисом языка и объяснит как писать можно, а как не стоит.
  • Вот мы освоим синтаксис, который в целом не сложный, но этого нам не хватит для работы программистом в современной компании. Мы не умеем решать простые задачи. Это как с обычными языками, алфавита и грамматики не достаточно для полноценного общения, нужен словарный запас. В пополнении багажа фразами и изящными клеше нам поможет книга «Грокаем алгоритмы. Иллюстрированное пособие для программистов и любопытствующих». Важный факт, примеры в книге представлены на версии языка Python 2, но это не должно мешать, наша задача понять как работает алгоритм, а не вдаваться в тонкости различий версий языка.
  • Теперь мы умеем составлять хоть какие-то логические конструкции на Python, но у нас мало практики, надо где-то набраться опыта. На самом деле, для этого в Сети тоже нашлось решение — будем решать задачи из онлайн сборника «Проект Эйлера». На данный момент их там более 600. Нам будет достаточно решить хотя бы первую сотню, но можно идти и дальше, в этом нам никто не мешает. Сборник построен таким образом, что поставленную задачу можно решить, используя любой удобный язык программирования, нам же нужен Python.

Кстати, в нашем Telegram канале есть ссылки на всю литературу, которой мы будем пользоваться, подписывайтесь и смело сохраняйте себе книженции. Кроме того, на канале много всякого интересного не только по теме изучения змеиного языка, но и по программированию в целом. Ссылка в самом конце статьи.

А на чём мы будем работать?

Во-первых, нам нужно устройство, на котором мы будем писать код. В качестве такого можно использовать компьютер практически на любой операционной системой (на любой, если вы не используете какие-то нестандартные решени). В книге «Укус питона» подробно описано как установить все необходимые пакеты для работы, но так же вы можете посетить официальный сайт и там ознакомиться со всеми инструкциями.

Во-вторых, требуется устройство для изучения литературы и просмотра видеоуроков, но в целом это может быть одно и то же устройство. Главное чтобы вам было удобно, а остальное второстепенно.

Я выбрал для себя не совсем стандартный вариант для рабочей платформы. Пишу код на Apple iPad 2018 под управлением iOS 12.2 (но сам жду релиза стабильной версии iPad OS, с её выходом всё должно поменяться, во всяком случае так сказали на презентации). Можно начать говорить о том, что линейка iPad предназначена для потребление контента и творить на нём, а тем более программировать невозможно. Но не всё так плохо, разработчики из Германии подсуетились и выпустили полноценный редактор кода Pythonista.

Скриншот интерфейса приложения Pythonista
Скриншот интерфейса приложения Pythonista

Приложение работает на iOS и даёт доступ ко всем привычным инструментам, библиотекам, работе с пользовательским интерфейсом и отладке кода. У этого способа есть ряд преимуществ, например, планшет всегда рядом с вами и не составит труда решать задачки в дороге, iPad куда легче и тоньше ноутбуков и всё работает офлайн. Из минусов можно заметить, что не всегда удобно набирать код на виртуальной клавиатуре и придётся докупить аксессуары, кроме того, приложение не бесплатное.

А что потом?

Теперь нашей главное задачей становится лишь только следование плану. Читая главу за главой мы будем всё больше погружаться в мир змеиного языка и в случае удачного погружения сможем заняться разработкой серьёзных алгоритмов. Важно запоминать все тонкости синтаксиса и записывать основные мысли в отдельную тетрадь. Конечно, никто не заставляет конспектировать всё, но тетрадка с записями не раз поможет вам освежить в памяти то, что пытались понять прошлой ночью.

Я тоже продолжаю изучение и буду делиться своими краткими конспектами на темы из книг, рассказывать интересные моменты и пробовать объяснить то, что не мог понять сам. Не забывайте заходить на наш Telegram канал за литературой, обзорами новостей, полезными советами и подборками материалов.