Leisure项目开发实现技术调研
项目开发宗旨囊括万千技术,时时更新新动态
很高兴再次接着写这篇日志,这段时间一方面要准备面试,另外还要把自己第一个(集14个项目精华我相信以后应该还会更多)从技术调研到设计,自动化开发,自动化测试,自动化部署,开源Leisure项目的开发进行下去,说下技术这段时间都干吗了吧:
1.版本控制工具的如何选择?
以前都是用SVN,这次选用Git,原因嘛主要是两点1.分布式版本控制,2.Git存放阅读方便,利于开源人士学习,当然其他原因还有很多,也把我自己看见比较好的说明展现给大家,参考文稿之一来源:http://blog.csdn.net/yihui8/article/details/6445847
2.开源采用什么协议?
这是我第一次关注的,主要从是否可以拥有著作权,是否可以商业化,所以选择了BSD开源协议,文稿之一来源:http://blog.csdn.net/techbirds_bao/article/details/8785413
3.为什么要选择Maven管理项目构建?
提到这个就必须说下以前项目了,在没有用Maven进行项目构建时,公司有10几个项目需要维护,在开发中jar的管理都是直接放在lib文件下,导致一些项目jar非常臃肿,并且很难把哪些jar包进行有效的管理,不利于新项目的开发,同时,由于项目到后期都是会很大的,涉及到分组开发,我们一直都提倡MVC开发模式,那么在功能块之间是否也可以进行分功能模块的形式开发,当然是可以的,但是如何管理就是一个问题,在这个问题上面我也耗费的心思,因为是整合项目必然就必须考虑这些,毛爷爷教育我们没有实践就没有发言权,所以自己也亲自操刀呵呵,正如上面提到的都是操刀证明是完美的呵呵,不熟悉的朋友,可以看下《Maven实战》,曾经看过比较好的文章:
1.http://www.iteye.com/topic/973166
2.http://www.ibm.com/developerworks/cn/java/j-5things13/,呵呵没有帮人打广告哈哈,当然方法很多,其中最好的是看官方文档,这个是所有新事务学习最好的老师,大家不妨用下下载这个看下,我已经把它分支到我的Git上面了,https://github.com/nero520/springside4.git。
4.如何保证代码的规范性,可读性?
我相信想要最懒的开发人员才是最好的开发人员,所以针对代码规范检测,我使用Checkstyle+PMD+Findbugs,这些都是可以集成到Maven的,有不错的效果,对于工具不熟悉的同学,可以看下官方文档,资料都挺多的,相信大家都知道度娘和谷姐。
5.如何对Maven项目进行单元测试?
我们都知道测试是很麻烦的一件事,但是却可以给我们开发着获取信心的,我是用的是Junit4+TestNG+Dbunit
6.如何对Maven项目进行持续集成?
参考文档:1.http://wenku.baidu.com/view/ac45424af7ec4afe04a1df8d.html
2.http://wenku.baidu.com/view/74174d6c561252d381eb6e00.html
7.如何进行自动化代码生成?
参考文档:1.MyBatis Generator 来源:http://maimode.iteye.com/blog/1539983/
2.Rapid_generator 来源:http://code.google.com/p/rapid-framework/wiki/rapid_generator
写到这里,继续整合代码呵呵,以前用设计模式和Uml工具比较少,我的系统是Ubuntun12.04所以用Dia设计,系统开发环境Tomcat7.0+Mysql5.5.32+Jdk1.7+Eclipse4.3+Maven3.1,框架SSH,Mybatis,MongoDb,Hbase,Memcache,Hadoop,因为是分模块且为以后扩展,系统将会包括很多方面,目前初步整合包括工具类包,短信,邮箱,加密解密,Excel,Pdf,图像,解压缩,XSS攻击处理,跨域处理,支付,RPC通信,工作流,报表,图表,权限,将会有Demo演示在这次的项目中将会不断加强呵呵