Android开发高手课
张绍文
前微信高级工程师,Tinker负责人
立即订阅
12609 人已学习
课程目录
已完结 61 讲
0/4登录后,你可以任选4讲全文学习。
开篇词 (1讲)
开篇词 | 焦虑的移动开发者该如何破局?
免费
导读 (1讲)
导读 | 如何打造高质量的应用?
模块一 高质量开发 (25讲)
01 | 崩溃优化(上):关于“崩溃”那些事儿
02 | 崩溃优化(下):应用崩溃了,你应该如何去分析?
03 | 内存优化(上):4GB内存时代,再谈内存优化
04 | 内存优化(下):内存优化这件事,应该从哪里着手?
05 | 卡顿优化(上):你要掌握的卡顿分析方法
06 | 卡顿优化(下):如何监控应用卡顿?
06补充篇 | 卡顿优化:卡顿现场与卡顿分析
07 | 启动优化(上):从启动过程看启动速度优化
08 | 启动优化(下):优化启动速度的进阶方法
09 | I/O优化(上):开发工程师必备的I/O优化知识
10 | I/O优化(中):不同I/O方式的使用场景是什么?
11 | I/O优化(下):如何监控线上I/O操作?
12 | 存储优化(上):常见的数据存储方法有哪些?
13 | 存储优化(中):如何优化数据存储?
14 | 存储优化(下):数据库SQLite的使用和优化
15 | 网络优化(上):移动开发工程师必备的网络优化知识
16 | 网络优化(中):复杂多变的移动网络该如何优化?
17 | 网络优化(下):大数据下网络该如何监控?
18 | 耗电优化(上):从电量优化的演进看耗电分析
19 | 耗电优化(下):耗电的优化方法与线上监控
20 | UI 优化(上):UI 渲染的几个关键概念
21 | UI 优化(下):如何优化 UI 渲染?
22 | 包体积优化(上):如何减少安装包大小?
23 | 包体积优化(下):资源优化的进阶实践
24 | 想成为Android高手,你需要先搞定这三个问题
模块二 高效开发 (9讲)
25 | 如何提升组织与个人的研发效能?
26 | 关于编译,你需要了解什么?
27 | 编译插桩的三种方法:AspectJ、ASM、ReDex
28 | 大数据与AI,如何高效地测试?
29 | 从每月到每天,如何给版本发布提速?
30 | 数据评估(上):如何实现高可用的上报组件?
31 | 数据评估(下):什么是大数据平台?
32 | 线上疑难问题该如何排查和跟踪?
33 | 做一名有高度的移动开发工程师
模块三 架构演进 (9讲)
34 | 聊聊重构:优秀的架构都是演进而来的
35 | Native Hook 技术,天使还是魔鬼?
36 | 跨平台开发的现状与应用
37 | 移动开发新大陆:工作三年半,移动开发转型手游开发
38 | 移动开发新大陆:Android音视频开发
39 | 移动开发新大陆: 边缘智能计算的趋势
40 | 动态化实践,如何选择适合自己的方案?
41 | 聊聊Flutter,面对层出不穷的新技术该如何跟进?
42 | Android开发高手课学习心得
练习Sample跑起来 (8讲)
练习Sample跑起来 | 热点问题答疑第1期
练习Sample跑起来 | 热点问题答疑第2期
练习Sample跑起来 | 热点问题答疑第3期
练习Sample跑起来 | 热点问题答疑第4期
练习Sample跑起来 | ASM插桩强化练习
练习Sample跑起来 | 唯鹿同学的练习手记 第1辑
练习Sample跑起来 | 唯鹿同学的练习手记 第2辑
练习Sample跑起来 | 唯鹿同学的练习手记 第3辑
特别放送 (7讲)
Android JVM TI机制详解(内含福利彩蛋)
专栏学得苦?可能是方法没找对
专栏学得苦?可能你还需要一份配套学习书单
Native下如何获取调用栈?
聊聊Framework的学习方法
Android工程师的“面试指南”
程序员修炼之路 | 设计能力的提升途径
结束语 (1讲)
结束语 | 移动开发的今天和明天
Android开发高手课
登录|注册

