Android 开发高手课
张绍文
前微信高级工程师,Tinker 负责人
52721 人已学习
新⼈⾸单¥59
登录后,你可以任选4讲全文学习
课程目录
已完结/共 62 讲
导读 (1讲)
模块一 高质量开发 (25讲)
Android 开发高手课
15
15
1.0x
00:00/00:00
登录|注册

导读 | 如何打造高质量的应用?

产品质量保证
动态部署
自动化测试结合AI
测试能力提升
敏捷开发
静态分析工具
性能优化
代码优化
耗时分析工具Traceview
开发工具熟练掌握
自我介绍
学习委员
课后作业
实践与学习
监控问题
统一三端
统一管理
灰度和发布阶段
测试阶段
编译CI阶段
开发阶段
总结
移动APM质量平台
应用交付的流程
如何打造高质量的应用?
参考文章

该思维导图由 AI 生成,仅供参考

今年年初,我去上海参加一个移动技术会议,问了很多开发者最近在忙啥。令我非常惊讶的是,大家讲的最多的还是用户体验和应用质量。特别是出海东南亚的同学,面对一堆 512MB 内存的设备、无处不在的弱网络流下了无助的眼泪。
除了内存优化、弱网络优化,想做一款高质量的应用还远远不止这些。一方面,我们面对的环境越来越复杂。过去的 iOS 开发者可能做梦也想不到,现在也要开始适配屏幕和双卡双待了,更不用说 Android 那多如繁星的机型、厂家和系统。如果你的应用也要出海,那么还要面对几十个国家不同的语言、环境。
另一方面,我们的代码跟业务也越来越复杂了。先不说大量“年久失修”的历史代码,业务越来越复杂,如何管理好几十上百个模块?还要面对 React Native、Flutter、TensorFlow 等各种语言跟框架堆积在一起的情况,再加上复杂的环境和庞大的系统,想想做一款高质量的应用真的不容易。

从应用交付的流程说起

既然打造一款高质量的应用那么困难,我们可以先从哪里入手做些什么呢?我的方法是把应用当成一件商品,想象一下商品在流水线生产的过程,那么怎样在每个步骤做好“质检”呢?这就要从应用交付的流程说起。
在我看来,一个应用至少会经过开发、编译 CI、测试、灰度和发布这几个阶段。每个阶段需要关注什么问题呢?
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
  • 深入了解
  • 翻译
    • 英语
    • 中文简体
    • 中文繁体
    • 法语
    • 德语
    • 日语
    • 韩语
    • 俄语
    • 西班牙语
    • 阿拉伯语
  • 解释
  • 总结

移动应用的质量管理对于开发者来说至关重要。本文从应用交付的流程出发,介绍了开发、编译CI、测试、灰度和发布等阶段需要关注的问题,并提出了学习专栏来提升应用交付效率的建议。此外,文章还强调了移动APM质量平台的重要性,强调了统一管理和统一三端的优势,并提到了在学习过程中需要掌握的相关知识。最后,文章强调了虽然移动APM质量平台可以帮助快速发现和定位问题,但最关键的永远是人,而不是系统。作者分享了自己的经验,鼓励读者在工作和实践中多停下来思考,多深入研究一些细节。课后作业环节提供了可供读者操作实践的Sample,并鼓励读者通过实践来加深对知识的理解。此外,作者还邀请了资深开发工程师作为课程的“学习委员”,以帮助读者掌握课程的要点并解决实践中的问题。整体而言,本文涵盖了移动应用开发中的技术特点和重要性,对于读者快速了解移动应用质量管理具有一定的指导意义。

仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《Android 开发高手课》
新⼈⾸单¥59
立即购买
登录 后留言

