Карьера в IT. Как найти работу, прокачать навыки и стать крутым разработчиком. Джон Сонмез
Чтение книги онлайн.

Читать онлайн книгу Карьера в IT. Как найти работу, прокачать навыки и стать крутым разработчиком - Джон Сонмез страница 6

СКАЧАТЬ и программ, принтер и все в таком духе. Но я думаю, что вы уже поняли, к чему я веду.

      Чтобы стать хорошим разработчиком, нужно знать одну простую, но очень важную истину:

      Прежде чем что-то автоматизировать, нужно научиться делать это «что-то» вручную.

      Понимание проблемы

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

      Процесс разработки ПО всегда начинается с констатирования проблемы, которую будет решать ваша будущая программа. Задайте себе вопрос: «А что я, собственно говоря, автоматизирую?»

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

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

      Проектирование

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

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

      Собственно, само программирование

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

      Написание кода – это отдельная дисциплина, поэтому я СКАЧАТЬ