15 Поиск истины

      Комментарии к записи 15 Поиск истины отключены

Помечено: ,

В этой теме 0 ответов, 1 участник, последнее обновление  Васильев Владимир Сергеевич 7 мес., 2 нед. назад.

  • Автор
    Сообщения
  • #3591

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

    В проектировании архитектуры таких аксиом, увы, не существует. Никакая логика и никакой алгоритм не помогут найти стопроцентно верного решения.

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

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

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

    При проектировании архитектуры программного обеспечения перед собой следует ставить единственную цель — придумать красивое решение. Красивое во всех смыслах этого слова, красивое во всем. Не следует думать о том, хватит ли программе памяти, не будет ли она тормозить, и прочих второстепенных проблемах. Следует ставить всего одну цель — красивое решение. Опыт показывает, что следствиями красивого решения являются вполне приемлемая производительность и достаточно рациональное использование ресурсов.

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

Для ответа в этой теме необходимо авторизоваться.