понедельник, 16 апреля 2012 г.

Что такое движок сайта.

Знаете, в последнее время мне часто говорят: "А что такое движок сайта?", "А что такое CMS?",
"Что такое framework?".

А что такое движок сайт?
Просто о сложном. Вот вы хотите показать слайды (картинки с презентациями). В вебе их можно выдавать по запросу. Это не проблема и движок для этого не нужен. Редактор html кода и всё. И будет вам счастье.
Но, часто нам что-то улучшить или сделать так, что бы разным пользователям выдавались разные данные, а ещё сделать так, что бы с данными было удобно работать. Ещё выдавать данные в зависимости от ... кучи разных параметров. Вот тут-то и нужен движок.

Движок - программа которая как-то обрабатывает запрос пользователя и на основании данного запроса создает страницу.

Тут в качестве генераторов всякого рода страниц полно всяких CMS, да что тут говорить, блог в котором я сейчас пишу, тоже CMS.
CMS - система управления контентом(содержимым сайта), то средство, которое удобно для базового ведения динамического контента. Ключевые слова - базовое ведение.
Казалось бы, вот тебе CMS и счастье в твоих руках, но... к сожалению в большинстве CMS вы хрен поменяете данные. Т.е. если в моделе о  данных пользователя вы вдруг захотите добавить что-нибудь типа "адрес по КЛАДР" или же религиозная принадлежность, то вы рискуете очень сильно усложнить задачу, но это всё сложно и надо бы дать аналогию.
А теперь, простая аналогия.
CMS - Автобус. Вот он умеет перевозить пассажиров. Но транс-атлантический рейс он сделать не сможет. Ну не летает и плавать не умеет. Т.е. если вы вдруг захотите, то придется покупать самолет для перевозки автобуса и радоваться жизни. Как-то не очень идея, согласитесь?

Framework - это завод, который может изготовить и автобус, и лодку, самолет, и танк. В
общем что вашей душе угодно, соответственно конвейер на заводе очень быстро может быть модифицирован.

Можно конечно сделать динамический сайт с нуля, но это всё равно, что на паланкине человека перевозить. Медленно и очень дорого, но зато утащишь куда угодно.

Например у нас мы используем framework в framework'е. Сделано это для того, что бы чертежи проектов делались ещё быстрее и лучше )). Что в свою очередь при достаточной сложности проекта позволяет дешево проводить модификации.