Предметно-ориентированные языки (DSL) и Доменный управляемый дизайн (DDD)

Вы можете использовать HTTPS вместо SSH, чтобы избежать обмена ключами. Вот пример:

  <scm>
        <url>https://github.com/(username)/(repo)</url>
        <connection>scm:git:https://github.com/(username)/(repo).git</connection>
  </scm>

Заменить (username) и (repo) соответственно.

10
задан David Hall 19 November 2008 в 01:27
поделиться

7 ответов

Доменный управляемый дизайн (DDD) является образом мыслей и связывающийся о проблемах и его решениях.

Предметно-ориентированный язык (DSL) является способом написания кода.

Они подобны, потому что они оба запускают со слова "домен". Вот именно я предполагаю.:-)

11
ответ дан 3 December 2019 в 18:02
поделиться

Управляемый доменом Дизайн подчеркивает роль проблемной области, поскольку Вы создаете фундаментальный словарь, понятия и объектную модель для разрабатываемой системы.

Проблемно-ориентированный Язык является нотацией для определения или реализации определенных частей системы, ориентированной на потребности практика в том домене (т.е. уменьшение "programmerese" аспектов большей части программирования или языков спецификации).

6
ответ дан 3 December 2019 в 18:02
поделиться

Я утверждал бы, что они так или иначе связаны и не только словом "домен". После того как у Вас есть хороший (управляемый доменом) дизайн, он, конечно, поможет в создании твердого DSL.

"DDD конкретно не требует использования DSL, хотя это могло использоваться, чтобы помочь определить DSL". - Википедия

2
ответ дан 3 December 2019 в 18:02
поделиться

Я думаю, что они так или иначе связаны (как Christophe выразился), но два полностью различных аспекта. Я даже не отклонил бы оператор jop.

Поскольку очень хорошо записанная информация о DSLs относится к набору Martin Fowler страниц на DSLs (происходящая работа), можно запустить с примера или определения. Другим хорошим чтением является его QandA.

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

0
ответ дан 3 December 2019 в 18:02
поделиться

Википедия имеет довольно четкое определение для DSL:

Термин проблемно-ориентированный язык (DSL) стал популярным в последние годы в разработке программного обеспечения для указания на язык программирования или язык спецификации, выделенный конкретной проблемной области, конкретному проблемному методу представления и/или конкретному методу решения.

Это может быть реализовано как ряд классов после некоторого последовательного шаблона, некоторого необычного шаблонного волшебства C++ или компилятора/синтаксического анализатора, который интерпретирует бесплатный ввод текста, чтобы сделать то, что Вы хотите.

0
ответ дан 3 December 2019 в 18:02
поделиться

Различия, каждый - подход к созданию систем с помощью языка Предметно-ориентированного языка (DSL) вместо Языка Общего назначения, и другой архитектурный подход (DDD) к разработке и созданию систем.

Подобие то, что они оба внимание на определенный домен.

0
ответ дан 3 December 2019 в 18:02
поделиться

Один из элементов DDD можно рассматривать как возможность разработки повсеместных языков для общения с заинтересованными сторонами о домене. Для подмножества этих языков, которые являются однозначными и потенциально выполнимыми, вы можете выбрать их реализацию с помощью внутреннего или внешнего DSL.

Вот видео, где я обсуждаю это на сайте DomainDriven:

http://domaindrivendesign.org/library/bell_gitlevich_2009

С наилучшими пожеланиями, Питер

1
ответ дан 3 December 2019 в 18:02
поделиться
Другие вопросы по тегам:

Похожие вопросы: