Список шаблонов дизайна, применимый только к статическому языку типизации, но не к языку динамической типизации? - PullRequest
1 голос
/ 09 апреля 2011

Кто-нибудь знает список шаблонов проектирования, применимый только к языку статической типизации, но не к языку динамической типизации?

Например, стратегия

1 Ответ

0 голосов
/ 10 января 2012

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

Шаблон стратегии описан здесь как

Определите семейство алгоритмов, инкапсулируйте каждыйи сделать их взаимозаменяемыми.Стратегия позволяет алгоритму варьироваться независимо от клиентов, которые его используют.

Теперь эта цель разработки отделения клиентов от особенностей реализации, безусловно, применима как к динамическим, так и к статическим языкам.

Детали различаются, потому что статические языки побуждают нас объявлять явные интерфейсы и кодировать клиентов для использования интерфейсов, в то время как динамические языки могут использовать «Duck Typing», но кодирование для работы с львами-получателями там, где ожидаются утки.(animal-> eat () ... нет, нет! не ешьте меня!)

Я ожидаю увидеть примеры большинства шаблонов проектирования в динамическом коде, которые, возможно, представлены по-разному - такое же разделение проблем по-прежнемуважно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...