grabbee
@grabbee

Как правильно разбить php/js проект?

Здравствуйте. Подскажите пожалуйста, как правильно разбить проект на части для более гибкой разработки? Ведь можно выделить отдельные сервисы в php коде и собрать их в отдельный репозиторий GIT, затем собирать composerom или соорудить git-submodule(что правильнее не понял ещё, но пишутчто субмодули не хорошо).

Дальше больше. PHP модуль-сервисы можно выделить в папку /vendor/company/modulename, например. К чему помимо git-config файлов добавим composer.json(lock) в корне. Теперь JS

1. Подключаемые файлы/библиотеки - управляются bower
Если мне нужно просто подключить либу в html код, я просто создаю конфиг файл для bower и устанавливаю зависимости, потом прописываю ручками в нужном месте ссылку на bower папку.
Вопрос - А если я свою либу выделяю из своего JS кода, я её должен буду, например, на GitHub или свой Git сервер покласть? Скачивать через bower и собирать/клеивать через grunt, правильно?

2. Для grunt нужны npm пакеты, поэтому в главном проекте в корне мне ещё нужен кроме composer.json, bower.json ещё и package.json для npm - все эти конфиги пойдут на главный git репозиторий проекта, верно?

3. ES6/7 позволяют собирать JS из модулей в виде отдельных файлов. Их же потом как-то нужно собрать в один файл для клиента, а как это делать? grunt-babel подойдет?

---

Подскажите, архитектурно CSS-less исходники, JS модули и библиотеки, которые непосредственно привязаны к PHP коду - я должен держать в главном репозитории или как то можно их выносить. Опять же. Получается после правки css мне, чтобы как-то посмотреть изменения(он же не в главном репозитории, а отдельным проектом) нужно будет перебрасывать скомпилированный сss в главный репозиторий и только после этого узреть всё?.

А деплой всего этого... Помогите советом пожалуйста. Спасибо.
  • Вопрос задан
  • 624 просмотра
Решения вопроса 1
banderos120
@banderos120
Играю на балалайке
Разбивать проект на отдбельные модули необходимо, но создавать под каждый отдельный модуль репозиторий - нет необходимости. В дальнейшем, если вы будете уверены в том, что модули могут жить своей отдельной жизнью, то сможете их вынести в отдельный репозиторий с тестами и отдельной документацией.
То же самое и касается JS кода. Сперва делаете все в одном, для своего проекта, после уже, если будете уверены в реюзабельности модуля - выносите его в отдельный репозиторий.
2. да.
3. подойдет, можете еще посмотреть в сторону webpack.
--
CSS-less исходники, JS модули и библиотеки, которые непосредственно привязаны к PHP коду

У вас SPA или нет ? Если нет - делайте все в одном репозитории. Если SPA можете разбить на два - фронт и backend.
Для деплоя можете использовать PHPCI.

Вообще, сколько человек и что за технологи будут на проекте ?
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
grabbee
@grabbee Автор вопроса
использую пока гит субмодули для всего :)
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы