常见的大型软件项目开发文件目录结构

转载 2005年02月28日 17:09:00

常见的大型软件项目开发文件目录结构

1. Java 项目

调试阶段编译后的 .class 文件放到 classes 目录。将 classes 目录和 lib 中的其他工具 .jar 放到 classpath 中。运行当前目录是项目根目录。

正式发行版的 .class 放到一个或者多个 .jar 文件中,一般放在目根目录,也要加到 classpath 中去。

由于在 Java 项目中,经常用多种编译器进行编译,比较普遍的是,开发是使用开发工具编译,打包时使用 Javac 编译, project 文件被放到次要的位置。

2. Visual Basic 项目

Visual Basic 项目编译后的 COM DLL 和 Exe 一般放在项目根目录下面。由于 Visual Basic 中做 COM DLL 很容易,因而大量使用子项目编译 COM DLL,通过主 Exe 启动后加载。

以上的目录设置存在一种问题: 调试的时候,当前目录在子项目目录下面,比如为 module1_submodule2,而发行版本的当前目录在项目根目录下面,因此需要在程序启动的时候判断处理。

3. Visual C++ 项目

调试阶段,所有 dll,lib 文件放到 build 和 lib 目录下面。对于子项目, build 的时候直接把 dll , exe 放到 build 目录下面。

同 Visual Basic 项目一样,存在调试阶段和正式版本的当前目录不一致的问题。不过, VC 的项目属性中可以设置 working directory ,所以这个问题也很容易解决。

对于大型项目,还存在一个问题,那就是整个项目编译时间很长,可能达到半个小时以上。让每个人每天上午从版本库里取最新代码,这是很正常的做法。但是没有必要让每个人每天上午都花半个小时以上时间。比较常见的做法是,在某一台服务器上面运行一个定时编译批处理程序,一般在半夜,编译后的文件放在共享目录中。这样程序员每天上班后只需要从版本库里取最新的源代码,然后复制编译后的文件,如 .class, .obj,.dll,.exe。

这里有另外一个要注意的地方,就是不同计算机的时间要同步。不能服务器时间是五月一日,我的计算机时间是六月一日。编译器可以做到增量编译,节省时间。增量编译比较源代码的时间和编译后的文件时间。由于编译后的文件是从服务器中复制得到,不同计算机时间不能相差太多。

自动编译后的文件如 .class, .obj,.dll,.exe 一般并不放入版本库,而只是共享。因为如果放入版本库,从客户端下载后的文件属性是只读的,有很多不方便。

当然,如果只是小型项目,所有文件放在一个目录也没有多大关系,更省事。

web开发常见问题集锦

1.JS控制HTML元素的显示和隐藏 利用来JS控制页面控件显示和隐藏有两种方法,两种方法分别利用HTML的style中的两个属性,两种方法的不同之处在于控件隐藏后是否还在页面上占空位。 ...
  • q121516340
  • q121516340
  • 2016年05月17日 15:06
  • 1339

一个人怎么写大型软件

一个人怎么做游戏引擎/MOBA等大型软件
  • mynameiszhuli
  • mynameiszhuli
  • 2016年04月10日 09:54
  • 1048

软件开发的常用开发模式

简单描述几种主要的软件开发模式:瀑布开发、迭代式开发、Time Boxed 定时开发、Continuous Flow 持续工作流。和它们的主要特点和缺点...
  • FulfillArtDream
  • FulfillArtDream
  • 2016年04月27日 21:47
  • 1566

Android 开发技巧 开发常见问题归纳 需要注意的坑和解决方案

1. 在Activity还没完全显示时,弹出PopupWindow或者Dialog  崩Activity not running 错误         解决方案: 重写onWindowFocusCha...
  • soul_code
  • soul_code
  • 2015年12月01日 13:59
  • 2880

有关自己javaweb项目常见问题汇总

1.你项目是怎样实现国际化的?   java推荐用 XX.properties配置文件,比如lan_Zh_CN.properties里面放你程序的所有中文提示,lan_fr.properties里面...
  • s2940086379
  • s2940086379
  • 2015年05月22日 13:31
  • 1974

如何才算是真正能从事企业级的项目开发

Java就是用来做项目的!Java的主要应用领域就是企业级的项目开发!要想从事企业级的项目开发,你必须掌握如下要点: 1、掌握项目开发的基本步骤 2、具备极强的面向对象的分析与设计技巧 3、掌握...
  • u012189294
  • u012189294
  • 2014年11月07日 15:30
  • 1014

软件架构经典书籍

软件架构师书籍 收藏 突然一天,发现自己的软件结构有点复杂,淡定后觉得要对架构方面多一些了解。下面转载了一篇别人认为的好书,当然都没读过。觉得比较赞的是,文章最后还有读法心得,个人体会比...
  • jinshi20120101
  • jinshi20120101
  • 2015年02月12日 22:25
  • 528

十大开发常用算法

第一 快速排序算法 快速排序是由东尼·霍尔所发展的一种排序算法。在平均状况下,排序 n 个项目要Ο(n log n)次比较。在最坏状况下则需要Ο(n2)次比较,但这种状况并不常见。事实上,快速排序...
  • lee_nacl
  • lee_nacl
  • 2017年03月11日 16:06
  • 1299

网站开发命名详细规范

前 言    良好的命名规范可以为团队合作开发推波助澜,无论在项目开发,还是产品维护上都起到了至关重要的作用。应该说命名规范是一种约定,也是程序员之间良好沟通的桥梁。另外古人相信只要知道一...
  • bird_GGfly
  • bird_GGfly
  • 2015年06月07日 08:58
  • 451

JavaWeb开发走过的坑之一

JavaWeb开发总会碰到几个坑,记录下来,供各位参考。
  • qq_24091555
  • qq_24091555
  • 2016年11月11日 10:43
  • 311
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:常见的大型软件项目开发文件目录结构
举报原因:
原因补充:

(最多只允许输入30个字)