ПредишенСледващото

PHP, като се започне с версия 5.3, да ни представи с пространство от имена. Оттогава е спиращ някъде, а някъде оживена дискусия, как се да се използва пространството от имена?
Някои рамки, като симфония, Laravel, и разбира се на Zend вземат тази технология на борда.
Всичко това е повече или по-малко се вписва в модела MVC. Имаше един, може би вечен, дискусия, това, което трябва да бъдат основните омъжените приложения няколко - модел и контролера?
Някои ни каже, че моделът трябва да бъде здрава и гъста и я строен и елегантен контролер. С една дума - матриархат.
Други обаче смятат, че администраторът трябва да управлява всичко и команда, така че той получава солидна, добре подхранена. И тънка, стройна модел, чиято задача е да се съберат, да. Такава е патриархата.
Така че, който е по-добре в MVC модел? Патриархат или матриархат?
Нека да разгледаме това от гледна точка на изграждането на семейна единица въз основа на демокрацията. И нека Namespace ни да ви помогнем.

Ние не обичаме дебелите, тромави контролери, които обичат слон в стъкларски магазин, по невнимание може да смаже цялото приложение.
Ние също не ми харесва дебели модели. Е, кой ги обича? Те трябва да бъдат достойни за подиума!
Нека се опитаме с помощта на пространство от имена, като добър сватовник да създаде хармонична семейство.

Първо, създаване на заявление скелет. Тя може да изглежда банално, но нека да бъде един блог.

PHP пространство от имена

Ние създадохме основната структура, когато:

  • Блог - хранилище на нашата молба;
  • Прегледи и шаблони - идеи и шаблони за съхранение;
  • Utility - хранилище на споделени библиотеки;
  • index.php - фърмуера сценарий;
  • Мнение - тук и ще се проведе на семейството идилия Controller и модел.

С index.php е проста:

Когато създавате клас Блог ние го запозная с клас Namespace публикацията в блога AutoLoader и се зарежда от блога / Мнение / Post.php гредата.
Вероятно този клас могат да бъдат наречени контролери,

Essence Мнение включва:
- структура на самия запис на данни - BlogPostEntitiesPostEntity.php

- системата на взаимодействие с база данни - BlogPostRepositoriesDB.php - ето го, нашият тънък, изящен модел,
Просто Bring-донесе, и нищо друго!

В резултат на това ние успяхме да създадем структура за кандидатстване, където всички компоненти са добре свързани и имаме ясно разделение на класове, където всеки клас изпълнява своята задача. Контролерът има тънка и в същото време мощен. Модел за да го съвпадат. Идеално семейство!
И bagodarya Именно пространство.

Аз не споря, в много случаи полезна рамка. Но, изглежда, на вас пространство от имена не ми харесва?
А ясно разделение на класове, строги и в същото време гъвкава, напълно подчинен на йерархията на директория разработчик и класове.
Понякога липсата на такъв тежък makeweight под формата на стотици файлове и класове под формата на рамка.
Липсата на правила Procrustean легло взаимодействие на класове и компоненти.

Свързани статии

Подкрепете проекта - споделете линка, благодаря!