Компьютерный форум NoWa.cc Здесь может быть Ваша реклама
Правила Форума
редакция от 22.06.2020
Портал .::2BakSa.WS::.
Вернуться   Компьютерный форум NoWa.cc > В помощь вебмастеру > Веб - Программирование > PHP

Уважаемые пользователи nowa.cc и 2baksa.ws. У нас сложилось тяжёлое финансовое положение. Мы работаем для вас вот уже более 15 лет и сейчас вынуждены просить о помощи. Окажите посильную поддержку проектам. Мы очень надеемся на вас. Реквизиты для переводов ниже.
Webmoney Webmoney WMZ: 826074280762 Webmoney WME: 804621616710
Кошелёк для вашей помощи YooMoney 4100117770549562
YooMoney Спасибо за поддержку!
Ответ
 
Опции темы Опции просмотра Language
Старый 02.07.2020, 04:32   #1
Пользователь
 
Пол:Мужской
Регистрация: 10.09.2009
Адрес: Вильнюс, Литва
Сообщений: 87
Репутация: 12
По умолчанию Свой движок - стоит ли?

Тема наверняка не раз поднималась по разным причинам и из разного ракурса.

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

Идея состоит в том, что бы объединить все существующие проекты на одном движке и создавать новые на нем же.

Силами конечно сторонних разработчиков, сам на начальном уровне.

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

Вот мне пожалуйста подскажите, есть ли в природе что-то готовое?

Мультиязычность-Мультидоменность мне подсказали есть на Вордпрес и Битрикс.

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

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

В моем понимании остается одно, вложиться в написание своего движка, отвечающего следующим требованиям:

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

Мультидоменность - любой состав модулей и их настроек для разных доменов

Глубокая модульность - ядро должно быть совершенно пустым, только функции обработки модулей, все остальное на модулях которые могли бы легко заменяться/подключаться/отключаться без каких либо поломок, инсталов, деинсталов (простая иницилизация).

Глубокая локализация- в зависимости от страны должно быть возможно не только выводить определенные модули или настройки их, но и использовать хранение данных в отдельных базах (соблюдая требования некоторых стран о хранение конфиденциальной информации в локальной стране)

API для взаимодействия между разными сайтами на этом же движке.

Ну и конечно, движок должен отвечать всем современным требованиям, это: минимальная нагрузка на хостинг, быстрая работа, безопасность, СЕО оптимизация.

В общем решение я в принципе принял, он мне нужен, только начинать с белого листа или брать за основу какой либо open source я пока не могу решить, так как 100% подходящих open source я не нашел. Но и грамотно разработать структуру думаю не каждый программист сможет, а в этом я точно профан.

Итак, делаю (чужими руками) open source и жду ваших советов.

Возможно стоит за основу взять наработки человека с ником boolive https://habr.com/ru/post/51152/ или его последнее творение https://habr.com/ru/post/211488/ . Честно понравилось по описанию, но руками пока не щупал, да и что мне щупать, нужно сравнивать производительность, другие параметры а я врятли с этим справлюсь. Сам проект заброшен и не поддерживается

Так же интересный проект https://max-3000.com/, позиционирующий себя как более легкий аналог вордпресса, но он на флеймфорке и менее подвижный.

Есть какие советы какую структуру строить, может какие наработки взять в основу?

Может кто хочет присоединится как наемный программист или даже партнер?
BuxarNET вне форума
 
Ответить с цитированием Вверх
Здесь может быть Ваша реклама
Здесь может быть Ваша реклама


Реклама: Магазин компьютерной техники КНС предлагает Acer TravelMate - Подарок каждому покупателю!схема теплохода княжна анастасия теплоходФанкойл SYSIMPLE FWM54Aновогодняя корзина с фруктамиподвесная реклама


Старый 29.10.2020, 23:15   #2
AndrewKiew
Новичок
 
Пол:Мужской
Регистрация: 18.12.2012
Сообщений: 7
Репутация: 1
По умолчанию

Сами же приведенные Вами требования и накладывают ограничения. В моем опыте преимущества использования такого объемного и сложного движка нивелируются временем на его развертывание, настройку и, как это ни парадоксально, последующую кастомизацию.
Я бы предложил решение типа "конструктор". Например, самый базовый функционал какого-нибудь простого быстрого фреймворка (как пример Phalcon) использовать для самых базовых вещей таких как роутинг, работа с БД, вывод в шаблоны.
Следующий элемент это несколько самых базовых расширений типа локализации, определения геолокации.
Следующий элемент - заточенные под этот фреймворк наборы миграций таблиц и компонент взаимодействия между ними. Для каждого типа проекта сделать свой базовый набор.
И на этом остановиться!
При развертывании, из этих модулей собирать каркас, который даст необходимый базовый функционал, а бизнес-логику дописывать. Это даст огромную экономию времени (и средств) по сравнению с огромным комбайном, который "умеет все" и который, в конечном итоге нужно будет допиливать, а по факту - перепиливать, что намного сложнее чем предложенный мною вариант.
Очень рекомендую выложить этот проект под GPL и это даст ему свежий взгляд и свежие наработки.
Желаю успехов!
AndrewKiew вне форума
 
Ответить с цитированием Вверх
Старый 02.11.2020, 14:40   #3
BuxarNET
Пользователь
 
Пол:Мужской
Регистрация: 10.09.2009
Адрес: Вильнюс, Литва
Сообщений: 87
Репутация: 12
По умолчанию

AndrewKiew, Вы правильно говорите по поводу модульности и не нужности в комбайне.

На самом деле так и задумано. Мне комбайн не нужен.
Только использование фреймворка это не верный путь. Так как проект глобальный и насчитан на постоянное развитие, привязываться к чужому коду не хочется по разным причинам.
Разделение модулей предполагается следующим (уже по написаному ТЗ)
1. Разрабатываем ядро — должно содержать только логику взаимодействия модулей
2. Разрабатываем системные модули — модули без которых UMS не может существовать
3. Разрабатываем дополнительные модули — модули применимые почти во многих проектах
4. Разрабатываем основные модули — модули предназначенные под конкретный проект.
5. Разрабатываем универсальные модули — модули в одних проектах могут быть основными, в других дополнительными.
6. Разрабатываем вспомогательные модули (подмодули / дополнения/ плагины) — модули подключаемые к существующим для расширения функционала.

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

GPL предусмотрена на основною систему кроме некоторых основным модулей, которые будут писаться под коммерческие проекты
BuxarNET вне форума
 
Ответить с цитированием Вверх
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Текущее время: 09:21. Часовой пояс GMT +3.


Copyright ©2004 - 2024 2BakSa.WS

Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2024, vBulletin Solutions, Inc. Перевод: zCarot
Время генерации страницы 0.12704 секунды с 10 запросами