现在Android开发高阶需要掌握哪些知识呢?

论坛 期权论坛 期权     
热心用户   2019-5-18 02:35   3141   3
现在Android开发高阶需要掌握哪些知识呢?
分享到 :
0 人收藏

3 个回复

倒序浏览
2#
zhihu用户  16级独孤 | 2019-5-18 02:35:09
我有一个想法, 可能有点争议性吧, 就是应用层开发的同学, 其实不用过份关注这些底层的东西. 不是说底层的东西不重要, 重要, 但你得用得上才重要. 你要是开发插件化或是想给apk中加点渠道信息等等, 那了解dex结构很有用; 但要是你不是, 那了解dex结构就没太大必要. 所以我的思路是: 先尽量了解应用层app的开发, 开发涉及到了底层的东西再去研究. 否则app开发的东西就已经足够研究多年仍觉得了解得不多
底层我自己了解不深. 但作为应用层开发, 其实要了解的东西很多, 多到你每天都在学习都不够. 我就列出几项仅供大家参考吧.
  • [UI]  如何绘制自定义View
  • [UI]  如何做漂亮的动画
  • [UI]  如何根据手势做漂亮的动画
  • [架构] 哪些架构比较好, 为什么好; (自己也要去思考, "好"的标准是什么 )
  • [架构] 思考现有代码中哪些地方不好, 我们可以有怎么优化它. 优化它后能提升什么东西.
  • [架构] 思考现有代码中是不是有重复代码. 如何优化它
  • [架构] 思考现有代码中是不是有大量if-else链, 如何优化它
  • [测试] 如何做好单元测试? (比如如何测试单例, 如何Mock复杂的类, 怎么的代码是好测试的代码
  • [测试] 如何做好集成测试?
  • [测试] 如何做好自动化测试?
  • [性能] 关注某一块性能, 就要先了解如何能得知"如何测试这一块的性能好还是不好"
  • [性能] 在上面的基础上, 找资料去优化性能  (这一块可能就用得上一些底层的东西, 我建议研究)
  • [工具] 打包工具熟悉吗,? 具体到Android上, 我是从ant, maven, gradle一路走过来的. Gradle现在是主流了. 那就有必要了解, 如何定制一些特定需求的打包, 如打入渠道信息, 如apk名字要定制; 甚至更高级的特性, 如何用来帮助我们提升开发效率; ....
  • [工具] 思考现有项目中, 是不是有比较麻烦的地方. 我能自己写个小工具来帮助项目提升工作效率吗?
  • [他山之石] 学习一些优秀的开源库, 这会帮助到你进阶
  • [新版本] 每次大版本更新, 都有变动. 我们可能要被迫修改些东西, 有时甚至以前的小技巧再也没用了, 现在要重新写.
  • [安全] 现在的应用安全吗? 黑客可以怎么攻击它? 我要怎么防范它. 这一块的东西, 根据我的观察, 是大多数Android应用开发最欠缺的.
  • [英文] 提升些英文, 看英文资料会有帮助
  • ....
真的, 要学的东西太多太多了. 我一个2011年就开始做Android的开发都觉得自己学得还不够. 说出我的想法, 和大家讨论,  和大家共勉.
另注: 上面的都是针对应用层app开发. 对于Android底层开发就没这么适用了.
3#
zhihu用户  16级独孤 | 2019-5-18 02:35:10
emmm
不好意思
我是个菜狗,为什么会邀请到我。
这特么的
4#
zhihu用户  16级独孤 | 2019-5-18 02:35:11
目前做android开发,大体分为三个方向:应用、framework、驱动,目前不管在哪个方向上发展,想要成为高级开发人员,对另外两个方向的了解都是必不可少的,越是全面地理解android的整个架构,越有利于本方向的提高
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:64547
帖子:12910
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP