二、将一个大项目分成多个子项目作为一个解决方案进行开发
2009-01-03 13:10
302 查看
新人可能不太明白解决方案与项目的关系,解决方案一般来说是用来处理一个问题所有可能用到的“东西”的总和。这里的问题可能就是“要建立一个大型SNS网站”。
要建立一个大型SNS网站我们最初的想法可能就是要在VS2008中新增一个“网站…”,把所有用到的内容都放在里面,比如:数据库操作类文件、 缓存处理类文件、aspx页、ascx页、图片、样式等等。这样也就意味着,我们这个解决方案就是一个网站,也就是说这个解决方案只有一个项目:网站。
我建议的做法是把这个网站分成多个项目来开发,比如:一个封装数据库操作的DLL项目+一个缓存处理的DLL项目+一个包括其它内容的网站。
这样做有什么好处呢?
好处一、较好的可维护性。对于新增加的项目(比如:一个负责管理网站的后台管理系统)如果需要操作数据库只需要引用DLL组件就可以了,这样需要修改数据库操作类只需要修改数据库操作的DLL项目一处即可,增加可维护性,也减少了出错的几率; 好外二、利于多人一起开发。在多人开发中,如果你不会创建DLL组件则只需要请会的同事为你创建好即可,日后你也不用管这个DLL是如何实现的,只要知道它里面已经实现了你需要的所有属性与方法即可,这样就让解决方案更适合多人一起开发,各项目成员都可扬长避短; 好处三、方便对单独的项目进行调试。当你需要调试某个组件时可以对创建一个小的测试项目引用调试即可,不用每次都进行整个网站的重编译。
其它的好处请大家自己去发现吧,今天先写到这了,祝大家新年快乐,2009更上一层楼~
要建立一个大型SNS网站我们最初的想法可能就是要在VS2008中新增一个“网站…”,把所有用到的内容都放在里面,比如:数据库操作类文件、 缓存处理类文件、aspx页、ascx页、图片、样式等等。这样也就意味着,我们这个解决方案就是一个网站,也就是说这个解决方案只有一个项目:网站。
我建议的做法是把这个网站分成多个项目来开发,比如:一个封装数据库操作的DLL项目+一个缓存处理的DLL项目+一个包括其它内容的网站。
这样做有什么好处呢?
好处一、较好的可维护性。对于新增加的项目(比如:一个负责管理网站的后台管理系统)如果需要操作数据库只需要引用DLL组件就可以了,这样需要修改数据库操作类只需要修改数据库操作的DLL项目一处即可,增加可维护性,也减少了出错的几率; 好外二、利于多人一起开发。在多人开发中,如果你不会创建DLL组件则只需要请会的同事为你创建好即可,日后你也不用管这个DLL是如何实现的,只要知道它里面已经实现了你需要的所有属性与方法即可,这样就让解决方案更适合多人一起开发,各项目成员都可扬长避短; 好处三、方便对单独的项目进行调试。当你需要调试某个组件时可以对创建一个小的测试项目引用调试即可,不用每次都进行整个网站的重编译。
其它的好处请大家自己去发现吧,今天先写到这了,祝大家新年快乐,2009更上一层楼~
相关文章推荐
- SSM框架——Spring+SpringMVC+Mybatis的搭建教程 一:概述 SSM框架在项目开发中经常使用到,相比于SSH框架,它在仅几年的开发中运用的更加广泛。 Spring作为一个轻量级
- 使用Jquery+EasyUI进行框架项目开发案例解说之中的一个---员工管理源代码分享
- 转:如何去了解、熟悉一个已经开发完的项目 进行维护、二次开发或者升级
- 使用Jquery+EasyUI进行框架项目开发案例解说之中的一个---员工管理源代码分享
- 点击VS2010解决方案中的某个项目的任意一个文件导致VS开发环境关闭
- 引用一个项目作为library的操作步骤---开发中遇到的问题(二)
- 使用Jquery+EasyUI进行框架项目开发案例解说之中的一个---员工管理源代码分享
- 在一个软件开发项目中进行实际日程安排的十二点提示(转)
- 引用一个项目作为library的操作步骤---开发中遇到的问题(二)
- Linux环境下段错误的产生原因及调试方法小结 最近在Linux环境下做C语言项目,由于是在一个原有项目基础之上进行二次开发,而且项目工程庞大复杂,出现了不少问题,其中遇到最多、花费时间最长的问题就是
- 在一个软件开发项目中进行实际日程安排的十二点提示(转)
- 使用Jquery+EasyUI进行框架项目开发案例解说之中的一个---员工管理源代码分享
- 在一个软件开发项目中进行实际日程安排的十二点提示(转)
- Android开发-将一个项目作为lib导入到另外一个项目中
- 使用Jquery+EasyUI进行框架项目开发案例解说之中的一个---员工管理源代码分享
- 使用Egret开发的HTML5项目,使用本地电脑作为服务器进行移动端调试流程
- 在一个软件开发项目中进行实际日程安排的十二点提示(转)
- 在一个软件开发项目中进行实际日程安排的十二点提示(转)
- C++开发中一个解决方案里,两个项目的相互引用,相互依赖的实现方法(解决方法)
- 嵌入式C实战项目开发技巧:如果对一个有规律的数组表进行位移操作