33 | 做一名有高度的移动开发工程师

张绍文 2019-03-16
专栏更新至今,不知不觉第二模块“高效开发”也已经更新完了。稳定性、内存、卡顿、I/O、网络,“高质量开发”模块打通了从应用层、Android 系统层、Linux 内核层再到硬件层的优化路径,帮助我们打通“任督二脉”,成为一名 Android 开发高手。
所谓“高效开发”,可以给我们带来了什么呢?移动互联网发展到今天,所有人都说“提质增效”,但是团队效能不是靠我们封装一个工具类或者组件,给其他人低成本复用就够了。持续交付平台、测试平台、发布平台、数据平台、网络平台…我希望你可以跳出客户端的限制,去思考整个产品的研发流程有哪些痛点,不同团队的协作有哪些优化空间,尝试去提升产品的质量和团队的效率。
我们需要的是多想一步,哪怕只是多思考一小步,对自身的成长可能就价值巨大。想要成为一名全面的“开发高手”,不仅要具备系统性解决应用性能和架构问题的攻坚能力,也要有从全局俯视体系和流程的思维能力。这就是我在“高效开发”里希望带给你的思考,希望你可以成为一名“站在高处”的移动开发工程师。

成为有高度的移动开发工程师

在微信的时候,我非常推崇 T 型技术人才理论,所谓的“T”无非就是横向和纵向两个维度。纵向解决的是深度问题,横向解决的是广度问题。
取消
完成
0/1000字
划线
笔记
复制
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
该试读文章来自付费专栏《Android开发高手课》,如需阅读全部文章,
请订阅文章所属专栏。
立即订阅
登录 后留言

精选留言(8)

  • 极客米
    今年上半年的OKR之一是深入学习《Android开发高手课》🤦‍♀️

    作者回复: OKR非常不错

    2019-03-18
    5
  • 大土豆
    不能同意更多,我已经分享你的专栏第三次了😄,本人89年生人,呆过10亿+美元市值的二线互联网公司,现在在微信相关领域参与创业,负责可能是东半球最好的第三方微信客户端的开发(因为涉及到xposed相关生态,你懂的😂,不能说太多),自认为技术还行,去年面试了QQ音乐高级工程师,面试官第一个问题就是Binder机制,从头到尾理一遍,不幸被淘汰了😓,订阅这个专栏,涨了不少见识,原来微信是这么玩的,原来研究的这么深入了。
    2019-03-16
    5
  • DebugCat
    感谢老大解惑,马上也面临3年的节点,在组内的确感觉业务开发也能游刃有余,广度上也还行,但很少静下心来去钻研...也很少主动和外部环境交流,希望今年能“走出去”,摆脱“自嗨”,正视差距。加油💪!
    2019-03-16
    1
  • DebugCat
    回头重来一遍,感慨颇多
    2019-08-15
  • Dimple
    这篇文章,提升了我的认知。所谓客户端开发,只是一种技术层面上的定义,其实客户端开发,所要掌握的,并非仅仅只客户端,还需要有统筹整个系统架构的能力,不然无论从技术的深度还是广度上来说,都是不够的。
    2019-07-13
  • Halohoop
    听君一席话胜吃十年饭。
    2019-03-16
  • X
    请问张老师Systrace在Windows上是否不支持,在Mac上可以用,但换Windows就报错,google一番好像说是known issue!

    作者回复: 已经好久没有用过windows了,不过按理肯定是支持的

    2019-03-16
  • johnson
    张老师,持续交付平台和发布平台你这里的定义有什么区别?我的理解是差不多的东西。

    作者回复: 持续交付这个概念有点大。这里专指代码管理,编译ci那部分,而且发布平台还包括资源发布abtest那些。

    不过把后者合并到前者也是可以的,这里主要是针对前面的章节内容来回顾

    2019-03-16
收起评论
8
返回
顶部