В этой статье я даю некоторые советы, которые помогли мне в моей карьере. Прочитать это все можно быстро, но их внедрение и использование может занять всю жизнь. Я занимаюсь разработкой приложений в течение почти 15 лет, и все же иногда мне приходится останавливаться и думать об основных аспектах этой профессии.
- Разбейте большие куски кода на маленькие функции.
- Если ко времени ухода с работы вы не решили проблему — выключите компьютер и оставьте ее на следующий день. Не думай больше о проблеме.
- Принцип YAGNI: не делайте больше, чем вас просили. Не ожидайте будущих проблем, а просто создайте как можно скорее что-то, что работает. Используйте только необходимые детали для решения текущей проблемы.
- Вам не нужно знать все, все существующие фреймворки. Самое главное — иметь хорошую базу. Прежде чем начать работать с фреймворками, изучите язык и изучите фундаментальные вещи, такие как принципы SOLID или как писать чистый код.
- KISS: “Keep it simple, stupid” или “Keep it stupid simple” — это принцип разработки, который гласит, что большинство систем работают лучше, если они остаются простыми, а не усложненными. И хотя это логично, иногда этого трудно достичь.
- Не думайте слишком долго и не переусложняйте.
- Если вы слишком долго работаете с проблемой или ошибкой, оставьте ее, прогуляйтесь и вернитесь позже. Часто лучшие решения проблем возникают у меня на пути из моего офиса в туалет. Также рекомендую прогуляться, когда вы сердитесь на клиента или коллегу, особенно если вы хотите сохранить свою работу.
- Научитесь писать полезные тесты и научитесь TDD. Test-driven development — это процесс разработки программного обеспечения, который основывается на повторении очень короткого цикла разработки: напишите тест, запустите все тесты и посмотрите, прошел ли новый, напишите некоторый код, запустите тесты, переработайте код, повторите.
- Сначала решите проблему, а затем напишите код. Не начинайте программировать, не зная, что делать.
- Не запоминайте код, а поймите логику.
- Если вы копируете и вставляете решение со Stack Overflow, убедитесь, что вы его понимаете. Научитесь правильно использовать Stack Overflow.
- Если хотите чему-то научиться, тренируйтесь. Делайте примеры и заставляйте их работать — просто читать о чем-то недостаточно.
- Изучайте код других людей, и пусть другие время от времени изучают ваш код. Парное программирование и code review — хорошая идея.
- Не изобретай колесо.
- Ваш код — лучшая документация.
- Знайте, как гуглить. Для этого нужно иметь большой опыт и много читать, чтобы знать, что искать.
- Ваш код должен в будущем поддерживаться вами или другими, поэтому пишите код, думая о тех, кто будет его читать, не пытайтесь быть самым умным человеком. Сделайте так, чтобы код читался как будто история.
- Лучший способ найти ошибку с помощью Google — это скопировать и вставить ее.
- Никогда не сдавайтесь, в конце концов, так или иначе, вы решите проблему. Есть плохие дни, но они пройдут.
- Отдых, отдых и отдых. Лучший способ решить проблему — подойти к ней со спокойным умом.
- Научитесь использовать шаблоны проектирования программного обеспечения. Шаблоны проектирования — это решение общих проблем. Каждый шаблон похож на план, который вы можете настроить для решения типичной проблемы проектирования в вашем коде (не изобретай колесо).
- Используйте инструменты интеграции и автоматизируйте как можно больше.
- Делайте код каты. Ката — это упражнение, которое помогает программистам улучшать свои навыки с помощью практики и повторения. Смотрите примеры здесь.
- Программируйте для интерфейса, а не для реализации. Внедрение зависимостей является обязательным требованием. Смотрите SOLID принципы.
- Refactor-Test-Refactor. Рефакторинг — это метод реструктуризации существующего кода, изменения и улучшения его внутренней структуры без изменения внешнего поведения.
- Обратитесь за помощью, когда вам это нужно. Не теряйте время
- Навык мастера ставит.
- Хотя иногда комментарии могут помочь вам, не обращайте на них слишком много внимания. Они, вероятно, устарели.
- Знайте свою среду разработки и инвестируйте в достаточно мощную среду, такую как IntelliJ.
- Переиспользуйте компоненты.
- Разрабатывая веб-приложение, подумайте о мобильных устройствах и связанных с ними ограничениях мощности и полосы пропускания.
- Не оптимизируйте и не проводите рефакторинг преждевременно. Более важно получить минимально жизнеспособный продукт как можно скорее.
- Никогда не выбирайте неэффективный быстрый способ для экономии нескольких минут. Каждый раз, когда вы пишете код, делайте все возможное!
- Следуйте документированным стандартам.
- Пользователи технически не подкованные люди. Думайте об этом, когда будете разрабатывать свой пользовательский интерфейс.
- Всегда используйте систему контроля версий, такую как Github или bitbucket, и выполняйте небольшие и частые коммиты.
- Лучше использовать логи, чем отлаживать код. Логируйте все критические части.
- Будьте последовательны в программировании. Если вы используете стиль, всегда используйте один и тот же. Если вы работаете с большим количеством людей, используйте один и тот же стиль всей командой.
- Не прекращайте учиться, но больше, чем на новых языках или фреймворках, сосредоточьтесь на основах разработки ПО.
- И, наконец, терпение и любовь к тому, что вы делаете.
Большое спасибо за чтение. Я надеюсь, что это было полезно для вас!