Руководство командой разработчиков программного обеспечения


Специфика разработки программного обеспечения - часть 2


Существующее состояние Software Engineering напоминает мне большую поваренную книгу с многочисленными описаниями рецептов однажды успешно приготовленных блюд из ингредиентов, которых у меня никогда в будущем не будет. Завтра в моей новой системе будут другие вычислительные машины, технологии, языки программирования, инструменты и базовое ПО, новые проблемы взаимодействия с которыми мне обязательно придется решать.

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

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

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

Программирование — не искусство и не наука, это ремесло — «рукодельное мастерство, ручной труд, работа и уменье, коим добывают хлеб», © «Толковый словарь живого великорусского языка В.


Начало  Назад  Вперед