转载

老司机 iOS 周报 #21 | 2018-05-28

老司机 iOS 周报,只为你呈现有价值的信息。

你也可以为这个项目出一份力,如果发现有价值的信息、文章、工具等可以到 Issues 里提给我们,我们会尽快处理。记得写上推荐的理由哦。有建议和意见也欢迎到 Issues 提出。

专栏

普通本科如何毕业入职一线互联网公司

我们老司机 iOS 专栏内最新出炉的一篇文章。作者毕业于一所普通的三本院校,从面试五分钟就被请出去,到现在就职于一线互联网公司,这期间有太多的思考、讨论、复盘和抉择。一些经验,希望给后来的同学带来一些帮助。

CocoaPods 进阶之利用 Subspec 实现代码“模块化”

老司机小专栏的文章,主要讲如何利用 Subspec 对 framework 内部代码进行模块化,让调用者做到「按需引入」。

文章

分布式系统的全面介绍

最近几个月看过最好的文章。在有限的篇幅里真正全面的介绍了分布式系统。作为客户端研发,对分布式系统其实一直都有很多疑问,并行计算是分布式,mysql 主从也是分布式,他们之间是什么关系?去中心化和分布式是一样的吗?后端研发的周报里整天提的 kafka 是些什么玩意儿, 它和 hadoop 有什么关系?分布式能同时保证 availability 和 consistency吗?这类问题我能提一天。

文章首先抛出一个核心观点,分布式的设计都是围绕 consistency 和 availability 来做 trade-off,然后从数据库、消息派发、应用程序、计算、文件系统等不同应用场景的分布式应用进行了科普和讨论,解答了基本我所有的疑问,并且还将一些我连怎么问都不知道的疑惑都解释得很清楚,文章的最后一章分布式账本,还带我第 N 次的入门了比特币和区块链(希望是最后一次) (:зゝ∠)。总之,这是一篇值得花时间仔细阅读的文章。

如何自动化测试 React Native 项目

系列文章共两篇,上篇从自动化测试的核心思想入手,介绍了 E2E 测试与单元测试。E2E - 通过 UI 来从头到尾(End-To-End)的测试,这种测试其实就是我们常说的 UITest。针对 RN 项目下的 UITest 文章推荐了 Detox 这款框架,而这款框架的底层用的是 google 的 Earl Grey。

下篇从单元测试入手介绍了基于 React 的各种可用测试工具,包括纯 JS 逻辑的单元测试/组件渲染 Dom Diff 测试/组件通信交互测试/Reducer/Action handler/Selector/Utils 测试等等。并且把多种测试模式合并起来,形成集成测试。

iOS 业务组件化框架 Axe 详解

业务组件化是近几年非常火的 APP 架构思路, 究其原因,随着业务发展,APP 的规模也逐渐膨胀,代码管理与协作开发变得困难,编译耗时也屡创新高,应用功能的拆分与研发团队的拆分也不可避免。

本文使用组件化框架 Axe 阐述了如何解决代码隔离,单独编译,组件交互三个问题。值得对组件化有兴趣的小伙伴们学习。

Using Dedicated Objects as Delegates & Datasources

使用专门的对象去作为 tableView 的 delegates 和 datasources,即可减少 viewController 的代码,又能使这些代码被多个 viewController 复用,需要的话,还能方便的进行数据展示形式的切换。也可以为多个 tableview 写一个 datasources 展示不同的 cell 样式,做到数据展示形式的复用。

Network Extension Intro

如果你还没用过 Network Extension,你也许会对它的强大感到惊讶,它提供了其它框架不具备的系统底层接口,让你能够自定义系统的核心网络功能。

这篇文章的作者将带你了解 Network Extension 的功能和用途,这只是这个系列的第一篇,简单概括了 Network Extension 的功能,下篇将会详细讲解NEPacketTunnelProvider并且带你深入苹果的示例项目 SimpleTunnel,对于 NE 感兴趣的同学可以关注一下。

NSAttributedString in Swift using SwiftRichString 2

SwiftRichString 开源库的使用教程,是一个很不错的富文本样式语法糖,对于经常要处理富文本的应用可以尝试一下。

Build Incrementation Techniques for iOS Release Train

本文首先介绍了苹果官方对 version 和 build 号的一些规范,然后介绍了几种可持续集成中自动增加管理 build 号的方式,个人比较喜欢 fastlane 这种。

Introducing ARKit by Tutorials

Ray Wenderlich 的新书《ARKit by Tutorials》,在这本书里会教你如何构建漂亮的增强现实 app,包括沉浸式的科幻传送门、扑克牌筛子和面部追踪 app 等等。在学习的过程中,你会接触到往场景中添加对象、管理 session、创建真实的游戏物理效果以及其他方面的内容。目前正在首发限时特价销售中。

音视频

UIKonf 2018 视频资源

UIKonf 是柏林的一个独立开发者会议,会议刚于 5.13-5.16 结束,现在他们将视频 po 到 Youtube 上。主题非常丰富,包含技术、设计等内容。

关注我们

我们开通了公众号,每期发布时公众号会推送消息,欢迎关注。

老司机 iOS 周报 #21 | 2018-05-28

同时也支持了 RSS 订阅:https://github.com/SwiftOldDriver/iOS-Weekly/wiki.atom 。

本期编辑

@没故事的卓同学@四娘@mmoaay@享耳先森@Damonwong@折腾范儿_味精@张嘉夫@AidenRao@Parsifal@aaaron7@方秋枋

正文到此结束
Loading...