Недавно к нам присоединился студент-математик. Учитывая наше внимание к физическому моделированию и симуляции, его навыки оказались весьма ценными. Однако его способности к программированию все еще находились на ранней стадии.

В его основную ответственность входит разработка численного решателя для различных сложных сценариев с обеспечением оптимальной производительности. Излишне говорить, что это непростая задача. Хотя выбор языка программирования был гибким, мы решили остановиться на Python, так как он уже был с ним знаком.

Хотя мы работали вместе всего несколько дней, я поделился пятью ключевыми моментами, которые значительно повлияли на его подход к программированию. Они также применимы к другим языкам, поддерживающим объектно-ориентированное программирование (ООП).

Отказ от ответственности. Эти советы предназначены для начинающих, которые в основном работали над университетскими заданиями и переходят к разработке в небольшой компании.

1. Используйте Git

Большинство IDE, таких как Visual Code и PyCharm, оснащены функциями Git. SourceTree также может служить полезным инструментом для ускорения процесса изучения Git. Настройте свой проект и делайте регулярные коммиты, соблюдая процедуры GitFlow.

2. Разделите свой код на отдельные скрипты:

Разработка на Python отличается от написания сценариев для блокнотов Jupyter. Важно организовать ваши методы, классы и тесты в соответствующих сценариях в разных папках или подпакетах. Примите концепцию разделяй и властвуй.

3. Ознакомьтесь с классами (и классами данных)

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

4. Обратите внимание на сообщения об ошибках

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

5. Включите небольшие тесты

Я не предлагаю разработку через тестирование (TDD), но включение простого интеграционного теста может иметь большое значение для предотвращения разочарований, вызванных поломками кода. Один тест может помочь вам определить, что пошло не так, и избежать хлопот, связанных с повторением ваших шагов.

Эти пять шагов были ключевыми советами, которыми я поделился со стажером, чтобы помочь им писать код более плавно и эффективно.

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