С чего начинать писать свою CMS

Статус
В этой теме нельзя размещать новые ответы.

Baracuda

Постоялец
Регистрация
31 Дек 2007
Сообщения
85
Реакции
4
Здравствуйте форумчане. В последнее время устали от существующих бесплатных CMS таких, как drupal, WP и им подобным.

Подскажите, с чего начать написание своей собственной CMS, с набором именно тех функций, что необходимо. Если еще поделитесь полезной информацией по: оптимизации кода, запросов, как сделать цмс максимально правильной, быстрой и умной.

Текущий вопрос на повестке дня - правильный ли подход писать свою админку на фреймворке типа Yii или CI или КакаПХП? Или лучше писать свою полностью с нуля? Заранее благодарочка.
 
Вначале следует написать начальное ТЗ (наброски на 3-5л.). А уже и потом, когда будете дорабатывать ТЗ, то тогда и будет видно стоит ли использовать фреймворки.
Если задача состоит в том чтобы сделать очередной конструктор типа Друпала или Джумла, то можно сделать и на основе фреймворка. А если это какая нибудь специализированная цмс или что-то небольшое и легкое, то фреймворки будут лишними
 
Планируем сделать небольшой конструктор с набором нужных параметров и с удобной, понятной и главное легко меняемой внешний вид админкой.

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

ТЗ само собой)
 
Написание своей CMS рекомендую начать с изучения чужих фреймворков.
Т.к. ЦМС использует массу стандартных вариантов (работа с базой, CRUD, пагинация) то зачем изобретать велосипед?
От себя добавлю, что стоит посмотреть в сторону Yii. Но у меня на него мозгов не хватило, пока не хватило. Зато code-igniter я осилил на ура. В обоих фреймворках написание собственной ЦМС идет в качестве примера работы фреймворка :)
 
Занимался данным вопросом. Но только вопросом- до кодинга дело не дошло. Ни знания ни сил ни времени. При этом спорная отдача от реализации.
Для самописной цмс найдётся довольно много плюсов и минусов. Главное что мне стало ясно- надо или писать простой проект или подходить с полным комплектом знаний, умений точно зная что и как делать. про второй пункт –

Во первых первоначальные знания – это чтение и знание минимум книг
Совершенный код, Рефакторинг. Улучшение существующего кода , Приемы объектно-ориентированного проектирования. Паттерны проектирования. Это базис, больше - лучше , но там уже будут идти больше специфичные приёмы.
Просто вебприложения уже перестают быть допотопными- когда даже с небольшими знаниями, без предварительной работы по организации структуры, документации и прочее прочее можно было состряпать неплохой скрипт. Я не говорю что сейчас 100% популярных и хорошоработающих скриптов \ программ делаются не на коленках. Тут уместна фраза от деда Феди, которую я увидел по тв – он построил самолёт из мусора на свалке, и хвастался что знаний в аэродинамике нет и вообще только школа и пту. И намекал что 100500 законов что ввели учёные, инженеры и прочие- для него полный бред.
Вывод- чтобы сделать что-то не нужно иметь глубоких знаний, но нужны радикально прямые руки.
А вот смог бы этот дед сделать пассажирский боинг, и лучше поставить сразу на поток? Нет. Вот для этого ему бы понадобились все эти глубокие знания .
Так что считаю выработанные приёмы по программированию\проектированию и тп – просто нельзя игнорировать.

Нужно знание велосипедов и умение их находить\изменять. Хорошо подходят Как уже говрили- существующие движки и фв . Не только на большие классы типа плагинаций и роутинга, но и небольшие типа вычисление даты, обработки текста…

Теперь о задачах.
Вообще 50% работы- это как раз должно быть разработка ТЗ и плана, как это должно работать. Предлагали сделать ТЗ как можно объёмным- верно.
Затем открываем и смотрим на интерфейсы всех готовых систем, которые подходят для этого тз и думаем как переделать конкретно под каждую задачу в тз. Можно посмотреть по форумам, какие движки и за что критикуют.


Надо подумать и о верстальщиках и о шаблонзаторе. Без шаблонов цмс далеко не поедет.
 
Вопрос риторический, на самом то деле. Вот чем ваша цмс лучше скажем друпала будет? У вас 2-3 мейнтенера, у друпала десяти.

Напишите на листке, что не умеет друпал+джумла+вп и что вы сможете сделать из этого. Тогда вопрос сразу отпадет.

Считаю, что нужно писать уже на готовом фреймворке, хотя бы потому, что будут реализованы те маленькие кирпичи, которые делать не очень хочется.
 
Текущий вопрос на повестке дня - правильный ли подход писать свою админку на фреймворке типа Yii или CI или КакаПХП? Или лучше писать свою полностью с нуля? Заранее благодарочка.
Все зависит от того, какие цели преследуются. Если речь идет о работе для опыта, чтобы попробовать свои силы, то можно писать с нуля. Как только будет написано некоторое ненулевое количество кода, появятся собственные библиотеки и принципы организации. Что-то вроде своего фреймворка. Тут уже имеет смысл ознакомиться с готовыми фреймворками и проникнуться мыслью, сколько уже написано до нас.
Если же речь идет о реальной жизненной ситуации, то средства нужно подбирать исходя из задачи и условий.
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху