Карьера в IT. Как найти работу, прокачать навыки и стать крутым разработчиком - страница 7



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

Первая книга называется «Совершенный код. Практическое руководство по разработке программного обеспечения»[5], ее автором является Стив Макконнелл. Это классический труд, который должен прочитать каждый разработчик.

Вторая – «Чистый код. Создание, анализ и рефакторинг»[6] за авторством Роберта Мартина. Это тоже классика, которая научит вас писать более качественный код.

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

Тестирование и развертывание

Итак, код готов. Значит ли это, что программа готова к выпуску?

Нет! Сначала код нужно протестировать. Повторюсь, различные методологии разработки предлагают разные подходы. А в общем, просто помните, что перед передачей программы заказчику ее надо проверить.

Например, использование методологии «Водопад» (Waterfall) предполагает тестирование в конце проекта. А при использовании методики Agile тестирование происходит в конце каждой итерации создания ПО, которая обычно длится пару недель.

После того как тестировщики дают «добро» на выпуск кода, наступает этап развертывания, который представляет собой отдельный процесс.

Вы, наверное, уже обратили внимание на то, что я лишь вскользь упомянул о данном этапе создания ПО, – потому что этой теме в книге посвящена целая глава. Развертывание – это процесс установки готового ПО на сервер, загрузки в магазин приложений (типа App Store или Google Play) или предоставления доступа к программе конечным пользователям любым другим способом. (Этот процесс может быть довольно сложным.) Попутно код можно следует отправлять в репозиторий исходного кода, где сохраняются различные версии и изменения вашего ПО.

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

Многие команды разработчиков используют ту или иную форму непрерывной интеграции, чтобы код собирался автоматически, когда разработчики «присылают» свои части программы.

Разработка – это не просто набор кода

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

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

Но не бойтесь. Цель этой книги – информировать вас обо всех аспектах – или, по крайней мере, указать правильное направление. Возможно, вам придется самостоятельно собирать свой багаж (знаний), а я подскажу, что стоит с собой взять.

Главное – план!

«Так, Джон, мы поняли, что разработка – это не только программирование, и нам придется проводить кучу времени за отладкой, развертыванием и бла-бла-бла, – скажете вы. – Ну а начать-то с чего?»