正确阅读安卓代码的姿势
随着移动互联网的发展,安卓市场发展前景是一片光明,很多的新手站长纷纷加入到安卓开发之中,那么既然从事安卓开发,必不可少的就是选择安卓开发的知识,其中较基本的就是代码阅读,那么如何正确的阅读安卓代码?对此,天津app开发给出如下看法:
一、读码原因
这就如同现如今很多的牛逼的作家一样,在未成名之前一定会阅读大量的优秀作品,通过日积月累从而积累大量的写作技巧,久而久之领悟到很多的经验,较终创造出优秀的。程序员也是一样,同样需要阅读大量的程序和产品,经过不断阅读,不断积累实践经验,慢慢的自然也会码出好的程序来,更重要的是可以提高自己编码能力,总结出属于自己的技巧。
其实,经常阅读代码,不仅可以学到很多编码方式和技巧,还可以提高自身把握大规模源码的能力,毕竟大型程序往往参与的人都很多的,经历过N个版本、无数Bug的修正和功能完善后才较终成形。而且源码读的越多,分析问题的想法也会更加的全面,所以,那些纠结前辈或老师让自己整日读码的小白,要摆正心态,不要再钻牛角尖喽!
二、读码的意义
天津app开发始终都觉得,读码的意义在于学习优秀的套路,而这里所谓的套路涵盖的范围很广,大到构架设计,小到可取的命名风格,以及设计模式、实现某种功能、使用某种数据等等。通常来说,所谓的高手,其实就是比大部分人更早更快的掌握套路并熟练运用。
自己埋头苦学,确实也可以得到一定的进步和成长,但总会遇到你解决不了的场景,而这种让你为难的场景,可能很多的老码农们也许早就遇到过,并给出了优雅的解决方案。那么在阅读优秀源码时,讲这些场景与对应的方案收入囊中,或只是在脑中留下一个印象也好,以便在需要的时,能够在你的武器库中掏出一把称手的家伙。
三、如何正确读码
A、关于SDK自带的源码和隐藏API
Android SDK自带的Source源码包很小,不包括所有的Android Framework的源码,仅提供给应用开发参考用,一些比较少用的系统类的源码并没有给出,这是因为这些方法或者类是被Android SDK隐藏的,出于安全或者某些原因,这些API不能暴露给应用层的开发者,所以编译完成的android.jar包里会把这些API隐藏掉。
通常情况,我们的Android项目是依赖android.jar的,查看源码的时,IDE会自动去android.jar找对应的API,这样自然是找不到的。当然,这些API在ROM中是实际存在的,有些开发者发现了一些可以修改系统行为的隐藏API,在应用层通过反射的方式强行调用这些API执行系统功能,这种手段也是一种HACK。
B、Google的AOSP项目
当你需要的源码在Android SDK Source中找不到时,就有必要去AOSP(Android Open Source Project)项目里面找了。但AOSP项目包括整个Android所有开源的东西,有点太庞大了,对于一般开发者来说,只需要接触Framework层次的东西就可以了,这里包括了base、build-tools、support包甚至Volley项目的源码。
四、读码建议
的确,读码可以提升编程人员的编码能力,但是学习阶段也不能毫无目的,这种过目即忘,反而还会让你感觉很枯燥很乏味,所以,要根据当前的自身水平去制定有效的学习方法,因为有些时候自身的基础并不扎实的话去读源码其实不会有什么能力提升,可能还会让你更困惑。
温馨提示:读码一定要选择与自身学习或工作兴趣相关的代码去读,这样才能更切身的体会到读码带给你的水平提升。如果学习的知识点有官方文档,一定要先看文档再看源码。并且尽量养成带着疑问去看源码,同时在看源码的过程中,尽量的边看边实践,俗话说,好记性不如烂笔头,把实践中感觉比较重要的知识点再记下来加以巩固,这样你的知识掌握的会更可靠。
相关阅读推荐
安卓应用下载分析
昨天天津app开发——文率科技的小编分析了IOS的《APP STORE应用下载...
为什么Android开发最抢手?
近几年,移动互联网开发行业最火爆的就是安卓开发,它目前在市场中拥有非常高的占有率...
详解:谷歌Android Q新特性
谷歌在美国当地时间3月13日正式式推送了Android Q的首个Beta版本,新...
不要频繁卸载手机软件,尤其是安卓用户!
移动互联网的快速发展,app应用的不断普及,在各个方面都给人们带来了或多或少的便...
最新资讯
Android APP开发资讯文章推荐阅读
浅谈目前Android app开发所存在的优缺点
移动互联网的发展,促使app应用发展走向顶峰,目前...
为什么Android开发最抢手?
近几年,移动互联网开发行业最火爆的就是安卓开发,它...
不要频繁卸载手机软件,尤其是安卓用户!
移动互联网的快速发展,app应用的不断普及,在各个...
详解:谷歌Android Q新特性
谷歌在美国当地时间3月13日正式式推送了Andro...
高级Android开发进阶需掌握技术
Android开发已经凉凉了吗?最近这几年,总有人...
Android APP开发中社交媒体营销有哪些优点
短短几年的发展,社交媒体已经发展成为企业可用的最强...
安卓开发为什么选择用Java语言
最近几年,安卓应用开发一直处于长期增长的状态,安卓...
安卓应用下载分析
昨天天津app开发——文率科技的小编分析了IOS的...
APP开发需要注意的五大要点
移动互联网的发展使得APP在我们生活中扮演的作用越...
有效提升工作效率的App应用推荐
很多的人都认为在这个世界上存在有很多不公平的事情,...