Skip to content

Commit

Permalink
Create 平安金融科技移动技术周报(第十五期).md
Browse files Browse the repository at this point in the history
  • Loading branch information
ASCE1885 committed Apr 21, 2016
1 parent a6cf620 commit 7df60d5
Showing 1 changed file with 89 additions and 0 deletions.
89 changes: 89 additions & 0 deletions 平安金融科技移动技术周报(第十五期).md
@@ -0,0 +1,89 @@
# [平安金融科技移动技术周报](https://github.com/PaicHyperionDev/MobileDevWeekly)(第十五期)

> @author ASCE1885的 [Github](https://github.com/ASCE1885) [简书](http://www.jianshu.com/users/4ef984470da8/latest_articles) [微博](http://weibo.com/asce885/profile?rightmod=1&wvr=6&mod=personinfo) [CSDN](http://blog.csdn.net/asce1885) [知乎](https://www.zhihu.com/people/asce1885)
[外网链接](http://paichyperiondev.github.io/MobileDevWeekly/) [壹翎阁论坛链接](http://139.196.14.76/t/topic/275/1)

> **本期导读**:本期原创部分带来关于 Redex 的简介,虽然目前还不成熟稳定,但可以持续关注!Android 篇重点关注进程保活的介绍,很详尽;iOS 篇带来一篇系统重构实践,个中思想有借鉴意义;React Native 开源一周年,FaceBook F8 会议推出基于 React Native 的 F8 APP 以及 对应的开发指南,可以作为开发模版进行学习。开源方面,还可以关注一些 Google 推出的 agera,一个类似于 Rxjava 的函数库,或许在不久的将来,你能够在 Support Library 中见到它。
## 原创专题

#### 1)[基于 Facebook Redex 实现 Android APK 的压缩和优化](http://mp.weixin.qq.com/s?__biz=MzAwMTYwNzE2Mg==&mid=2651036594&idx=1&sn=b276c0f76cea713e5d568ab51e3f7f13&scene=0#wechat_redirect) @ASCE1885(应用架构组)

最近 Facebook 开源了一个名为 Redex[1] 的工具包,专门用于 Android 字节码的优化,经过 Redex 转换后的 APK,体积变得更小,运行速度变得更快。Redex 基于管道的方式来优化 Android 的 .dex 文件,一个源 .dex 文件通过管道进行一系列的自定义转换后,将得到一个优化的 .dex 文件。接下来将带大家简单快速的了解 Redex 是什么,以及它的基本原理和使用方法。


## Android开发

#### 1)[关于 Android 进程保活,你所需要知道的一切](http://www.jianshu.com/p/63aafe3c12af#)

关于 Android 平台的进程保活这一块,想必是所有 Android 开发者瞩目的内容之一。你到网上搜 Android 进程保活,可以搜出各种各样神乎其技的做法,绝大多数都是极其不靠谱。前段时间,Github还出现了一个很火的“黑科技”进程保活库,声称可以做到进程永生不死。

#### 2)[Android 单元测试: 首先,从是什么开始](https://segmentfault.com/a/1190000004930175)

单元测试是为了测试某一个代码单元而写的测试代码。但是什么叫“一个代码单元”呢?是一个模块、还是一个类、还是一个方法(函数)呢?不同的人、不同的语言,都有不同的理解。一般的定义,尤其是是在OOP领域,是一个类的一个方法。在此,我们也这样理解:单元测试,是为了测试某一个类的某一个方法能否正常工作,而写的测试代码。

#### 3)[Android插件化原理解析——广播的管理](http://weishu.me/2016/04/12/understand-plugin-framework-receiver/)

在Activity生命周期管理 以及 插件加载机制 中我们详细讲述了插件化过程中对于Activity组件的处理方式,为了实现Activity的插件化我们付出了相当多的努力;那么Android系统的其他组件,比如BroadcastReceiver,Service还有ContentProvider,它们又该如何处理呢?

#### 4)[Android线程的正确使用姿势](http://mrpeak.cn/blog/android-threading/)

线程是程序员进阶的一道重要门槛。对于移动开发者来说,“将耗时的任务放到子线程去执行,以保证UI线程的流畅性”是线程编程的第一金科玉律,但这条铁则往往也是UI线程不怎么流畅的主因。我们在督促自己更多的使用线程的同时,还需要时刻提醒自己怎么避免线程失控。

#### 5)[Android架构合集](http://www.jianshu.com/p/1f21e1d375aa)

Android 架构相关的文章及开源库合集。

## iOS开发

#### 1)[iOS遗留系统重构实践](http://mp.weixin.qq.com/s?__biz=MzA3ODg4MDk0Ng==&mid=2651112090&idx=1&sn=7e00d0da704f99ef93ffd815731f1fd9&scene=0#wechat_redirect)

在过去的几个月内,我主导着团队完成了一项工程浩大(累积八个人月的工作量)的重构工作——为我们的App替换数据库。之所以能够把这种伤筋动骨的事情称之为重构,是因为在这段时间内,我们每天向主干合并两到三次代码,期间App上线五次,用户没有感知到任何影响。在这篇文章中,我将讲述我们如何在不影响系统外部行为,也不影响正常交付的情况下,替换掉了数据库实现。

#### 2)[Service Oriented 的 iOS 应用架构](http://tech.glowing.com/cn/service-oriented-ios-architecture/)

在 Glow Baby 的开发中,我们也做了一些新的尝试 - 使用 Swift 开发,并基于 Swift 的语言特点设计了新的 iOS App 架构。总体上,写 Swift 更加有趣,所有的努力最终也证明是值得的:App 运行更加流畅,代码更整洁可读性更高,我们开发效率也大大提高。

#### 3)[React Native 的 Navigator 组件使用方式](http://www.wangchenlong.org/2016/04/19/1604/191-rn-navigator)

React Native的编程思想类似于iOS, 导航栏也使用Navigator作为标识, 类似于Android的ActionBar. 导航栏作为最重要的应用组件之一, 除了处理页面导航功能以外, 还会提供页面栈的管理, 管理页面的跳入和跳出. 本文介绍一下 Navigator 组件的使用方式。

## 技术纵横

#### 1)[构建 Facebook F8 2016 App / React Native 开发指南](http://f8-app.liaohuqiu.net/)

每年,作为 F8 会议的一部分,Facebook 都会开发一款会议相关的 iOS 和 Android 的 app,让参会者可以通过 app 安排会议行程,了解更多关于演讲和演讲者的信息。这个 app 还提醒参会者即将开始的演讲,或者发送一些临时公告。今年,我们不仅在 GitHub 上开源了代码,我们还制作了一系列的教程。想用简单明了的语言介绍 React Native 及其开源生态。

#### 2)[Java动态代理机制详解(JDK 和CGLIB,Javassist,ASM)](http://blog.csdn.net/luanlouis/article/details/24589193)

Java编译器编译好Java文件之后,产生.class 文件在磁盘中。这种class文件是二进制文件,内容是只有JVM虚拟机能够识别的机器码。JVM虚拟机读取字节码文件,取出二进制数据,加载到内存中,解析.class 文件内的信息,生成对应的 Class对象。由于JVM通过字节码的二进制信息加载类的,那么,如果我们在运行期系统中,遵循Java编译系统组织.class文件的格式和结构,生成相应的二进制数据,然后再把这个二进制数据加载转换成对应的类,这样,就完成了在代码中,动态创建一个类的能力了。

#### 3)[数据库的设计:深入理解 Realm 的多线程处理机制](https://realm.io/cn/news/threading-deep-dive/)

你想知道在 Realm 的引擎盖下它到底是怎么工作的。你想学习些相关的理论、机制和背后的原因。好吧,你来到正确的地方了。 我们马上会讲到相关的所有有趣的细节。在这篇博文里,我们会解释 Realm 是如何还有为什么是这样构建的,以及它重要的原因。

#### 4)[平安金融科技测试技术周报(第二期)](http://www.jianshu.com/p/2c771cfeac60#rd)

本期测试技术周报首先为大家带来两篇原创文章,然后介绍了React和go语言的测试方法,同时搜集各大互联网公司在持续集成和平台化方面的实践经验。不过要重点推荐还是最后的测试杂谈,让我们带着google老大哥的烦恼讨论下开发和测试的关系。

#### 5)[React Native 的一周年回顾](https://github.com/gaohailang/blog/issues/23)

本文翻译自Facebook工程团队的官方博客,React Native: A year in review,本文分别从 RN 起源,项目过去一年在FB内部的发展,在业界的广泛使用和生态圈的快速建立,在 Github 上的开源协作,核心团队对 RN 的未来展望等进行一一讲述,来吧看看 RN 的传奇之路。

## 开源函数库与工具

#### 1)[JSPatchX](https://github.com/bang590/JSPatchX)

JSPatch XCode 代码补全插件。

#### 2)[agera](https://github.com/google/agera)

Agera 是 Google 开源的一个帮助你在 Android 上写函数式、异步和响应式编程的函数库。




> 欢迎关注我们团队的技术公众号
![](http://upload-images.jianshu.io/upload_images/191937-85d04d5eec527391.jpg?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

0 comments on commit 7df60d5

Please sign in to comment.