8ca9204a9c5da4118377067637149833
2017年鸡年年终总结

前言

翻回去年写的年终总结,感觉这一年过得特别快,事情多,技术稳步上升,但没有太大突破。事情多,不仅仅指技术上,投资理财方面,健康问题,,知识面等等。


技术

2017年值得说一下的,主要是以下三个方面:

1.单元测试
2.业务拆分
3.工作经验

单元测试

笔者在2016年已经对单元测试有个总体把握,在项目中也普及了单元测试。那么,2017年笔者在优化单元测试体验下功夫。

笔者在5月、7月分别开源了 SPTestFrameworkYuiHatano。SPTestFramework应用于SharedPreference单元测试,YuiHatano应用于更广泛的DAO单元测试(也引用了SharedPreference),主要是数据库。

YuiHatano比robolectirc的优势,是!YuiHatano配置简单,上手容易,运行快,还能输出sql语句;robolectirc配置繁琐,上手难,运行慢。目前YuiHatano在悦跑圈项目广泛使用。

SharePreference单元测试超级简单!
推荐轻量级Android DAO单元测试框架——YuiHatano

业务拆分

2016年底悦跑圈实现了业务拆分,2017年就是不断实践、优化。刚实现业务拆分,并且单业务运行,配置还是比较麻烦。后来慢慢把通用的gradle配置拆分出来复用,并且允许本地动态添加、修改gradle配置,而且不影响其他开发人员。

除了笔者,几个安卓同事还是较少用这种方式。原因是新建一个业务application麻烦,还有不太熟悉配置,还有一些搞不定的bug。同时,也要看开发的业务复杂度,如果页面多,流程复杂,单业务开发有很多优点;如果业务简单,单业务优势就不明显了。

悦跑圈Android单业务开发,提高编译效率15倍

代码生成

开发团队使用RAP做api文档管理,于是笔者根据RAP页面格式,做了一个java工程,把RAP文档(复制到java工程)自动转为Android的java代码。

这么做好处非常大,除了不用手写java代码外,还自动把api参数、返回值的说明,自动生成为java注释。当过一段时间再看回几个月前的代码,一些类的参数、方法说明清晰,自然阅读起来更流畅。

工作经验

自从用MVP及单元测试后,对工作量评估的把握有比较大的提升。例如,新功能开发,可以把工作量分解为 api代码、api单元测试、DAO代码、DAO单元测试、presenter代码、presenter单元测试、UI交互逻辑、重构组件等任务。评估时间时,只需对每个任务时间做评估,最后加起来,再适当加上几天调试时间、修bug时间即可。

当然需求总会在开发时改。除了产品部门提出的改动或者UI交互优化(例如突然说做个动画),更主要是开发时会发现产品逻辑问题,这时候不得不改。

小专栏

之前受小专栏邀请,给《Android 面试指南》写稿,同时认识了一些业界大佬。大佬们的文章都好有质量,想跳槽的同学,不要吝惜这100元的订阅费^_^

不足

今年还是没有怎么研究插件化。就是稍微demo了一下阿里的altas,觉得配置方面比较麻烦,文档说的不太直观,而且要对项目改动蛮多。


运动、健康

今年也是keep住运动。不幸7月份阑尾炎,做了个手术。最近又肠胃炎......需要一段时间调理。


投资理财

我是从2015股灾前开始玩基金,玩了2个月就撤了,逃过股灾;2016年初重回基金,2016年底开始做股票。现在持有股票基金5:6左右。

2017年有两个教训:1.投量化基金;2.重仓某只股。

股票

2017年股票收益还是不错的,如果算上场内基金的话,有40%以上。至少一半的收益,归功于重仓格力、上汽集团等几只蓝筹。上半年收益挺好,但年中有2、3个月因为身体原因,没精力留意市场,刚好那段时间某些股票表现不佳,所以几乎没有收益。

刚才说到教训,就是重仓万华化学。万华在上半年挺牛逼的,我上车比较迟,赚了后加了仓位,后来又跌回去(还是有正收益,只是少)。后来朋友说十九大,就把总体仓位砍半,后来万华就停牌了,当时万华已经减仓到没多少了。不知道万华是不是周期股,可以确定的是,我不熟悉化工行业,不应该做化工股。

十九大之后,我重新思考了大半年的投资思路,陆续把资金投到指数基金,上证50、沪深300等。

top Created with Sketch.