Компьютерра, 2006 № 29 (649) | страница 80



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


Взять мертвую линию

["Мертвая линия", или «линия смерти» - deadline. Так буржуи называют время, к которому кровь из носу надо закончить некую задачу]

Предположим, мы начинаем амбициозный софтверный проект. Что нужно, чтобы быть уверенным в том, что проект будет успешно завершен? Ответ здесь зависит от того, кто такие «мы» - маленький стартап из трех студентов или большой Мicrosoft? [Это, естественно, крайности - зато удобные для иллюстрирования точки зрения] В первом случае «успешно завершен» означает «мы допишем его до того, как нам надоест, и сделаем все настолько cool, чтобы разом уесть всех возможных конкурентов»; во втором - «проект не завалится под собственной тяжестью и будет закончен хоть когда-нибудь». Другими словами, первых куда больше интересует эффективность используемых инструментов-технологий-подходов, а вторых - надежность (при этом первые готовы пойти на некоторые компромиссы в области надежности, а вторые - пожертвовать некоторой эффективностью). Все дальнейшее - следствия этой дихотомии.


В поисках эффективности

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

Адепты «теории заговора производителей» любят задавать саркастические вопросы вроде: зачем Pentium 4 секретарше, которая использует только Word и пасьянс «Косынка»? Или: зачем 19-дюймовый монитор с 16 миллионами цветов кладовщику?

Ответ на эти вопросы прост: эффективность. В первом случае время разработчика Word было сэкономлено на оптимизации всех этих менюшек, смарт-тегов и бог-знает-чего-еще, предназначенного как раз для нашей секретарши. Все это, наверное, можно было бы реализовать и под IBM PC 386 + Windows 3.11 - чего там, пару сотен килобайт переписать на ассемблере, остальное на C, пооптимизировать пару лет - а «эти ламеры» поленились, выставили требования к железу повыше, зато и управились куда быстрее - с помощью высокоуровневых «крутых» инструментов и не задумываясь об оптимизации.