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

Тезисы

■ Не надо оптимизировать весь код.

■ «Преждевременная оптимизация – корень всех зол».

■ Выделяйте приоритеты оптимизации.

■ Изучайте и используйте технические способы оптимизации.

■ За оптимизацию всегда надо платить (логичностью кода, удобством, потерей функций).


Задание

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


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

История, вспоминая которую можно и усмехнуться, и всплакнуть. В одном из проектов мы действительно провели невероятную «оптимизацию», но скромно умолчали о ней. В нескольких критически важных местах системы, которые должны были выполняться очень быстро, обнаружились оставленные кем-то из разработчиков отладочные вызовы функции sleep. Эта функция останавливает выполнение программы на указанное время, тем самым замедляя любой процесс на указанное время. В официальных отчетах мы отметили, что скорость работы приложения повышена, однако предпочли не раскрывать, каким именно образом. В любом случае это был самый быстрый и качественный способ оптимизации, с которым я сталкивался. Удалить несколько строк кода и получить немедленный прирост скорости – не об этом ли мечтает каждый разработчик?

Люди

Этот раздел – об общении с людьми, о том, как выстраивать деловые отношения, как приспособиться к работе в коллективе. Я затрону социальные вопросы, проблемы баланса между работой и общением.

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

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

Контекст и коммуникация

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

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

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

20 правил здравого смысла
20 правил здравого смысла

«Как понять чего хочу Я, а чего социум?», «Жить сейчас или откладывать на потом?», «Стоит ли слушать мнение родителей?» или же «Как забить на мнение окружающих?». В этой книге вы найдёте если и не ответы, то как минимум полезные рассуждения касающиеся этих, и многих других, «вечных» вопросов. Основой для этой работы послужили бесчисленные беседы автора со множеством молодых людей в возрасте от 18-ти до 30-ти лет. А именно изучение их распространённых страхов, комплексов и извечных вопросов в стиле «куда жить». «20 правил здравого смысла» поможет Вам поставить жизнь «на паузу», пересмотреть базовые житейские принципы и самое главное — заставит Вас задуматься о самых важных аспектах жизни. Эта книга прекрасно расположит Вас к размышлениям, ведь её цель не праздная мотивация, а полноценный анализ ваших ценностей. «20 правил» будут полезны абсолютно каждому, кто чувствует себя потерянным в водовороте жизни, ведь их цель — посеять в Вас зерно здравого смысла.

Александр Дац

Маркетинг, PR