Почему Symfony 1.x предпочитает соглашение по конфигурации, а Symfony 2.x наоборот? - PullRequest
7 голосов
/ 30 марта 2012

Честно говоря, я не пытаюсь троллить. Это серьезный вопрос, который, я думаю, почти наверняка имеет конкретный, объективный ответ.

Symfony 1.x, как и Rails, похоже, придерживался принципа соглашения над конфигурацией. Например, когда вы создаете модуль, а затем создаете действия внутри контроллера модуля, вам не нужно было создавать новые правила маршрутизации. Symfony просто знал, что делать. Но теперь с Symfony2 вы должны явно создавать маршруты. Это только один пример. Существуют и другие случаи того, что кажется сознательным решением отдать предпочтение конфигурации, а не соглашению. Я совершенно сбит с толку, почему.

Итак, мой вопрос, опять же, таков: почему Symfony 1.x предпочитает соглашение по конфигурации, а Symfony 2.x наоборот?

Извините, если этот вопрос не в том месте. Я полагаю, это может быть не программный вопрос. Если есть более подходящее место для меня, чтобы задать этот вопрос, дайте мне знать, и я с радостью перееду туда.

1 Ответ

6 голосов
/ 30 марта 2012

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

И не только Symfony2 сделал это, но и сообщество PHP в целом.Доктрина 2 сделала это.Zend Framework 2 делает .

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