Forums / National / Russian / Идеи / Chunks

Куски кода в шаблоне

esclkm
#39710 2014-09-01 09:39

Этим летом я встретился с Trusmaster’ом в НН. Это была очень интересная продуктивная встреча в плане мыслей и познания.  Собственных идей и т.д. Давайте дружно признаем, что cotonti – это его проект. Но жизнь делает свои повороты. И у него есть семья, есть свои проблемы, которые надо решать. Cotonti стал для многих проектом, приносящим деньги. Для кого-то – это проект вдохновения.  Мы все растем и нас начинают привлекать разные идеи из разных движков.

Мне вдохновила недавно идея GRUB (пользовался ей в Yii 1.2)/ Я начал сразу же писать свой редактор GRUB на c# для Cotonti (даже пришлось написать свой шаблонизатор). Но еще больше мне понравилась идея моделей. Подобными вещами занимались Trustmaster и Alex300 несколько лет назад.

Я не предлагаю это вводить в ядро.

Я задумался давно на тему интерфейсов. И понял, какое это зло.

Давайте подумаем, что мы можем сделать для котонти? Те, кто еще в нем. Но не только это важно. Важно понять для кого мы работаем?

  1. Для сверхконечного пользователя. Ему интересна, только генерируемая информация.
  2. Для владельца сайта. Мы никогда ему не угодим. Время бесплатных CMS уже ушло. Люди сейчас платят большие деньги за готовые решения именно для них. Но никак не универсальную посудомойку-пылесос. А подобных инструментов, в котонти уж простите и в помине не водилось.
  3. Для юного вебдзайнера, верстальщика. Мне кажется это именно та категория! Он может сделать сайт на котонти любой сложности ля любого клиента.
  4. Для серьезных веб-разработчиков. Они наоборот предпочитают современные фреймворки. Да и любят они греметь словами MVC и другими. Хотя солнце можно нарисовать ручкой, песком, карандашом, красками и т.д.

Теперь про ЧАНКИ. Я с ними категорически не согласен.

Любая переменная в шаблонах используется как {A} или {A.B.C}. А Dr2005alex предлагает использовать имена файлов одинаково с переменными. Это ИМХО - просто дурной тон - создать множество интерфейсов. А это плохо. Мы легко понимаем, как пользоваться дрелью, так как в ней всего 1 кнопка.  Не надо делать 5 кнопок для одного действия – это вызывает отторжение. Купите дрель с пятью кнопками сверлить и тремя розетками. НО и не надо одной кнопке назначать 5 действий.

В котонти многие интерфейсы нуждаются в жестком упрощении. Но не усложнении.

ИМХО.

Мне не хватает сегодня:

- написанной одним дизайнером разумной админки и стартового шаблона на Bootstrap. Не просто впихивания бутстапа в базовый шаблон, а создание уникального проработанного шаблона.

- не хватает моделей. Если честно – хочется модуль страниц переделать. Никому не нужны функции импорта, сохранения, создания страницы. От них было бы больше току – если бы они работали внутри вменяемой модели страниц, в которой были бы расписаны все поля и все исключения.

- не хватает проверки форм при помощи JS.

- не хватает удобного редактирования нескольких страниц.

- не хватает колбэков в шаблонизаторе для нескольких параметров, например [cot_url | {A} | {B}]

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

-не хватает возможности генерировать шаблон из текста, а не из файла.

-не хватает документации. Любого качества.

- не хватает удобной админки с вменяемой логикой. Я не хочу попадать к одной ссылке 10ью путями! Это усложняет общение с клиентами.

-не хватает генерируемой под клиента админки.

- не хватает синхронизации с соц сетями.

- адекватной работы с файлами.

Я вижу много путаницы в интерфейсах.

- Стандартные модули и плагины имеют названия то во множественном, то в единственном числе: forums и page.

- файлы их пути и использование имеют различные названия. Например: cot_langfile или cot_incfile. Папки называются: plugins , modules, system – но внутри этих функций мы используем plug, module, core

- имена установщиков, апдейтеров, унисталяторов – еще 1 путаница.

-обращение к конфигам  и auth модулей и плагинов крайне различно.

И таких путаниц уйма. И во многих из них виновен я. Но уже это есть.

Я многие свои приложения размещаю на github и там много решений поставленных вопросов. Просто реально – вопрос стоит так: а что мы хотим и для кого мы это делаем. Спасибо, что не поленились прочесть.

Добавлено 1 минуты спустя:

P.S. Слоты меню  - это то, что нуждается в ликвадации. ИМХО. Дело не в их удобстве. А в том, что вы сами через месяц забудите, что для какого слота писалось. Его имя ничего не отражает.

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