Мне интересно, какая структура каталогов обычно используется в проектах разработки. Я имею в виду идею облегчения сборки, развертывания релиза и т. д.
Недавно я использовал Структура Maven для проекта java, но я не уверен, что это лучшая структура для проекта, не управляемого maven.
Итак, у меня есть два вопроса: ребята, когда вы начинаете новый проект, какую структуру вы используете? И: Что делать, если вам нужно интегрировать два разных языка, например классы java, в приложение PHP; Файлы PHP - это исходные файлы, веб-файлы, вы используете / src, / classes, webapps / php? Каков ваш выбор в таких сценариях.
В качестве примечания: мне также интересно, что вы выбираете для имен каталогов. Мне нравятся трехбуквенные имена (src, lib, bin, web, img, css, xml, cfg), но что вы думаете об описательных именах, таких как libraris, sources или htdocs / public_html?





Я только что нашел интересный документ о структурах каталогов на веб-сайте Zend:
http://framework.zend.com/wiki/display/ZFDEV/Choosing+Your+Application%27s+Directory+Layout
Хотя мы не используем Maven, мы используем структуру каталогов Maven.
Мы обнаружили, что он точно отражает необходимые нам концепции (например, отделение кода развертывания от тестового кода, кода от данных, установщиков от кода). Также мы предполагаем, что если когда-нибудь мы перейдем на Maven, большая часть нашего процесса останется прежней.
После пары лет работы с различными структурами я недавно нашел структуру, которая содержит для меня большинство вариаций:
/project_name (everything goes here)
/web (htdocs)
/img
/css
/app (usually some framework or sensitive code)
/lib (externa libs)
/vendor_1
/vendor_2
/tmp
/cache
/sql (sql scripts usually with maybe diagrams)
/scripts
/doc (usually an empty directory)
Обновление 2011 г .: http://java.sun.com/blueprints/code/projectconventions.html