Здорово, что вы решили начать изучение Python! Я верю, что первый шаг в изучении любого языка программирования – это понимание, как учить. Умение учиться, возможно, самый важный навык, связанный с программированием.
Почему это так важно? Ответ прост: по мере развития языка создаются библиотеки и инструменты. Умение учиться необходимо, чтобы не отставать от этих изменений и быть успешным программистом.
В этой статье мы предложим некоторые стратегии обучения, которые помогут стать крутым программистом.
Советы
Вот некоторые подсказки, которые помогут начинающему программисту реализовать новые концепции.
№1: Программируйте ежедневно
Постоянство очень важно при изучении языка. Мы рекомендуем взять за правило писать код ежедневно. В это может быть сложно поверить, но мышечная память играет большую роль в программировании. Ежедневное написание кода действительно поможет развить мышечную память. Хотя на первый взгляд это может показаться пугающим, начинайте с 25 минут каждый день и увеличивайте время работы дальше.
Ознакомьтесь с руководством «Уроки Python для начинающих» для получения информации о настройке и упражнениях, которая поможет на старте.
№2: Записывайте
По мере развития в качестве программиста, вы можете задаться вопросом, стоит ли делать какие-нибудь заметки. Конечно, стоит! Фактически исследования показывают, что заметки от руки наиболее удачны для долговременного запоминания. Это будет особенно полезно для желающих стать полноценным разработчиком, ведь многие интервью включают в себя написание кода на доске.
Однажды вы начнете работать над маленькими проектами и программами. Написание алгоритма от руки поможет спланировать код перед переносом его на компьютер. Можно сохранить много времени, если расписать, какие функции и классы необходимы и как они будут взаимодействовать.
№3: Помните про интерактив!
Когда вы изучаете базовые структуры данных Python (например, строки, списки, словари и прочее) или отлаживаете свое приложение, интерактивные оболочки Python будут лучшим обучающим инструментом. Мы тоже много ими пользуемся для этого сайта!
Для использования интерактивной оболочки Python (иногда ее называют «Python REPL») необходим установленный Python. У нас есть пошаговое руководство, которое поможет с этим. Для активации интерактивной оболочки просто откройте терминал и введите команду python или python3 в зависимости от версии установки.
Теперь, когда вы знаете, как запустить оболочку, предлагаем некоторые примеры ее использования в обучении.
Чтобы узнать, какие операции могут быть выполнены над элементом, используйте dir()
:
>>> my_string = 'Это строка'
>>> dir(my_string)
['__add__', ..., 'upper', 'zfill'] # Сокращенный вариант результата
Команда возвращает все методы (в том числе действия), которые можно применить к элементу. Например:
>>> my_string.upper()
>>> 'ЭТО СТРОКА'
Отмечу, что мы применили метод upper()
. Видите, что он делает? Он переводит все символы строки в верхний регистр! Узнайте больше про встроенные методы в статье «Строки в Python».
Узнать тип элемента:
>>> type(my_string)
>>> str
Использовать встроенную справку для получения полной информации:
>>> help(str)
Импорт библиотек и работа с ними:
>>> from datetime import datetime
>>> dir(datetime)
['__add__', ..., 'weekday', 'year'] # Сокращенный вариант результата
>>> datetime.now()
datetime.datetime(2019, 5, 4, 14, 44, 50, 851904)
Запуск команд для командной строки:
>>> import os
>>> os.system('ls')
python_hw1.py python_hw2.py README.txt
№4: Делайте перерывы
Когда вы учитесь, важно делать шаг назад и осознавать основы. Широко распространенная техника Pomodoro может помочь: вы работаете 25 минут, делаете короткий перерыв (5 минут) и так далее в этом ритме. Перерывы важны в успешном обучении, особенно когда необходимо усвоить много новой информации.
Не менее важны перерывы при отладке программы. Если вы обнаружили ошибку, но не можете понять, что именно идет не так, сделайте перерыв. Отойдите от компьютера, прогуляйтесь, поговорите с другом.
В программировании код обязательно должен следовать правилам языка и логики, так что одна забытая кавычка может сломать всё. Свежий взгляд имеет большое значение.
№5: Станьте охотником за головами багами
Про ошибки можно сказать, что они неизбежны. Однажды вы начнете писать сложные программы, в которых столкнетесь с багами в коде. Это происходит со всеми из нас! Не дайте ошибкам разрушить ваши планы. Напротив, гордитесь этими моментами и представляйте себя ловцом багов.
При отладке важно иметь методологию, которая поможет найти, где происходят падения программы. Следуйте по своему коду в соответствии с порядком его работы и убеждайтесь, что каждая часть работает. Это отличный способ отладки.
В какой-то момент вы найдете предполагаемое место падения. Тогда вставьте в ваше код строку import pdb; pdb.set_trace()
и запустите его. Это запустит отладчик Python и переведет вас в интерактивный режим. Отладчик так же можно запустить из командной строки с помощью команды python -m pdb <my_file.py>
.
Не учитесь в одиночку
Как только вы начнете затормаживаться, ускорьте ваше обучение с помощью совместной работы. Вот некоторые предложения, которые помогут вам получить максимальную отдачу от работы с другими людьми.
№6: Окружите себя теми, кто учится
Программирование может показаться уединенным занятием. Но на самом деле будет лучше, чтобы вы работали вместе с кем-то. При обучении языку Python очень важно окружать себя другими людьми, которые тоже учатся. Это позволит делиться советами и хитростями, которые пройдены в процессе обучения.
Не переживайте, если вы никого не знаете. Есть множество способов встретить единомышленников! Поищите местные встречи или Meetups или присоединитесь к сообществу таких же энтузиастов Python, как вы!
№7: Учите других
Говорят, что лучший способ научиться чему-либо — учить этому. Это справедливо и при изучении Python. Существует много способов осуществить это: уроки с другими любителями Python, написание постов, объясняющих новые изученные концепции, запись видео с объяснением изученного или просто общение с самим собой на своем компьютере. Каждая из этих стратегий укрепит ваше понимание, а также выявит пробелы в знаниях.
№8: Парное программирование
Это методика одновременной работы двух разработчиков за одним компьютером над одной задачей. Один из разработчиков становится «водителем», а другой – «штурманом». «Водитель» пишет код, тогда как «штурман» помогает с решением проблемы и просматривает написанный код. Меняться местами следует часто, чтобы обе стороны получили выгоду от этого метода.
Парное программирование имеет много плюсов: у вас есть не только кто-то проверяющий ваш код, но вы также можете понаблюдать, как кто-то думает над решением проблемы. Множество идей и способов мышления поможет в решении проблем, когда вы вернетесь к одиночному программированию.
№9: Задавайте правильные вопросы
Люди всегда говорят, что не бывает плохих вопросов. Но когда речь идет о программировании, вопрос можно задать не лучшим образом. Когда вы ищете у кого-то помощи в решении какой-то проблемы, человек обычно не в курсе контекста. Поэтому лучше будет лучше, если в вопросе вы затронете следующие вещи:
- Контекст задачи и возникшую проблему;
- Шаги, которые вы предпринимали для исправления ошибки;
- Предположение, с чем может быть связана ошибка. Это даст понять ход ваших мыслей;
- Демонстрация происходящего. Добавьте к вопросу код, логи сообщений об ошибке, а также последовательность действий, которая привела к ошибке. Тогда помогающему не придется самому воссоздавать падение.
Правильно заданный вопрос сохраняет много времени. Пропуск любого из этих пунктов приведёт к беседам, которые могут превратиться в конфликт. Как новичку, вам стоит уметь задавать правильные вопросы. Так что учитесь объяснять свои мысли, чтобы помогающие вам люди были рады продолжать это делать.
Напишите что-нибудь
Большинство, если не все разработчики Python, с которыми вы общаетесь, скажут, что лучше изучать Python на практике. Выполнение упражнений поможет вам двигаться дальше: больше всего вы изучаете, программируя.
№10: Спроектируйте что-нибудь, что угодно
Для новичков есть масса упражнений, которые помогают чувствовать себя увереннее и развивать мышечную память. Мы уже говорили об этом.
Как только вы освоите базовые структуры (строки, списки, словари, множества), ООП и написание классов, самое время приступить к проектированию!
Не слишком важно, что именно проектировать. Гораздо важнее, как именно. Этот путь действительно будет наиболее познавательным. Можно освоить многое, читая статьи и изучая курсы по python. Но большую часть знаний вы получите при проектировании приложений. Проблемы, которые вы решите, научат многому.
Существует множество списков с идеями для проектов новичка. Вот некоторые идеи для старта:
- Игра «Угадай число»;
- Простой калькулятор;
- Симулятор игры в кости;
- Служба уведомления о цене биткоина.
№11: Участвуйте в Open Source проектах
В open-source модели исходники ПО лежат в открытом доступе, поэтому любой может внести свой вклад в разработку. Есть много библиотек Python, которые являются open-source проектами. Кроме того, многие компании публикуют open-source проекты. То есть можно работать с исходниками, которые написали сотрудники этих компаний.
Участие в open-source проекте Python — отличный способ получить чрезвычайно ценный опыт обучения. Например, вы решили пофиксить какой-то баг. Для этого вы отправляете «pull request» с исправлением ошибки. Далее менеджеры проекта рассмотрят вашу работу, предоставив комментарии и предложения. Это позволит вам узнать лучший способ программирования на Python, а также научиться общаться с другими разработчиками.
Не останавливайтесь и учитесь!
С этими советами вы готовы начать свое путешествие по Python!
Найдите материалы по Python для начинающих здесь! Мы также опубликовали уроки по Python с интересными примерами, которые помогут вам освоить программирование и веб-разработку.
Удачного программирования!