Java 代码库
- 学习Java也有将近3年的时间了,对这门语言的感悟还是蛮多的,其中最深的一种就是,it can do anything,由此可以看出它的强大。平时用写Java代码的时候,大多是功能驱动自己去“写”代码,比如,现在需要一个将图片上传到客户端的函数,就去google“图片上传 Java”,然后找一种能用的方法,贴到自己代码中,这种行为其实并没有什么不对,因为,程序员本来就是懒的,虽然不见得这个函数有多么难,但是你需要去理解一堆复杂难看的Java流、字节API,这会花费你大量的时间,在做项目的时候,我们往往关注的是功能和效率,这种时间消耗是无法容忍的。然而,现在我发现,往往我会在google里面找相同的代码往自己的项目里面放,大多是一些工具类、静态方法,比如加密、解密方法等,我已经不止一次去google这种代码,我已经有点不耐其烦了,因为google也是需要时间的,google需要你的慧眼在一大堆的滥竽充数的博客中找到你所需要的代码,这是需要程序员自己的搜索能力和耐心的。于是,我想到了在实习期间Chen Wang说过的,一个合格的Java程序员需要构建自己的代码库,直到现在才深刻的认识到这个代码库的必要性。
- 有这样一句话,你在做的任何事情,这个世界上一定有人也在做类似的事情。于是,我想到了在google里面”Java 代码库”,,于是我们可以去前几个链接中去搜索寻找我们需要的代码,cp并修改到自己的代码库中来,我们可以将我们建立好的代码库,放在github上来进行维护,当然,我们也可以在github上fork别人的java代码库,从中提取自己需要的代码
- 总之,代码库的建立是一项需要长期积累的工作,它需要我们不定期的添加维护我们认为优秀的代码,现在开个头,在github上新建一个项目,来存储java代码库。
android 模块工具库
- 最近接了个关于android方面的项目,这是自己第一次开发商用型的app,说实话还是有点紧张的,迄今为止做了20多天,感觉感悟还是很多的,尤其是关于android代码的复用性方面。
- 缓存、图片上传、http(异步和同步)、加密解密、sqlitle、IM消息、移动支付,这些每一个功能都可以单独拆分出来作为一个单独的板块来进行开发,如果我们能够对这些模块进行很好的整合,那么一个app的开发就事半功倍了。
- android开发,和java开发及其相似,我们需要做的是一种整合各种零散功能模块、工具、控件的能力,使得这些在一个整体系统中合理的使用,所以,我们也需要去维护我们自己的android开发模块工具库,这个也是需要我们日常的积累的,在平时的项目中吸取经验教训,去挖掘好用的开源工具,比如,做这个项目的时候,我就觉得ASimpleCache这个缓存实现就还不错。
- 总之,软件开发,也是一个日益积累的过程,在积累的过程中,我们才能避免重复造轮子,更加高效的去关注软件开发本身的事情上来。
总结
这阵子感觉很忙碌,一个是android外包项目的事情,然后就是毕设的事情(刚开动),时间还是有点紧张的,这个代码、工具库的事,还是先缓缓,现在只是先开个头,列个计划出来,鼓励自己坚持干下去!