码迷,mamicode.com
首页 > 其他好文 > 详细

如何搭建轻量级架构-代码组织篇

时间:2015-07-26 20:58:36      阅读:129      评论:0      收藏:0      [点我收藏+]

标签:项目管理   架构   单元测试   

很多程序员看到标题,估计心里一愣:一个组织代码,有什么可讲的,无非是公司网址倒着写,外加命名规范,最多分模块管理而已!怎么这都能忽悠一篇文章来?


代码组织确实是一件简单的事情,但是如果我说的“代码组织”不仅仅限于这些内容呢...

技术分享


大家都知道Web项目的架构,文件很琐碎。一个模块前台包含JS,CSS,HTML文件,后台还有模块的逻辑处理类,实体的数据库访问类,以及实体本身。

如果这个模块需要打印,还要有打印的模板文件!

如果这个模块还有一些关联数据,比如学员的学分数据等等。

算下来,一个最简单的模块都要有10个左右的文件!

技术分享


由于Java Web的架构,很多开发人员都知道,js,css等文件是和Java代码分离的。

文件的分离本身就增加了复杂性,如果文件数量上再有所增加,复杂度更是呈几何倍数增长。


可能绝大多数开发人员并没有质疑如此做的问题,认为既然大家都如此做,这么做肯定没有问题。


但是你可能没有注意到,这给你增加了多少麻烦,又浪费了多少时间。

1. 你经常修改完后台代码,再去修改前台代码,却要点几下鼠标才能找到文件!

2. 项目越来越大,文件也越来越多,经常找错文件?

3. 经常发现出现了一些不知所谓的文件,不知道所属哪个模块,又所属哪个人....处女座看到都要哭了。

4. 每个月总有那么几天,处女座在流血!别想多,他只是看不下去,要重构项目中所有的文件......


这些情况想必很多人遇到过,或者正在经历.....那么如何才能避免这种情况呢?


模块所有文件一起放,千万别分开

如果你的文件结构是这样的,是不是解决了很多问题?模块中包含了模块的所有文件!

技术分享

这就是我们目前的结构,在Java中,有很多Lib支持从JAR中读取资源文件,有点经验的不难搞定。


这样做之后,程序员就完全专注于逻辑,而不用频繁的找文件

而且,开发任务可以细粒度的按模块划分,而不是按前台后台划分


自动生成模块框架

如果你的结构定了,就可以使用Freemarker直接生成代码框架!


很多程序员对这个不屑一顾,就几个文件,Copy来改改就行了!

当你Copy一个,倒没什么,当你每天的工作都在Copy,还不想着改进,那你就太悲哀了!

技术分享


自动生成代码,不仅保持了系统的高度一致性,还为我们带来另外一个好处! 很多程序员每天都在为文件名纠结上几个小时,我就是如此!

当你为他自动生成,无论多丑,他都不会纠结! 有选择是一个很可怕的事情,是吧?

技术分享


聊完了代码组织,来聊聊单元测试。

单元测试就是对模块代码的测试,基于单元测试,眼神出了大名鼎鼎的TDD!

TDD全称:测试驱动开发。说简单点,就是:做功能之前,先把单元测试写好,然后一步步补全功能,直到测试通过。

技术分享

TDD应该适合专业化的团队!!不适合一般的屌丝团队.....屌丝团队玩玩单元测试就好了。


你可能和我之前一样,看不起单元测试!都忙成狗了,哪有时间写单元测试??


如果你的时间宝贵,那我更要给你推荐单元测试。当你在web中要测试一个功能,步骤大致分为如下:

1. 编译代码

2. 发布到服务器

3.清空浏览器缓存

4.登陆构造测试数据

5.测试不通过,再来一次!

重复2次,估计你就要日了狗了吧。

技术分享


而你只要搭建好Mock测试,以上步骤够可以节省了,你要做的就是Debug代码!!



本章就到此结束,当你完成了项目管理,设计原则以及开发方法的轻量级,剩下的就是更新部署了。


下一章我们就来讲解更新部署的智能化,让你的平台完成从头到尾的“轻量级”!


敬请期待!


如果您对我的文章感兴趣,请关注我的微信公众号,谢谢。


技术分享




版权声明:本文为博主原创文章,未经博主允许不得转载。

如何搭建轻量级架构-代码组织篇

标签:项目管理   架构   单元测试   

原文地址:http://blog.csdn.net/aric_chen/article/details/47071027

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!