stringtranslate.com

Функциональный дизайн

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

Преимущества

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

Системы с функционально спроектированными частями легче модифицировать, поскольку каждая часть делает только то, что заявлено.

Поскольку обслуживание составляет более 3/4 срока службы успешной системы, [1] эта функция является решающим преимуществом. Это также упрощает понимание и документирование системы, что упрощает обучение. В результате практический срок службы функциональной системы увеличивается.

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

Техника

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

Критика и ограничения

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

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

Применяется для 3D-моделирования и моделирования.

Недавно несколько компаний-разработчиков программного обеспечения представили функциональный дизайн как концепцию для описания параметрического средства моделирования для 3D-моделирования и симуляции. В этом контексте они означают параметрическую модель объекта, параметры которой привязаны к реальным критериям проектирования, например, ось, диаметр которой регулируется в зависимости от прочности материала и величины приложенной к ней силы. симуляция. Есть надежда, что это повысит эффективность процесса проектирования механических и, возможно, даже архитектурных/конструктивных сборок за счет интеграции результатов анализа методом конечных элементов непосредственно в поведение отдельных объектов.

Рекомендации

  1. ^ [1] Затраты на обслуживание программного обеспечения, Юсси Коскинен.

Внешние ссылки