Чем удобнее MVC? - PullRequest
       19

Чем удобнее MVC?

3 голосов
/ 08 декабря 2009

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

  1. знаю, как все это работает
  2. вырезать любой и все наворот
  3. выучить это, просто ради удовольствия

Но, после его создания по-разному, несколько раз ... Я продолжаю чувствовать, что из-за количества "удобства", которое он предлагает, код становится все более негибким, и попытка отследить файлы становится втрое более сложной (особенно Вы являетесь единственным разработчиком в проекте), и там нет даже какой-то потрясающей документации.

На данный момент мне действительно нужно убедить ... как это изменит мою жизнь, опять же?

Ответы [ 6 ]

7 голосов
/ 08 декабря 2009

На этот вопрос уже ответили уже , но, чтобы выразить это более тонко, я думаю, что единственный атрибут, который охватывает, когда включать / выключать MVC - это масштабируемость:

  1. MVC обеспечивает четкое разделение обязанностей (т. Е. Интерфейсные и кодовые базы данных).
  2. MVC - это шаблон, обеспечивающий единообразные привычки кодирования.
  3. Повышается удобство обслуживания, так как новому участнику проекта (который понимает MVC) проще взяться за базу кода.

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

4 голосов
/ 08 декабря 2009

Может быть сложно (иногда невозможно) преобразовать существующий проект в какой-то новый шаблон / структуру. Это также зависит от того, как вы реализуете MVC-фреймворк.

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

Самая важная вещь в этом разделении проблем - Обслуживание . Одним из самых больших преимуществ инфраструктуры MVC является то, что легче определить, какой код плохо себя ведет, и исправить его. Разделение концепций = разделение проблем и ошибок.

1 голос
/ 08 декабря 2009

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

Могу ли я спросить, что заставляет вас делать пользовательские рамки? Я имею в виду, я ничего не сомневаюсь, просто технологические достижения продолжают расти - я не очень рекомендую Drupal или торт ... Я бы порекомендовал что-то вроде Kohanaphp.com, где он очень легкий и имеет отличный разъем для базы данных называется ORM (объектно-реляционное отображение), который является отличным использованием MVC. Самое приятное то, что вам не нужно будет полностью поддерживать ваш фреймворк, так как он с открытым исходным кодом и имеет активное сообщество. Хотя, будучи самим программистом, я понимаю, как мы привязываемся к нашему коду и хотим, чтобы он был по-своему: D Но это экономит время, предлагая инструменты для обработки запросов, фильтрации xss, маршрутизации и начальной загрузки и т. Д.

Просто мысль: D

1 голос
/ 08 декабря 2009

Что мне нравится в MVC, так это то, что когда вы передаете его другому разработчику, будь то новый сотрудник или для долгосрочной поддержки, любой, кто знаком с MVC, может быстро понять, что происходит. 1001 *

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

1 голос
/ 08 декабря 2009

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

Я написал несколько различных баз кода MVC, основанных на том, что должно произойти в проекте. Одна кодовая база имеет сервисный уровень для дальнейшего отделения «бизнес-логики» от контроллера и представлений. Еще один отделил контроллеры CLI от веб-контроллеров.

Вот как я смотрю и использую MVC. Я предлагаю найти некоторые заслуживающие доверия документы или сообщения в блоге о MVC.

1 голос
/ 08 декабря 2009

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

Если вы являетесь и будете единственным обновителем, это может быть не страшно.

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