Android三年,如今写代码,真心没什么很大的兴趣,天天都是优化代码,优化框架,技术支持。很是枯燥乏味。git
一个项目作了大半年,才作了1/4,光src就有3M了。对这种大型app,我表示很无奈。何时才能到个头。github
不过感谢个人line manager,让我专心作架构,还有我老大给予我技术支持。算法
写代码的时候三要素:Stable,Flexible,Readable数据库
如今我搭个小型app的框架,大概3小时(复制,粘贴)api
1.HTTP框架,用本身的,架构
2.ActionBarSherlock ,集成actionbar,我仍是比较喜欢4.0风格,如今作的app都遵照标准的4.0app
3.重写ActionBar Style , 更换主题样式。框架
4.图片lib(Android-Universal-Image-Loader),最近找了个不错的。ide
5.下拉刷新,改的开源的,增长下拉和上拉的区分回调,连接不记得了。我博客里有。工具
6.瀑布流,最近也碰到的牛x的。PinterestLikeAdapterView 不过代码我也改过了,在onscroll里加载更多,回调。发现下拉刷新的方式都是同样的。。。
7.数据库,本身写的框架太大了,基本手写。ormlite没试过,db4o,perst过小众,不怎么灵活。
8.BaseActivty,BaseFragment,BaseFragmentActivity. 不少时候有基类是很是好的事,逻辑都在基类里写好,子类只要改下UI布局就行了。
9.工具类。
10.复制粘贴,一个项目搭好了。
我喜欢把UI和逻辑拆开,若是拆不开,要么弃用,要么重写。否则之后维护没人能看懂,可别提改bug了。
无论team有多少人,一开始写代码尽可能写伪代码(//TODO),把总体逻辑写完,TODO的地方慢慢加上,一个Activity就写完了。并且若是不作了,或者让别人来作,能很快顺着你的思路继续下去。若是你有很好的画流程图的习惯。把它们变成TODO试试。你会发现代码写起来很轻松。把写代码当成一种享受。当我看到别人在Activity有一堆算法逻辑的时候,简直是噩梦。若是team都能按照这个标准,效率至少提升50%。
对于新手来讲,借鉴别人的sourcecode不是越多越好,成天有人问,这个项目的那个方法怎么用。你连看懂的资质都没有,到时候出bug了,谁来帮你fix。再者需求不是生搬硬套,别人的源码拿来还要改的,那么怎么改?建议好好分析一个项目,本身再试着写个简单的libary。你就明白怎么使用别人的框架,并且还会修改。框架自己就是为了更简化开发,因此很灵活,考虑的情景也不少。看明白一个框架,你的逻辑能力会变强,本身试着写个小框架哪怕是个小自定义view,动手能力也会变强。固然,若是简单基础知识都不理解的话,建议仍是一步步来。
当你在写代码时,调用api,或者别人的框架,首先先想一想你要什么样的功能,对方应该要提供给你什么功能,这个方法会叫什么样的名字,多YY,这样你会很惊喜的发现,它们确实有这样的方法。若是没有,本身加,或者换个思路。这样YY多了,你也会在写代码的时候想提供什么样的方法给外部。这样良性循环,写代码就真的是很容易的事情了。
当你成为team里的核心人员,如何去把控整个项目,梳理逻辑和框架,就须要平时多YY,多画流程图,多站在非技术的角度看整个项目,很难说有需求是没法实现的,也不能由于需求频繁改动而去抗拒。因此多想一想在技术以外你还能为这个项目贡献什么。idea,沟通,协做。这样你在team扮演的角色愈来愈重要。升职,转行,随你。
最近没啥技术能够分享的,只能写写心得,仅供参考,能够交流,但真正问我什么问题怎么解决,我可能回答不了。术业有专攻,不是全部我都能解答,也不是全部都非得问他人才能有答案。