Журнал Компьютерра - 34 от 18 сентября 2007 года :: Компьютерра
Страница:
76 из 150
Технологии производства окаменелостей
Читатель, знакомый с различными методологиями разработки, может заметить, что «недревнеющий» код, код постоянно обновляемый и частично переписываемый, напоминает о гибких agile-методологиях, с их непрерывной интеграцией и постоянным рефакторингом. Кроме того, мы знаем, что "код, не покрытый тестами, не существует".
Противопоставить этому можно многоступенчатые крайне формализованные процессы типа RUP (Rational Unified Process), где все аспекты работы проекта единожды специфицированы, документированы и изменения в «стерильный» код вносятся крайне неохотно. В нашей «археологической» метафоре такие методологии разработки, кажется, самой природой предназначены сразу производить «окаменелости» – монолитно, надежно, монументально, сто лет простоит. Но вот любое исследование или внесение изменений…
Куда копать?
В идеальном мире программистам не приходилось бы возиться с "историческими артефактами" (по крайней мере, не приходилось бы слишком часто). Мы бы работали лишь с небольшими объемами "кода текущей задачи", который легко перерабатывать и столь же легко удерживать в голове целиком; а библиотеки и программы использовали бы лишь единожды скомпилировав, в бинарном виде. Реальность, к сожалению, куда печальнее и круче.
Ситуации, в которых программист тратит бо, льшую часть своего времени на анализ чужого, давно и не здесь написанного кода, встречаются сплошь и рядом.
|< Пред. 74 75 76 77 78 След. >|