全部留言(390)

  • 最新
  • 精选
  • 孙鹏飞
    置顶
    大家好,我叫孙鹏飞,是这个专栏的“学习委员”,工作时间快6年,在职业生涯中走了很多的弯路,一直以来大多都靠自己摸索和兴趣,以及或多或少的知识焦虑感,有幸认识很多高手,从中学习到很多东西,其实获得的更多是思考方式和获取信息的来源以及技术盲点,深感自身不足,还在学习中。不善言谈,小开发一枚。希望这门课程可以让大家有所获得。

    作者回复: 谢谢跟辛苦鹏飞了,大家一起努力学习。

    2018-11-29
    302
  • itdream
    开发两年的android 妹子,一直游走在小公司,一个人独立开发,总想着要约束自己规范,做好性能优化,以及更深入的研究底层,但是一个人去做这些的时候,总是做着做着就不了了之了,感觉现在学习太片面,不够深入,希望在接下来的时间,能够提升自己,希望自己更深入的去学习,探究,提高自己能力,加油💪

    作者回复: 加油

    2018-11-29
    71
  • 余涛
    5年Android开发了,感觉有些迷茫。 认真思考下迷茫的原因,主要是对自己的不自信,那又为何不自信呢:积累不多。 平常遇到问题,可能第一时间去百度谷歌搜一番,咦,这种方法也许能解决我现在的问题,往往问题解决了就觉得了事了,很少去深层次的思考问题,总结问题,将它作为自己的一个积累。 另外一个就是很少去主动有计划的学习。即使学习了,也会东学学西学学,这个学不了几天又去学另一个。学习计划不够明确,不能够静下心来。 关注这个专栏,希望自己能养成良好的习惯,提高自己的Android技能,变得更加自信。加油

    作者回复: 优势都是慢慢积累的,所以还是需要比别人多走一步,多思考一些。 希望我们可以通过这个专栏,一起学习

    2018-11-29
    28
  • 安威洋
    工作六年,Android开发从15年3月开始,到现在快四年的时间,二线城市的小公司,中间还有一段时间被拉去坐Javaweb与JS前端,算是3年的Android开发经验吧,现在公司里面只有我一个Android开发人员。 从今年的11月份开始感觉有一种很焦虑的感觉,主要的原因就是小公司里面的技术交流太少,随着移动开发的遇冷,公司也没有扩大移动团队的计划,个人感觉遇到了巨大的瓶颈,同时也倍感孤独与凄凉。 参加这门课程主要的目的是希望能够拓宽自己在移动开发方面的视野,帮助自己突破目前的瓶颈,同时也希望能够找到能够一起交流互相学习的朋友,缓解自己的孤独与凄凉。

    作者回复: 找到志同道合的朋友一起学习效果的确会更好

    2018-11-29
    19
  • 六号先生117
    乱入一枚三年iOS程序猿,可以拓宽眼界和编程的边界。

    作者回复: io、网络、架构这些都是移动开发的基本素养,专栏大概有一半知识可以跨平台

    2018-11-29
    16
  • 周迷奇
    14年销售转行学习安卓开发,从纯做业务的小白一步步成长到带领小团队,逐渐接触到性能优化,厂商适配工作,内存,卡顿,耗电等,平常会看一些技术书籍,持续关注学习技术博客,偶尔自己写博客,工作之余在学习NDK,架构,组件化,热更新等安卓进阶知识,也保持对kotlin flutter AI等新技术关注实践,由于非科班出身,可能以实践解决问题居多,多数时间知其然不知其所以然,较少时间来提升对系统运行原理,通信机制,底层架构,数据结构,算法等知识的系统学习,自己核心竞争力不强,感觉遇到一些瓶颈想突破,能有机会学习大厂大神实操经验倍感珍惜,希望离一线大公司技术能力的差距小一点,希望通过专栏学习到提升自己技术核心的方法,也能增加点跳槽加薪的筹码,能有机会进去像BAT 这样的一线互联网公司最好啦!!给自己加油打气!!!

    作者回复: 非常了不起,有时候我们只是差一个平台和机会

    2018-11-30
    14
  • 小情绪
    工作: 5年多的工作经验,一只从事Android应用开发,平时除了业务迭代,就是自我学习。 学习: 今年跟着罗升阳的博客学习了一遍android源码,在极客时间已学习的有:朱赟的技术管理,java核心技术36讲,硅谷产品实战36讲。正在学习的有:数据结构与算法之美,Android开发高手课。 具体问题: 聊聊前段时间项目中遇到的一个bug:主页面是一个Activity和4个fragment, 使用加载方式一: 使用FragmentTransaction add添加,且在点击的时候用show,hide操作。 使用加载方式二: 前面的方式都没变,但是在每次show,hide之后调用了FragmentManager.executePendingTransactions. 方式一换成方式二之后,在某种场景下,fragment中的View会NullPointerException,因为bug是线上报出来的,虽然是偶发,但是因为用户比较多,所以总量很大,最后不能不将方式修改回去, 虽然问题解决了,但是最终的原因始终没有找到,当然我也找了好几天,试了好几天,源码也看了,也debug了,但始终不知道原因是什么,如果大家有知道的,还望赐教。 困惑: 我的困惑应该跟大部分人都一样,Android应用开发者该掌握那些知识,尤其是方向,因为我们更多的担心不是现在,而是未来。 期望: 希望在这里可以找到一些方向,至少开阔眼界。

    作者回复: 专栏会有两章专门讲到崩溃相关的解决方法,希望对你有帮助。

    2018-11-29
    14
  • 一马行千里
    带着问题来的,我们的应用的用户都是户外作业人员,需要能在后台运行时,不被系统杀掉,还要在后台能稳定运行。 现在不同型号的手机都有专门的设置,包括后台运行、允许高耗电等设置。但是开始这些权限后,系统还是会把应用杀掉。 像这种需求,能否做到后台稳定运行。并且稳定获取地位呢? 感谢!

    作者回复: 在高版本的系统,保活越来越难。如果是用户感知的情况,建议指定前台进程和引导用户加白。 当然程序本身的稳定性和占用的资源也会有关系

    2018-11-29
    10
  • 馨子
    从事Android app开发八年,性别女,目前为一个应用部门leader,出海企业,感觉在性能优化这块有所欠缺,加入是想提升自己,突破瓶颈,也不希望自己成为团队的天花板。

    作者回复: 性能对于东南亚和非洲出海企业很重要

    2018-11-29
    9
  • yongxiang
    报道晚了,之前几个月一直在死磕数据结构与算法,现在终于可以开始这个专栏的学习了。我的经历很曲折,走了很多弯路。 2010年小城市的二本数学相关专业毕业,在老家小城市做跟IT不相关的工作,毕业5年后,2015年才自学转行Android开发。第一份Android开发工作是一个人开发一个p2p金融的app,还记得当时每天加班,11点多下班,回到住处,睡3个小时又起来写代码,虽然幸苦,但也很开心。 后来经大学同学/好朋友介绍,去了他所在的公司,在他手下做开发,但也开启了我的噩梦。这3年多来,一直处在焦虑和自我怀疑、自我否定之中。美其名曰sdk开发,我也傻傻地努力加班,但做的却是对接项目,做外包,做技术客服,核心开发由我同学做,我只能在他们封装的sdk上再加一层java的封装。情绪也奔溃了,想出去面试,但已经没有自信,感觉什么都不会,想学,却一直不知道怎么学,学什么。去年下半年,终于顿悟了一点,一点一点地恢复状态,决定心里害怕什么,就去一步一步解决它。数据结构与算法最不自信,所以坚持学了2个月,终于感觉入了点门,也掌握了一点学习的技巧。现在我再来解决Android开发能力的不自信吧。 希望早日结束这被人降纬打击和压制的日子。祝自已能跑到终点,也祝大家能跑到终点。

    作者回复: 加油,一步一步往前走。在bat也有很多非科班出身的大牛

    2019-02-21
    6
收起评论
显示
设置
留言
99+
收藏
沉浸
阅读
分享
手机端
快捷键
回顶部