一晃Android已经做了四五年了,有读者给我留言问我考学专业的事,有读者留言问我学习编程语言的事,好吧,今天我就给大家介绍一下我的学习方法。
第一年
刚开始接触Android的时候,应该是在毕业论文的时候,那时候对Android还不是很了解,但分配的毕设题目是Android3D 游戏框架与物理引擎分析了。我当时确实有些抓狂,没办法从游戏学起吧。先是买了两本书,然后从学校BT下了不少资料开始研究。记得当时使用的是opengl2.0,所有游戏的操作动画,都在GLSurfaceView里。曾经很大一段时间都入不了门,直到后来找到一个开源案例,直接撸源码,我花了一个月时间把源码全看了一遍(当时对java都不是很熟悉,之前做的C),梳理思路,然后进行修改,在修改的过程中开始测试每次改动产生的影响,就这样一点点摸到一些门道,剩下的就是物理引擎了,其实就是各种向量还有碰撞计算,那些属于数学范畴了,我已经忘得差不多了。
第二年
最有意思的事第二年,我参加工作,刚进入公司,有个写界面的任务,当时我的写法是,在surfaceView里面自己画Button,当时同事都傻眼了,功能确实是实现了,但是竟然这么做。。。幸好遇到的同事都很nice,开始给我讲应用与游戏不是一种写法,给我讲布局文件,组件最基本的概念,然后还是撸了几个demo之后又开始写界面了。在项目中慢慢熟悉起来,反而游戏的写法逐渐忘了。记得当时改造了网上一个很火的库TowWayGridView就是可以上下左右滑动的GridView,然后我根据需求,把这个库的源码改了,当时变动还挺大,而且还要求有不同的动画效果,总之那是一次很成功的项目,在这个项目中掌握的onMeasure,onLayout的原理,后来开始自己撸一些界面组件。
第三年
第三年开始我似乎不在写界面了,开始写的是各种逻辑,记得那一年看的最多的是设计模式,在写代码的时候,生搬硬套,很简单的一个功能,也想套个设计模式,就是为了嘚瑟,虽然这样很不好,但是各种模式的使用方法却记得很清楚,为以后写项目打下了基础。接着就开始回归Java语法,算法,数据结构等东西。越来越少的去做界面了,不过现在看到网上开源的一些好的东西,还是喜欢下载下来,学学人家的写法,思路,想想如何能应用到自己的项目中。
总结
其实写了这么多,我总结一下思路,其实我的方法很笨就是项目驱动,然后撸源码看思路,也许有些基础好的朋友,可以直接上手,那可以直接忽略我写的。
之前总结下来的学习源码和视频会逐渐分享给大家,对于刚刚入门的朋友建议关注我的公众号,发送android获取android入门教学视频,发送java获取java进阶视频。
同时我还会定期整理之前攒下的源码(很多我自己也没看过),学习资料,分享给大家:
当然还有一些我自己写的文章和开源库:
或者加群,一起聊聊天:
如果准备好了,来,扫码吧!加入我们吧!