Про ассоциативность и типы параметров поговорили, теперь немного отвлечемся. Но отвлечемся не просто так, а по делу. Я уже проводил сравнение между геометрическим моделированием и программированием и с “статьях” и в комментариях. Сегодня я попробую немного остановиться на этом моменте.
То как сейчас выглядит работа в большинстве современных CAD систем, лично мне сильно напоминает ООП (объектно ориентированное программирование). Есть куски блоков-кирпичиков из которых мы создаем наш проект. Результат работы одного блока подается на вход другого... и пошла потеха.
Разница в том, что в ООП эти кирпичики - это функции и процедуры, а в геом. моделировании это фичеры (конструктивные элементы). Но это на нижнем уровне, подымаясь выше мы приходим к классам, dll и прочим моментам ООП; а в моделировании мы попадаем на уровни сборок, библиотечных элементов и пр. Ассоциация может и не самая очевидная и понятная, но все же имеет место быть.
Чем хорошо такое сравнение? (Кроме самого факта сравнения) А тем, что в ООП уже десятилетиями существуют методики создания постоянно меняющимися коллективами поистине гигантских проектов. Движок блога, который Вы читаете (читаете блог, а не движок :)), браузер благодаря которому возможно такое чтение, операционная система в которой запущен браузер, CAD в котором работаете - вот лишь немногие из примеров такой работы. И поверьте уровень сложности подобных проектов зачастую существенно выше проектов, над которыми работают “механики”, строители и пр. И даже бешенное количество разных людей, думающих по разному, говорящих на разных языках и постоянная текучка кадров не мешают результатам подобной титанической работы существовать и работать. Да, без глюков не обходится, но вспомните про уровень сложности...
В общем нам есть чему поучиться у “программеров”. И в ближайшие пару раз я постараюсь рассказать, чему именно.
Комментариев нет:
Отправить комментарий