Что такое CMS?

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

Система управления контентом (англ. Content management system, CMS) - это компьютерная программа или система, предназначенная для централизованного управления содержимым. В нашем случае это система для управления содержимым сайта. В мире существует множество CMS: платных и бесплатных, предназначенных для различных целей и задач, а не только для управления сайтом. Мы же в данном обзоре уделим внимание только CMS для управления сайтом, остальные рассматривать не будем.

С чего все начиналось...

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

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

Вернемся же к CMS. В начале развития Интернет и WEB, в частности, большинство сайтов были предельно простыми и содержали не более десятка страниц с текстом. Тогда сайты разрабатывались в простом текстовом редакторе, путем ввода кода HTML. Если посмотреть на исходный код веб страницы, то можно увидеть, что она состоит не только из текста непосредственно содержимого. Там довольно много кода языка разметки HTML. Есть много частей HTML, которые повторяются на всех страницах. Чтоб упростить себе жизнь разработчики, вместо простого текстового редактора, начали использовать специализированные текстовые редакторы, которые позволяют максимально быстро формировать HTML документ, и которые хранят в себе заготовки тегов HTML. Это позволило значительно ускорить процесс разработки сайтов.

В начале все всех устраивало, можно было быстро делать сайты в специализированных редакторах HTML, и все были счастливы. Но по мере развития WEB, сайты начали тоже стремительно развиваться и расширяться. Теперь многие сайты уже не могли уместиться на десяти страницах, для них требовалось все больше и больше страниц. Разработчики продолжали разрабатывать десятки и сотни страниц в редакторах. Этот процесс уже не был столь быстрым и простым. Приходилось постоянно держать "все в голове", помнить где и что находится, в каком файле. При добавлении новой страницы, часто приходилось модифицировать еще и другие страницы, например добавлять ссылки на новые страницы и так далее. Часто забывали внести изменения в некоторые старые страницы. Этот процесс продолжался все время, вам необходимо добавить новую страницу, потом вспомнить где внести изменения в старую и так далее по цепочке. А если изменилось, например, название организации в шапке сайта, то приходилось менять все ваши веб страницы в ручную - это просто кошмар.

Разрешите представиться - система управления контентом

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

Тогда разработчики начали думать, как же автоматизировать этот процесс, для того чтобы не нужно было помнить постоянно о том где что нужно менять, в каком файле что хранится. Начали разрабатывать системы управления содержимым сайта, в которых вам уже нет необходимости помнить где и что храниться и что в каком файле нужно изменять. За веб разработчиков теперь начинала "думать" система управления контентом, которая отслеживает все содержимое сайта, знает где и что хранится, где что нужно изменить при добавлении новой страницы на сайт, в общем система полностью контролирует сайт. Такие системы сильно упростили процесс разработки, ведь теперь не нужно было постоянно помнить где что лежит, где что нужно изменить.

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

Как вы видите, системы управления контентом позволяют значительно упростить процесс разработки и сопровождения сайта. Со временем начали появляться множество систем управления контентом, так как многие веб разработчики собирались вместе и разрабатывали удобную для себя систему управления контентом, заточенную под выполнения их задач.

Со временем, многие разработчики объединились в группы и начали разрабатывать системы управления, предназначенные для широкого спектра задач. Разрабатываемые CMS бывают как платными, так и бесплатными. Одни люди договорились, и разрабатывают платную систему, в надежде заработать много денег. Другие же считают, что хороший программный продукт должен быть бесплатным, а заработать всегда можно, например, на его поддержке, и выпускают бесплатные CMS. Не нам судить кто из них более прав, но лично мы отдаем предпочтение к открытому и бесплатному программному обеспечению, которое дает большую свободу действий, и как правило, шире используется в мире.

Так появились многие, если не все, системы управления контентом, спасибо прогрессу и "ленивым" программистам которые всегда хотят упростить себе жизнь