timo-71, Вы говорите о вещах о которых все знают и я в том числе, эти способы работают. НО чтобы реализовать конкретную задачу, например:
Появляется новая идея создания сайта для владельцев магазинов ремонта квартир. На сайте должны быть категории товаров, адреса магазинов, сравнение цен на товары и тд. Специфический такой сайт. Создателю сайта придётся заплатить хорошенькую сумму денег чтобы такое сделать. Можно потратить годы времени на изучение программирование и самому делать. На написание под такие не стандартные задачи уйдёт куча времени.. И не факт даже если заказать у фирмы делающей сайты сделают качественно.
А делать на готовом конструкторе, это опять же разрабатывать под него плагины, копаться в коде этого конструктора и тд. и тп. Поэтому многие подобные идеи затухают ещё в зародыше.
Когда мой инструмент выйдет на рынок люди смогут создавать подобные сайты довольно таки быстро, так как узлы и компоненты для разных задач можно будет подобрать, а если нет то быстро создать. Прописать элементы в структуре и готово. Предполагаю умные люди в крупных компаниях скоро возьмут на вооружение мой подход.
Элементарно :) В свойствах компонента или методе класса узла поставить проверку, авторизован пользователь или нет и выдавать соответствующий результат.
Я против социалок и авторизации через них. Кстати думаю этот способ они также позаимствовали у меня. Когда у меня был большой портал, я сделал мини движок партнёрских сайтов и сделал для всех сайтов единую базу пользователей с внутренней платёжной системой. Сейчас постепенно я к этому опять иду.
Позже приведу пример готового сайта.
У меня фреймворк, который будет иметь узлы с компонентами, а пользователь в xml будет прописывать нужные ему элементы.
Опять же если подумать ;) на конструктор это не похоже согласитесь.
Лично мне эти портянки не нравятся :) Поднимите руки, кому хочется в этом разбираться?
ЗЫ. Ну вы то ладно, а в тот обычный человек явно ничего не поймёт в таком коде :)
А теперь подумайте. Пользователю захотелось поставить на страницу банально рекламный блок. Чтобы ему это сделать ему нужно открыть шаблон, найти модуль, в модуле какой-то костыль сделать чтобы этот рекламный блок появился на странице. Это вас конечно не смущает, это нормально, этим все занимаются.. :)
Опять не дошло? У меня же в структуре надо прописать элемент рекламного блока и всё.
Вот иногда у вас думалка начинает работать, а потом снова отключается.
У меня эта проблема решена и я ранее в теме рассказывал как это реализовано. Структура страницы одна и движок классом открытия структуры получает все элементы этой страницы, затем генерирует её. Так же когда запрашиваются стили, открывается структура и получается список нужных стилей, перед добавлением проверяет есть ли уже такие стили или нет, если нет то добавляются. Я кстати над этой проблемой думал не мало и тестировал разные способы.
А теперь ещё подумайте все.
Для ускорения создания сайта хочется удобный инструмент, поэтому и существуют шаблонизаторы, они упрощают работу, но замедляют скорость генерации страницы. Так как во-первых язык php это интерпретируемый язык он сам является шаблонизатором. А во-вторых шаблонизаторы написанные на php выполняют по сути массу бесполезных действий только чтобы интерпретировать выдуманные команды.
Я же использую встроенные модули php которые выполняются на машинном уровне. Открывается структура и у меня мгновенный доступ ко всем элементам которые должны быть на странице, хоть в начале, конце или середине, я могу обработать только часть структуры при динамическом обновлении аяксе например.
Кстати когда я делал первый свой проект Аякса тогда не было и я как тогда говорили тоже изобретал велосипед :) сначала на технологии Flash потом на Js И такое ощущение, что те кто раскрутили Аякс у меня просто подглядели и взяли мой код, так как подход и способ именно тот какой тогда сделал я. Передача данных кстати реализована на xml. Что и сейчас даже практикуется.
В психологии есть такой феномен обезьянки :)
Провели такой эксперимент. Посадили 5 обезьян в клетку. Посередине клетки повесили банан. Ну все обезьяны естественно стали пытатся его достать. А их тут же стали поливать из шланга холодной водой. Обезьяны перестали доставать банан на некоторое время, а потом снова стали пытаться его достать. И их снова полили водой из шланга. Потом некоторые остались в стороне, а одна или две всё ещё пытались достать банан. И их опять облили водой. Потом все обезьяны перестали доставать банан.
Затем одну обезьяну забрали из клетки и посадили новую. Новая обезьяна сразу стала пытаться достать банан. А старые стали её отгонять, мол нельзя. Затем ещё одну поменяли на новую. Новая снова полезла за бананом, а другие её отгоняли и та которую не обливали водой с большим энтузиазмом это делала. Затем в клетке не осталось ни одной из первых обезьян которых обливали водой. И Сколько не меняли обезьян они новеньким не позволяли достать этот злосчастный банан. Так как нельзя!! Потому что так заведено!!!
Я понял что тут нет реальных хороших разработчиков, здесь находятся в основном обычные пользователи конструкторов. И вы рьяно как те обезьянки в клетке защищаете свой банан(в виде использования готовых решений конструкторов, шаблонизаторов). Даже если у кого и появляются здравые мысли сделать что-то лучше, потом после кто-то прокомментирует что не надо изобретать ничего(исходя из своего негативного опыта так как у него ничего не получилось) и тут же вы встаёте на его сторону. Стадо "барашков" образовывается.
Я извиняюсь за алегории просто иначе объяснить ваше поведение не получиться. А в стаде барашков чтобы отстоять свою точку зрения нужно быть волком :)
Правильно вы о себе говорите :) Оно конечно придумано :) Всё то перечисленное мною в таком нативном шаблоне чтобы у вас работало, надо написать классы, функции. Потом в каждой странице их включать, задавать параметры и тд. Вашему разработчику будут нужны знания php, html, css, js
А в моём случае просто поменять несколько строк в структуре xml, так как все эти нюансы продуманы и учтены заранее. А моему пользователю нужно только понимать как составлять структуру в xml.
<html> <head> <?php head(); ?> </head> <body> <?php module(1); ?> <?php module(2); ?> <?php module(3); ?> </body></html>
Хорошо. Ваши модули сгенерировали какой-то HTML
А как же стили? Ах да зачем придумывать велосипед, просто запихать всё в один файл, надо не надо и отправить пользователю.
А если скажем модуль заголовок с текстом, а мне надо туда добавить ещё текста или блок разделённый на две колонки или ещё что-то а в тот блок ещё.
А как быть если у слайдера поменять картинки? А что если модулю нужен скрипт? И не сразу а в зависимости от действий пользователя? А что если данные модулей 1,2,3 в данном случае не нужны тему на форуме удалили, что тогда? Как в таком случае будет организовано ветвление? В xml есть namespase и это я предусмотрел, раньше в сообщениях об этом тоже писал. А как быть если пользователь поменяет расположение сайдбара с право на лево или ещё что-то? Тут вопросов к такому подходу масса...
Вы об этом подумали? Так у кого соображалка плохо работает?---------- Добавлено 06.12.2019 в 20:40 ----------
Это не понимание xml, это просто подход использования xml в качестве структурирования элементов страницы, модуля, сайта. Я не хочу приходить к банальным шаблонизаторам, я наоборот ухожу от них.
Dreammaker, Цитировать не буду, всё правильно говорите. Я подумаю и сделаю мини презентации, для разработчиков уроки, для простых людей как они могут быстро создавать сайты, для бизнесменов готовый модуль магазина, блогеров и тд.
Простым людям будет просто показано как добавлять элементы страницы, постараюсь сделать всплывающее меню с перетаскиванием мышкой будут вставляться готовые элементы структуры.
Целевая аудитория на данном этапе пока разработчики, фреймворк ещё очень сырой, юзабилити желает лучшего, мне сейчас нужны компаньоны. Надо найти и обучить несколько человек которые желают освоить не сложный но удобный инструмент для разработки, с помощью которого они и другие смогут создавать сайты, узлы и компоненты, зарабатывая на этом.
Далее когда компонентов и узлов будет достаточно для создания сайта просто составив его структуру. Будет второй этап предложения для предпринимателей. А затем уже будем предлагать и обычным людям. Если человек хочет свой сайт и при этом ему не хочется тратить время на изучение программирования, использование какого то конструктора и тд., он сможет ознакомится с азами как составлять структуру и создать себе сайт какой захочет.
Хотелось всё показать и рассказать, к видео специально не готовился, всё экспромтом. Когда буду делать видео уроки, разобью все моменты на небольшие части и вкратце, но по сути буду рассказывать, но это в будущем когда будет сайт проекта.
Как и обещал записал видео обзор с пояснениями. Заранее извиняюсь за изложение, рассказчик из меня никакой, короче ночь сегодня плохо спал, мысли всякие мешали уснуть.., переволновался, перенервничал.. Пробовал записать видео ещё вчера, программа без регистрации не позволила дольше 10 минут, пришлось искать другую, со звуком проблемы решал и тд. Записав долго грузилось на ютуб, но всё-таки загрузилось :) Прошу сильно не пинать.
https://youtu.be/B3bpQbvzYug
jinja2 - это шаблонизатор для питона, я пишу на php. Такое чувство что люди тут увидев где-то что-то даже если не понимают для чего, обязательно вставят это "блеснув так сказать своей эрудицией" :)
Ничего я не конвертирую в HTML
Как вы формируете так и я формирую :)
Сейчас запишу видео, там всё попробую объяснить.
domen.ru/module/action - тут думаю понятно модуль и экшен как в MVC
domen.ru/module/parametr1/parametr2/action - parametr1-parametrN это также маршрутизация, экшен может инклюдить ещё обработчики
domen.ru/module/parametr1/parametr2/action?key=value - переменные key=value передаваемые странице или в методе POST