Как уже было сказанно этот вопрос мучает…
Как уже было сказанно этот вопрос мучает могих, в том числе и меня. Все началось два года назад, когда я заболел идеей зарабатывать свой кусок хлеба на создании интернет сайтов. В web-программирование я пришел уже не новичком, так как в течении двух лет писал програмки сначало на Delphi а позже на C++ Builder, а если знаешь один алгоритмический язык программирования, то с другим проблем уже не возникнет. Так вот с того времени, я все свое время посвящаю веб программированию и чем больше я учусь, тем больше понимаю на каком низком уровне нахожусь и вопросов становиться все больше и больше. И именно вопрос о системе управления мучает меня с самого начала. Естественно сначало освоив языки Php и Javascript я взялся разрабативать собственную систему управления, которая казалась мне сверх совершенной, а сейчас вызывает у меня досадную улыбку.
После создания сайта и нескольких версий админки к нему, конечно пришло время знакомиться с готовыми системами управления и я остановился на Joomla, так как в ее арсенале открытый исходный код, который можно изучать. Конечно, ранее я уже вкратце ознакомился с этой системой, но сперва она мне очень не понравилась из-за кучи непонятных мне терминов типа стандартный шаблон материала и кучи ненужных на мой взгляд функций. Однако, вскоре я привык и легко мог администрировать эту систему. Настоящий шок охватил меня когда я начал разбирать исходный код этой системы, мне казалось я никогда его не осилю. Пришлось перерыть кучу сайтов, в которых максимум что было – это создание простенького компонента “Hello World”. Тогда я взялся за перевод американской книги “Joomla for Developers”, не буду описывать сколько приятных ощущений приносит изучение технической иностранной литературы, думаю вы сами это понимаете. Так вот при детальном изучении я был восхищен продуманностью и архитектурой этой системы. Так же, я сделал несколько выводов которыми сейчас с вами поделюсь. О минусах этой системы. Первое, что бросается в глаза – это конечно поддержка джумлой PhP (4) версии, ведь изначально она писалась именно под этот язык, я разбирал Joomla 1.5, которая поддерживает как 5-ю так и 4-ю версию этого языка.
Сами понимаете, что вследствии этого, код становится более громоздким из-за тех же конструкторов и клонирования обьектов которые в пятой версии автоматически передаются по ссылке. Вобщем первый минус- это огромное количество кода которое переваривает сервер перед тем как выплюнуть страницу в браузер. В следствии чего на моем хостинге за 100 рублей, нагрузка на процессор во время наполнения контентом скачет аж до 7% в то время как, моя админка едва ли загрузит на 1-2 % при Ajax поиске материала, который собирается реализовать Google в своем поиске. Второй минус- это конечно необходимость обучения администрированию этой системой, ведь все далеко не так интуитивно понятно, как об этом пишут. Вобщем я решил, что визитки буду штамповать на Joomla, а более дорогие проекты программировать сам. Мое мнение заключается в том что бы брать и изучать готовые системы управления, вытаскивая из них лучшее, упрощать и использовать в своих наработах, что позволит клиенту сэкономить на хостинге, выйграть в скорости и получить действительно интуитивно понятную систему управления сайтом.