From 7d63579a3de3c6c6421564ec5e1e18c1ab910d92 Mon Sep 17 00:00:00 2001 From: Parsifal Date: Mon, 6 May 2019 11:31:00 +0800 Subject: [PATCH] =?UTF-8?q?=E7=89=88=E6=9C=AC=E5=8F=91=E5=B8=83=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Reports/2019/#66-2019.05.06.md | 49 +++++++++++++--------------------- 1 file changed, 18 insertions(+), 31 deletions(-) diff --git a/Reports/2019/#66-2019.05.06.md b/Reports/2019/#66-2019.05.06.md index fbde2a133..454159a98 100644 --- a/Reports/2019/#66-2019.05.06.md +++ b/Reports/2019/#66-2019.05.06.md @@ -5,21 +5,31 @@ 你也可以为这个项目出一份力,如果发现有价值的信息、文章、工具等可以到 [Issues](https://github.com/SwiftOldDriver/iOS-Weekly/issues) 里提给我们,我们会尽快处理。记得写上推荐的理由哦。有建议和意见也欢迎到 [Issues](https://github.com/SwiftOldDriver/iOS-Weekly/issues) 提出。 -## 新闻 +## 新手推荐 -> 行业相关的新闻、趣事、看法 +### [Flutter 豆瓣客户端](https://github.com/kaina404/FlutterDouBan) -## 新手推荐 +[@邦Ben](https://weibo.com/linwenbang):该开源库,对豆瓣客户端有一定的还原度,不过未实现部分也挺多,毕竟仅仅只是学习用途,暂时里面并没有用到更为复杂的 Rx 或者 Redux ,因此十分适合新手先上路。在学习 Flutter 的同学可以一看。 -> 收集一些对新手友好且质量不错的文章 +PS:项目需要还原一下 Podfile 为初始状态方可运行( BUG ) ## 文章 -### 🐕 [移动开发这十年](https://mp.weixin.qq.com/s/vcbHMtaJEkZhSgiRBST1YA) +### 🌟 🐕 [移动开发这十年](https://mp.weixin.qq.com/s/vcbHMtaJEkZhSgiRBST1YA) [@莲叔](https://weibo.com/aaaron7/): 移动开发从诞生之日起,到现在已经过了十年时间,这篇文章是 InfoQ 邀请美团的藏成威老师回顾了移动开发技术的十年演变。笔者作为移动开发年限算比较久的老兵,有幸经历了其中大部分的浪潮。其中绝大多数技术升级都是围绕跨平台、动态性,归根到底技术体系的升级是围绕业务形态来决定的。文章比较全面的剖析了从 H5 hybrid,到 RN/Weex, 到 Flutter/小程序等不同阶段的跨平台技术。文章本身没有太多技术点,但非常适合拿来作为思考技术和业务是如何相互影响的素材,在阅读文章的时候要多问 Why,相信会有不少的收获。 +### 🌟 🐕 🚧 [Reducing FOOMs in the Facebook iOS app](https://code.fb.com/ios/reducing-fooms-in-the-facebook-ios-app/) + +[@zvving](https://twitter.com/zvving):Facebook 2015 年的一篇经典文章,提出优化 OOM 问题的一些思路: + +- 通过列举所有 App 被终止的已知路径区分是 FOOM 还是 BOOM +- 分析内存使用状况,从 UIWebView 迁移至 WKWebView,降低内存占用 +- 避免内存重复申请与释放,减少多大 30% OOM Crashes +- 完善基础设施:跟踪 App 中每个类的实例计数和内存占用 -### 🐕 [iOS App 安全加固方案调研](https://mp.weixin.qq.com/s?__biz=MzI2NzI4MTEwNA==&mid=2247485642&idx=1&sn=dce8e7581d94c8d8d2b79366f6223161&chksm=ea807f75ddf7f663daf6776b0f5a98aeea2e735e08c3a5268fd00f45b5a893d0e8dbac03b0f8&mpshare=1&scene=23&srcid=%23rd) +相关阅读:[iOS微信内存监控](https://mp.weixin.qq.com/s/r0Q7um7P1p2gIb0aHldyNw) + +### 🌟 🐕 [iOS App 安全加固方案调研](https://mp.weixin.qq.com/s?__biz=MzI2NzI4MTEwNA==&mid=2247485642&idx=1&sn=dce8e7581d94c8d8d2b79366f6223161&chksm=ea807f75ddf7f663daf6776b0f5a98aeea2e735e08c3a5268fd00f45b5a893d0e8dbac03b0f8&mpshare=1&scene=23&srcid=%23rd) [@红纸](https://github.com/nianran):iOS 系统向来以安全著称,但是在越狱面前,我们的 App 接近于裸奔的状态。在本文中,作者整理了如下内容: @@ -32,7 +42,7 @@ 世界上没有绝对的安全可言,想要了解更多关于安全方面的知识,推荐沙老师的书《iOS应用逆向工程》,以及 [念茜的安全攻防系列](https://blog.csdn.net/yiyaaixuexi)。 -### 🐕 [为什么需要Reactive Programming?](https://medium.com/@jasonyuh/%E5%85%B3%E4%BA%8Ereactive-programming-24a2cf28fffa) +### 🌟 🐕 🚧 [为什么需要 Reactive Programming?](https://medium.com/@jasonyuh/%E5%85%B3%E4%BA%8Ereactive-programming-24a2cf28fffa) [@Jason](https://github.com/yxztj):相信有不少同学都或多或少尝试过 ReactiveCocoa 或者 RxSwift,享受到了链式调用的快乐,但是对于 Reactive 思想的本质,可能不一定每个人都有深入的思考过。本文抛开 Rx 库本身,也没有再重复介绍如何使用 Rx,而是从一些日常开发过程中的问题出发,探讨 Reactive 思想的由来,它所解决的关于数据流、事件传播和观察者模式的一系列问题,以及作者在几年的使用中所领悟的一些更深层次的思考。 @@ -40,19 +50,10 @@ [@anotheren](https://github.com/anotheren):本文从常见的“回调地狱出发”,讲述了为什么应该使用响应式框架来进行编程。并以 ReactiveX 框架为例,同步展示了在 Swift/Kotlin 中这类框架的思想和应用,推荐阅读。 -### 🐕 [Optional, throws, Result, and async/await](https://nshipster.com/optional-throws-result-async-await/) +### 🚧 🐕 [Optional, throws, Result, and async/await](https://nshipster.com/optional-throws-result-async-await/) [@xiaofei86](https://weibo.com/xuyafei86):在 Swift 5 之前,我们通过 optional 和 throws 来处理错误。在 Swift 5 中,虽然没有我们期盼的 async/await 特性,但在标准库中增加了 Result 类型。本文对这些 Swift 错误处理的方式进行对比,让你更好的了解 Swift 错误处理的进化过程。 -### 🐕 [Reducing FOOMs in the Facebook iOS app](https://code.fb.com/ios/reducing-fooms-in-the-facebook-ios-app/) -[@zvving](https://twitter.com/zvving):Facebook 2015 年的一篇经典文章,提出优化 OOM 问题的一些思路: -- 通过列举所有 App 被终止的已知路径区分是 FOOM 还是 BOOM -- 分析内存使用状况,从 UIWebView 迁移至 WKWebView,降低内存占用 -- 避免内存重复申请与释放,减少多大 30% OOM Crashes -- 完善基础设施:跟踪 App 中每个类的实例计数和内存占用 - -相关阅读:[iOS微信内存监控](https://mp.weixin.qq.com/s/r0Q7um7P1p2gIb0aHldyNw) - ## 工具 ### [Xcode10 New Build System And CocoaPods](http://yuqiangcoder.com/2018/11/13/Xcode10-new-build-system-and-CocoaPods.html) @@ -71,12 +72,6 @@ 本文将详细介绍一种在 Flutter 项目中优雅的使用 ORM 数据库的方法,文中使用的 ORM 框架是包含在一个 Flutter 插件 [flutter_luakit_plugin](https://pub.dartlang.org/packages/flutter_luakit_plugin) (如何使用可参考[介绍文章](https://juejin.im/post/5c34597651882523d3200c98))中的其中一个功能,本文只详细介绍这套 ORM 框架的使用和实现原理。并且给出了一个详细的 [demo](https://github.com/williamwen1986/flutter_luakit_demo) 。 - -### [Flutter 豆瓣客户端](https://github.com/kaina404/FlutterDouBan) -[@邦Ben](https://weibo.com/linwenbang):该开源库,对豆瓣客户端有一定的还原度,不过未实现部分也挺多,毕竟仅仅只是学习用途,暂时里面并没有用到更为复杂的 Rx 或者 Redux ,因此十分适合新手先上路。在学习 Flutter 的同学可以一看。 - -PS:项目需要还原一下 Podfile 为初始状态方可运行( BUG ) - ## 开源库 ### [NSFWDetector](https://github.com/lovoo/NSFWDetector?utm_source=mybridge&utm_medium=blog&utm_campaign=read_more) @@ -87,14 +82,6 @@ PS:项目需要还原一下 Podfile 为初始状态方可运行( BUG ) [@红纸](https://github.com/nianran):UIView Debugger,类似于 Reveal 和 Xcode 中集成的组件,其比较方便的是能够在 APP 内就可以直观的去查看,但目前它只是处于 1.0 版本,功能仅限于查看视图层级,期待其能拥有更加完善的功能。 -## 书 - -> 比较不错的书的推荐和书评 - -## 音视频 - -> 比较不错的书的推荐和书评 - ## 内推 老司机周报团队联合知识小集和 SwiftGG 翻译组收录了一份靠谱的内推职位。