Android 开发周报:CM 7.1 体验版发布、Buck 构建工程实战

  • 郭亮

2016 年 11 月 30 日

话题:移动Android语言 & 开发架构

  • 《Redex 初探与 Interdex:Andorid 冷启动优化》:早在去年 10 月份,facebook 就发布了介绍 redex 的文章,这个据说可以直接对 apk 做处理,既提高启动性能,又可减少安装包的利器让安卓开发者们都心动不已。直到今年 4 月,redex 终于开源了,作者第一时间对 redex 做了研究。虽然由于坑多,最终没有接入到项目构建中,但受 Interdex 启发,在应用冷启动速度优化方面有了新的收获。

  • 《Kotlin 如何成为我们 Android 开发的主要语言》:Kotlin 是一个基于 JVM 的新的编程语言,由 JetBrains 开发。JetBrains,作为目前广受欢迎的 Java IDE IntelliJ 的提供商,在 Apache 许可下已经开源其 Kotlin 编程语言。与 Java 相比,Kotlin 的语法更简洁、更具表达性,而且提供了更多的特性,比如,高阶函数、操作符重载、字符串模板。它与 Java 高度可互操作,可以同时用在一个项目中。

  • 《使用 Buck 构建 Android 工程》:Buck 构建工具,其实早已不是什么新奇的事物,它是一款由 Facebook 开发、维护并开源的性能强大的构建工具。不仅在 Facebook 的全系列产品中广泛应用,而且在国内的微信团队也有使用。其构建的目标代码相当广泛,且对 Android 工程有所优化,核心思想是多任务并发的构建策略,充分发挥多核优势,Buck 可以极大的加快 Android 工程全量构建的速度,是目前 Android 全量构建策略中的不二选择。

  • 《微信 Mars:客户端跨平台组件的开发经验》:Mars 是微信官方的终端基础组件,是一个使用 C++ 编写的业务性无关,平台性无关的基础组件。目前已接入微信 Android、iOS、Mac、Windows、WP 等客户端。现正在筹备开源中。本文详细介绍了微信 Mars 跨平台组件开发经验。

  • 《如何构建 Android MVVM 应用框架》:说到 Android MVVM,相信大家都会想到 Google 2015 年推出的 DataBinding 框架。然而两者的概念是不一样的,不能混为一谈。MVVM 是一种架构模式,而 DataBinding 是一个实现数据和 UI 绑定的框架,是构建 MVVM 模式的一个工具。那么在 Android 中是如何通过 DataBinding 去构建 MVVM 的应用框架的?View、ViewModel、Model 每一层的职责如何?它们之间联系怎样、分工如何、代码应该如何设计?本文给出了答案。

  • 《酷狗 Android App 插件化实施过程》:很多大型的项目实现插件化,在这个调整的过程中对代码结构,调用逻辑等等的修改肯定是有迁移成本的。怎么保证这个改动最少,酷狗团队从打包脚本上下手在保证传统的项目结构和逻辑调用不改变的情况下实现模块插件化。让插件化先跑起来,在实现之后再让各个业务小组针对插件化的建议慢慢的完善和封装插件和宿主之间的协议和约定。本文详细介绍了酷狗 Android 客户端的插件化之路。

  • 《Writing-Better-Adapters 译文及示例》:对于 Android 开发者来说,实现 Adapter 是最频繁的工作之一。Adapter 是所有列表的基本,而列表也是很多 App 的基本组成。编写一个列表控件的方法大多数时间都是一样的:用一个绑定了 Adapter 的 View 来展示数据。然而一直这样会让我们对自己编写的代码变得盲目或者说我们一直在重复创造低级代码。阅读文章,看看作者是如何提高 Adapter 代码质量的。

  • 《Android 开发命令行完全攻略》:命令行几乎是每一个开发者都会使用到的工具,很多是开发者甚至是命令行控,恨不得所有操作都能通过命令行来完成。除了显得很酷之外,命令行的使用能够提高我们的开发效率,因为相比通过鼠标点击一系列的菜单选项,使用键盘输入几个字符并点击 TAB 健显然会快很多。那么 Android 开发可以用命令行搞定吗?本文给出了很好的解决方案。

  • 移动Android语言 & 开发架构