Читаем От джуна до сеньора полностью

Тезисы

■ Тесты нужны, даже если вас убеждают в обратном.

■ Идеальный вариант, если ваш код будут проверять тестировщики или хотя бы ваши коллеги.

■ Терпите скуку формальных тестов, это окупается.

■ Один упавший тест – минус сотня недовольных клиентов.

Задание

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

История из жизни

Вам никогда не встречался тест, который использует текущее системное время для проверки работоспособности проекта? Мне встречался. А знаете, чем будет знаменит такой тест, чем он запомнится вам, когда вы с ним встретитесь? А вы обязательно с таким встретитесь или даже напишете свой. Ваши тесты будут либо выполняться безукоризненно гладко, либо останавливаться с ошибками, и вы потратите уйму времени на то, чтобы понять: все, что меняется между их запусками, – это секунды, которые сменяют друг друга. Тик, тик, тик… Успешный тест, неуспешный тест, успешный тест…

<p>Идиоматичность</p>

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

Идиоматичность кода трудно воспринять с первого взгляда. Вам потребуются опыт и много практики для того, чтобы «почувствовать», как стоит писать на том или ином языке программирования. Скорее всего, рано или поздно вы сами придете к идиоматическому написанию кода. Однако я очень рекомендую вам ускорить этот процесс: читать определения авторов языка программирования, код стандартных библиотек и код значимых проектов, написанных на этом языке.

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

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

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

Перейти на страницу:

Похожие книги

«1С. Управление небольшой фирмой 8.2». Управленческий учет в малом бизнесе
«1С. Управление небольшой фирмой 8.2». Управленческий учет в малом бизнесе

Описана новейшая версия программы «1С: Управление небольшой фирмой 8.2», которая сочетает в себе многофункциональность, простоту в освоении и достоинства современного интерфейса программ фирмы «1С». В этой конфигурации есть все необходимое для автоматизации оперативного и управленческого учета на предприятии малого бизнеса. В то же время программа не перегружена средствами учета, что очень важно для формирования оптимального соотношения между стоимостью и функциональностью.Изложение материала в книге построено с использованием большого количества примеров, часть из которых разобраны очень подробно. Надеемся, что эта книга станет надежным путеводителем для тех пользователей, которые только начинают знакомство с программой, а более опытные пользователи также найдут для себя важную и полезную информацию.Издание подготовлено при содействии компании «1С: Франчайзинг. БИЗНЕС-КЛУБ» – официального партнера фирмы «1С».

Николай Викторович Селищев

Маркетинг, PR
111 способов повысить продажи без увеличения затрат
111 способов повысить продажи без увеличения затрат

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

Айнур Сафин

Маркетинг, PR / Маркетинг, PR, реклама / Финансы и бизнес