Функциональный дизайн
Эта статья нуждается в дополнительных цитатах для проверки . ( декабрь 2007 г. ) |
Функциональный дизайн — это парадигма, используемая для упрощения проектирования аппаратных и программных устройств, таких как компьютерное программное обеспечение и, все чаще, 3D-модели . Функциональная конструкция гарантирует , что каждая модульная часть устройства несет только одну ответственность и выполняет эту ответственность с минимальными побочными эффектами на другие части. Функционально спроектированные модули обычно имеют низкую связанность .
Преимущества [ править ]
Преимущество реализации заключается в том, что если программный модуль имеет одну цель, его будет проще, а, следовательно, легче и дешевле спроектировать и реализовать.
Системы с функционально спроектированными частями легче модифицировать, поскольку каждая часть делает только то, что заявлено.
Поскольку обслуживание составляет более 3/4 срока службы успешной системы, [1] эта особенность является решающим преимуществом. Это также упрощает понимание и документирование системы, что упрощает обучение. В результате практический срок службы функциональной системы увеличивается.
В системе программ функциональный модуль будет легче повторно использовать, поскольку он с меньшей вероятностью будет иметь побочные эффекты, возникающие в других частях системы.
Технический [ править ]
Стандартный способ убедиться в функциональном дизайне — просмотреть описание модуля. Если описание включает такие союзы, как «и» или «или», то конструкция несет более одной ответственности и, следовательно, может иметь побочные эффекты. Обязанности необходимо разделить на несколько модулей, чтобы добиться функционального дизайна.
и ограничения Критика
В каждой компьютерной системе есть части, которые не могут быть функционально чистыми, поскольку они существуют для распределения циклов ЦП или других ресурсов между различными модулями. Например, в большинстве систем есть раздел «инициализации», который запускает модули. Другие известные примеры — таблица векторов прерываний и основной цикл .
Некоторые функции по своей сути имеют смешанную семантику. Например, функция «вывести машину из гаража» по своей сути имеет побочный эффект изменения «положения машины». В некоторых случаях смешанная семантика может распространяться на большое топологическое дерево или граф связанных понятий. В этих необычных случаях некоторые авторитетные органы не рекомендуют функциональный дизайн. [ нужна ссылка ] Вместо этого могут быть предпочтительны полиморфизм , наследование или процедурные методы.
для 3D-моделирования и симуляции . Применяется
Недавно несколько компаний-разработчиков программного обеспечения представили функциональный дизайн как концепцию для описания параметрического средства моделирования для 3D-моделирования и симуляции. В этом контексте они означают параметрическую модель объекта, параметры которой привязаны к реальным критериям проектирования, например, ось, диаметр которой регулируется в зависимости от прочности материала и величины приложенной к ней силы. симуляция. Есть надежда, что это повысит эффективность процесса проектирования механических и, возможно, даже архитектурных/конструктивных сборок за счет интеграции результатов анализа методом конечных элементов непосредственно в поведение отдельных объектов.