您如何组织您的开发环境

时间:2009-09-20 15:11:57

标签: project-management organization

我有一个包含所有项目的文件夹,使用不同的语言。然后我有了我最终可能在我的代码中使用的库(主要是jar文件)。我确信有一种公认的做法,对吗?专业人士做了什么?

5 个答案:

答案 0 :(得分:2)

这实际上取决于您使用的工具以及您希望如何组织它。

例如,我见过人们使用Eclipse但将每个项目放在一个工作区中,或者为每个项目使用一个工作区。项目的实际存储也可能有所不同。所以,我认为没有一种公认的做法。

我认为你需要找出最适合你的方法。

答案 1 :(得分:1)

我有一个名为Work的文件夹。在这个文件夹下,我有项目。

Project包含我开发的所有软件,每个软件都有一个目录,并带有常规名称。每个目录都是一个完整的市集库,包含标签,主干和分支(我的旧svn风格的遗产,可能我很快就会改变)。

我还为项目开发了特定的运行时。每个运行时都是通过makefile下载和安装的,下载并编译所需的一切(libs,interpreter和编译器,在最坏的情况下,某些lib需要特定版本的版本)。

由于我的工作主要涉及小代码,我还有一个Archived和Outdated子文件夹进入Project,在那里我放置了我不再使用的东西(第一个)或已经被更好的程序(过时的)取代。我从不丢弃旧代码,因为明天可能会有用。

对于部署和使用,我有一个python脚本进入每个Project子目录并下载依赖项,编译所有内容,并将其打包为nutz文件(一种用于Chestnut Package Manager实用程序的jar文件,也是矿)。

然而,在大多数情况下,专业人员使用IDE为他们做所有事情。我不喜欢这种方法,因为经常使用和学习IDE所花的时间比做我做的要多。实现IDE的目的是让您拥有业务客户端,以及涉及团队的潜在大型软件项目。我现在已经超出了这个规模,对我来说,使用一个复杂的IDE就像被交给大西洋沿岸一个愉快的周末。完全超出我当前需要的规模。

答案 2 :(得分:1)

对我来说,它是项目根目录下的以下目录列表:

  1. src用于.java文件,使用包层次结构
  2. 第三方JAR的lib,除非我从存储库中获取它们(例如,Spring发行版)
  3. 测试JUnit或TestNG测试文件
  4. .properties,.xml等的资源或配置
  5. web如果它是一个Web应用程序,其中包含WEB-INF及其所有服务员
  6. docs,如果我有任何文档
  7. 我喜欢Spring人们进化过的结构。

    我使用IntelliJ,所以我想要任何结构我都可以很好地使用它。

    我有一个目录/工作,可以保存我所有的Subversion工作副本。

答案 3 :(得分:0)

这在很大程度上取决于您使用的编程语言。我正在用java编程,我见过的最好的结构由maven给出。

由于maven的依赖管理很好,你不需要乱用几十个jar文件。您可以使用现有插件来完成几乎所有可以想象的目标。您可以在小型子项目中构建项目以实现最佳重用。

答案 4 :(得分:0)

我拥有版本控制存储库中的所有内容(nb:一组非常令人放心的文件,并且已经过测试备份)。在我的开发机器上,我有用于检出当前/最近工作的Projects文件夹,以及我目前没有处理的旧签出的Projects / Archives文件夹。当我需要第三方库用于项目时,它们会进入每个项目内的third_party文件夹。这些跟踪了一个git子模块,它为我提供了已知可以与该项目一起使用的确切软件版本,但也可以在不同项目中轻松更新,如果某些库不能满足我的需求,则会进行黑客攻击等等。每个项目都应该是自包含的,并且在机器之间可移植,只要合理可靠等等。