Хорошие предложения по организации файлов для разработчика - PullRequest
5 голосов
/ 02 февраля 2011

Я немного борюсь с организацией папок, чтобы организовать множество проектов, над которыми я работаю.Я работаю на OS X - сейчас я использую ~ / Development / в качестве корневой папки, и у меня есть много типов проектов.Например, у меня есть приложения для iPhone в ~ / Development / Xcode

. Я разрабатываю на многих языках, от PHP, до Ruby, до Python и до Objective-C.Так, например, у меня может быть пара приложений с открытым исходным кодом, основанных на PHP, где я использую Zend Framework.Некоторые из этих проектов предназначены для клиентов, другие - тесты / эксперименты при изучении нового языка или общих экспериментах.

Мне действительно интересно, как другие разработчики организовали код / ​​проекты и могли бы поделиться некоторыми советами, чтобы сделать егоочень легко перемещаться по коду / проектам, связанным со многими языками и типами проектов.

Ответы [ 4 ]

2 голосов
/ 02 февраля 2011

Я использую такую ​​структуру:

  • ~ / projects
    • клиентов
      • client_a
        • project_b
      • client_c
    • личный
      • project_d
      • эксперименты
        • ruby ​​
          • block_experiment
        • lua
    • opensource
      • repo_name
1 голос
/ 04 августа 2011

Я только начинаю изучать эти инструменты, но они являются хорошей отправной точкой, чтобы найти больше (все бесплатно).Я приземлился на этих двоих, и сейчас работаю с ними:

File Nexus и другие - больше, чем просто проводник Windowsзамены на стероидах, но определенно имеют свое применение.Я все еще ищу офлайновые инструменты, сравнимые с Evernote, Zoho и другими, которые работают со всеми моими текущими файлами.

Как и все остальное с компьютерами, «всегда есть способ, это просто вопрос как».

1 голос
/ 02 февраля 2011

Я нахожусь в аналогичной лодке, и у меня есть две папки в моем домашнем каталоге: Projects и Reference.Я не делаю никаких различий в языке проекта.Код, над которым я работаю, идет в Projects, а проекты, источник которых я хочу прочитать, идут в Reference.Это полезно, потому что ввод ~/Pr Tab и ~/R Tab выполняется быстро в командной строке, и я часто очищаю свой каталог Downloads.

Обычно яиметь псевдонимы для работы с проектами в командной строке.Например, мой gerbils проект имеет виртуальную среду Python , поэтому мой псевдоним g быстро выводит меня из новой оболочки:

function g () {
    export PIP_RESPECT_VIRTUALENV=true
    cd ~/Projects/gerbils
    . ../bin/activate
}
1 голос
/ 02 февраля 2011

Мой совет - всегда сначала организовываться на уровне проекта.Тогда модули, которые имеют смысл.Языки вступают в игру только тогда, когда модуль имеет несколько реализаций.В этих случаях я считаю, что создание модуля лучше всего подходит для его собственного проекта.

$/Project/XXX


$/Project/YYY/Lang1
$/Project/YYY/Lang2

Тогда, если XXX использует YYY, его привязка - это выход YYY, а не источник YYY

...