-
Notifications
You must be signed in to change notification settings - Fork 95
/
Copy path平安金融科技移动技术周报(第十四期)
113 lines (59 loc) · 11.3 KB
/
平安金融科技移动技术周报(第十四期)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
# [平安金融科技移动技术周报](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://b.picphotos.baidu.com/album/w%3D1458%3Bq%3D90/sign=467b509932fae6cd0cb4af653a8b3455/37d3d539b6003af3ebd76dce322ac65c1038b62b.jpg)
> **本期导读**:本期周报原创专题带来团队的三篇实战文章;Android 带来两篇应用 UI 架构的讨论,同时可重点关注路由框架和随机对象生成器设计与实现;iOS 重点推荐网易漫画 Swift 混编实践;技术人生中我们推荐了两篇关于程序员影响力的文章,你没理由不看!
## 原创专题
#### 1)[React Native ListView 实践](http://139.196.14.76/t/react-native-listview/269) @吴健兴(金融服务A组)
本文总结了 React Native 开发中使用 ListView 时,遇到的一些问题以及解决方案。
#### 2)[svn-git-transfer SVN仓库批量迁移Git工具](http://139.196.14.76/t/svn-git-transfer-svn-git/271/1) @潘伟洲(应用架构组)
要从 svn 迁移到 git ,方法是使用 git-svn ,将某个 svn 路径克隆到本地,并转换为 git 的形式,最后推送到对应的 Git 中央仓库上。这个流程并没有涉及复杂的决策,所以完全可以做到自动化。于是我写了一个工具 git-svn-transfer ,用它批量完成所有 SVN 路径到 Git 仓库的迁移。
#### 3)[化繁为简的企业 Git 管理实践(一):多分支子模块依赖管理](http://139.196.14.76/t/git/274/1) @潘伟洲(应用架构组)
在 Git 的使用中,我们对子模块的使用进行了简化,避免了由于漏提交子模块 commit id 或子模块代码导致无法更新或更新错误的情况。这么做看起来好像完全抛弃了子模块的 commit id。
## Android开发
#### 1)[选择恐惧症的福音!教你认清MVC,MVP和MVVM](http://zjutkz.net/2016/04/13/%E9%80%89%E6%8B%A9%E6%81%90%E6%83%A7%E7%97%87%E7%9A%84%E7%A6%8F%E9%9F%B3%EF%BC%81%E6%95%99%E4%BD%A0%E8%AE%A4%E6%B8%85MVC%EF%BC%8CMVP%E5%92%8CMVVM/)
相信大家对MVC,MVP和MVVM都不陌生,作为三个最耳熟能详的Android框架,它们的应用可以是非常广泛的,但是对于一些新手来说,可能对于区分它们三个都有困难,更别说在实际的项目中应用了,有些时候想用MVP的,代码写着写着就变成了MVC,久而久之就对它们三个的选择产生了恐惧感,如果你也是这样的人群,那么这篇文章可能会对你有很大的帮助,希望大家看完都会有收获吧!
#### 2)[Android官方MVP架构示例项目解析](https://mp.weixin.qq.com/s?__biz=MzA3ODg4MDk0Ng==&mid=403539764&idx=1&sn=d30d89e6848a8e13d4da0f5639100e5f&scene=0&key=b28b03434249256bffe51beb898aff097e1f71fcaa265f5ddd46dd9d9ccc1a7445341fabce7c4c83a92e8dd788e776f0&ascene=0&uin=NTk4MzU3OTAw&devicetype=iMac+MacBookPro12%2C1+OSX+OSX+10.11.1+build(15B42)&version=11020201&pass_ticket=Y6O8ThEJd805yY7Z3J5F37aWin8jj%2BZA1EcE9Lr6OHUti2tXUO%2B07WQi0NQRfZwx)
前段时间Google在Github推出了一个项目,专门展示Android引用各种各样的MVP架构,算是官方教程了。趁着还新鲜,让我们来抛砖引玉一探究竟,看看在Google眼里什么样算是好的MVP架构。
#### 3)[Android Studio advanced configuration](http://liukun.engineer/2016/04/10/Android-Studio-advanced-configuration/)
本文主要内容来自 Dmytro Danylyk 在 Medium 的文章Configuring Android Studio。在此感谢!虽然使用Android Studio 有一定的时间了,但文中的某几个设置之前还真不知道,且原文在长城外,因此在翻译原文的基础上作了一些补充,若有新的发现会即时更新。希望对大家尤其是刚接触 Android Studio 的朋友有一点帮助。
#### 4)[Retrofit分析-漂亮的解耦套路](http://www.jianshu.com/p/45cb536be2f4)
万万没想到Retrofit会这么火,在没看源码之前,我简单的认为是因为它跟OkHttp同出一源(Square),所以才会炒的那么热。又或者是因为它能支持RxJava,所以火上浇油,一发不可收拾。后来看过Retrofit源码之后,我才理解为什么它倍受关注,是因为它集诸优点于一身,并且炒鸡解耦。你能预见的特殊需求,都能非常容易的扩展。
#### 5)[Android路由框架设计与实现](http://sixwolf.net/blog/2016/03/23/Android%E8%B7%AF%E7%94%B1%E6%A1%86%E6%9E%B6%E8%AE%BE%E8%AE%A1/)
我们知道传统的网站开发框架一般支持用户设置路由表,如Django。而在Android开发中,我们打开页面的方式主要是startActivity()。使用startActivity()的缺点是需要打开的那个Activity的类已经存在,否则无法通过编译,但是在协同开发中,这往往是无法得到满足的。那么如何来解决这一问题呢,我们是否也能够像在Web开放中一样使用一个url来打开一个Activity呢?因此本文主要介绍在Android平台设计和实现一个路由框架。
#### 6)[Android实战之你应该使用哪个网络库?](https://segmentfault.com/a/1190000003965158)
目前基本上每个应用都会使用HTTP/HTTPS协议来作为主要的传输协议来传输数据。即使你没有直接使用HTTP协议,也会有成堆的SDK会包含这些协议,譬如分析、Crash反馈等等。当然,目前也有很多优秀的HTTP的协议库,可以很方便的帮助开发者构建应用。
#### 7)[Android随机对象生成器的设计与实现](http://sixwolf.net/blog/2016/04/08/Android%E9%9A%8F%E6%9C%BA%E5%AF%B9%E8%B1%A1%E7%94%9F%E6%88%90%E5%99%A8%E7%9A%84%E8%AE%BE%E8%AE%A1%E4%B8%8E%E5%AE%9E%E7%8E%B0/)
当完成一个新的Feature的时候,需要对其进行测试。但是由于服务器还没有部署该功能,或者单元测试的限制,往往需要程序员自己去伪造一些数据。但是手工伪造数据往往效率不高并且没有代表性。因此希望能够实现一个对象生成器,生成对象并往里面填充随机值。
## iOS开发
#### 1)[网易漫画Swift混编实践](http://mp.weixin.qq.com/s?__biz=MzA3ODg4MDk0Ng==&mid=403474677&idx=1&sn=5163adb2d80aa5b4f0099f79e6d783e1&scene=0#wechat_redirect)
网易漫画App是网易杭州这边最早采用Swift的产品,本文主要为大家分享下网易漫画App在Swift上的实践:
* 使用Swift历程
* Swift混编实践
* 基于Swift的架构演变及建议
#### 2)[客户端的前端化之异步数据管理](http://mp.weixin.qq.com/s?__biz=MzIwMTQwNTA3Nw==&mid=2650500886&idx=1&sn=bf02c4c70218f526579deba2f3fd2541&scene=0#wechat_redirect)
近年来,App上火热的技术,有些是跟随Web技术的发展趋势的。比如Futures and Promise是JavaScript 先火起来,然后传到App。还比如React,响应式编程也是从Web走向了客户端。当下客户端的架构,需要具备以下几点能力:
* 复杂异步数据管理的能力
* 及时自我更新的能力
* 在线Hotfix的能力
#### 3)[iOS开发之 动画CoreAnimation](http://blog.treney.com/index.php/archives/CoreAnimation.html)
本文是对 CoreAnimation 知识点的一个总结回顾。
#### 4)[如何编写稳定流畅的iOS移动端应用](http://www.jianshu.com/p/f4adce56166f)
把一个客户端做得稳定、无奔溃、流畅,是写客户端朋友的梦想,但是,我们面临的结果往往是不如人意的。天下武功,唯快不破。很多公司都信奉这个教条。恨不得把app开发周期压缩到最低,这就导致了开发中隐藏了很多问题。有点经验的工程师草率的优化一下,更糟的情况是那些没有经验的工程师甚至不会对app进行任何优化,这将会使情况变的更糟。
## 技术纵横
#### 1)[平安金融科技测试技术周报(第一期)](http://mp.weixin.qq.com/s?__biz=MzI1NzE0NjA5Mg==&mid=404197704&idx=1&sn=0ded2883ea2bfa72084e2fe2dbae1c15&scene=0#wechat_redirect)
平安金融科技测试技术周报终于和大家见面了,我们旨在为大家分享最前沿的测试技术和测试组最新的技术成果。我们将定期给大家带来测试组内的一些原创文章和业内的优秀博文。测试技术周报主要分为五个栏目:原创文章、移动测试技术、后端测试技术、通用测试技术和测试人生。
#### 2)[从架构的角度看,如何写好代码?](http://mp.weixin.qq.com/s?__biz=MjM5MDE0Mjc4MA==&mid=403485970&idx=2&sn=5af6adc927d32149bbad1b4191840bf1&scene=0#wechat_redirect)
软件架构实际上包括:代码架构,以及承载代码运行的硬件部署架构。实际上,硬件部署架构最终还是由代码的架构来决定。因为代码架构不合理,是无法把一个运行单元分拆出多个来的,那么硬件架构能分拆的就非常的有限,整个系统最终很难长的更大。所以我们经常会听说,重写代码,推翻原有架构,重新设计等等说法,来说明架构的进化。
#### 3)[Google 或许会将 Swift 编程语言纳入 Android 平台](http://www.infoq.com/cn/news/2016/04/Google-Uber-Swift-Android)
自从去年年末备受瞩目的 Swift 开源后,消息不断,最近互联网巨头们-Google、Facebook、Uber 齐聚伦敦,共同就 Swift 相关问题展开了讨论。The Next Web 称,据可靠消息,Google 意欲在其 Android 平台下采纳应用开发编程语言 Swift为其首要开发语言,这可能和他们备受和 Oracle 的官司之争有关吧。但 Swift 的魅力亦是重要因素,Facebook 和 Uber 均表态,未来会将 Swift 作为主要的开发语言。
## 技术人生
#### 1)[丁香园范凯:技术团队管理不仅仅是管理](http://mp.weixin.qq.com/s?__biz=MjM5MDE0Mjc4MA==&mid=403505026&idx=2&sn=7cf6faa04c9da0537ab0635a8e34978c&scene=0#wechat_redirect)
硅谷有一些互联网公司,怎么衡量它们未来的好坏呢,这就是看优秀的人才往哪个互联网公司去流动。如果我们承认互联网公司的核心资产是人的话,那其实整个互联网公司团队的管理观念都要发生改变。那意味着我们管理一家公司或者说公司里面的团队,最根本的目标是做人才培养,把公司的文化建设放在第一位,然后把人的核心价值发挥出来。
#### 2)[也谈程序员影响力的经营](http://weibo.com/ttarticle/p/show?hmsr=toutiao.io&id=2309403963757121391703)
过去几年我一直在不断的讲,程序员需要提升自己的表达能力和技术影响力。因为在我的印象里,程序员这个群体一直是很安静、务实、谦逊的。然而最近一段时间的事情,让我看到程序员圈子发生了很大的变化:
* 比如,大量程序员伪造简历,并视其为理所当然。
* 比如,给知名项目发送垃圾PR,混contribute和star。
#### 3)[如何把自己打造成技术圈的 papi 酱](http://diycode.cc/topics/33)
最近半年,一个叫papi酱的平胸女子连续在微博、朋友圈、创业圈刷屏,当之无愧成了中文互联网的第一大网红。呃,你以为我会巴拉巴拉说一堆网工创业的事?NO,今天想借papi酱的话题跟大家一起聊聊程序员如何打造自己的个人品牌。
> 欢迎关注我们团队的技术公众号
![](http://upload-images.jianshu.io/upload_images/191937-85d04d5eec527391.jpg?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)