老司机 iOS 周报,只为你呈现有价值的信息。
你也可以为这个项目出一份力,如果发现有价值的信息、文章、工具等可以到 Issues 里提给我们,我们会尽快处理。记得写上推荐的理由哦。有建议和意见也欢迎到 Issues 提出。
新闻
New LSP language service supporting Swift and C-family languages for any editor and platform
这应该是过去一周 Swift 社区最大的新闻,Apple 将主导一个新的开源项目,来为其在 Xcode 生态中的 Swift 和 C family 的语言添加 LSP 的支持,这意味着之后在 VS Code 上写 Swift 也能享受自动完成,定义跳转等功能。目前来看,Swift 已经成为全域通用型程序设计语言,但目前对于非 Apple 生态下的 Swift 开发的工具体验并不友好,Apple 此举无疑对于 Swift 社区是重大福音。
Photoshop for iPad hands-on: an exclusive look
Adobe 在近期的 Max 大会上发布了 Photoshop iPad 版本的预览版,正式版将在 2019 年发布。The verge 进行了评测,结合月底苹果的发布会,随着全面屏 iPad Pro 的更新,可能会有一系列生产力 app 随之发布。
文章
? SwiftOldDriver 精选: Diff 算法在 iOS 中的应用(一)
文章来自 SwiftOldDriver 精选,将是一个系列,本文是开篇:讲 Diff 算法的一些基本概念。
在计算机领域中,Diff 是一个很重要的概念,被广泛的运用于各式各样的场景。比如说,React 利用 Diff 优化 Dom 刷新导致的性能问题;Git 借助 Diff 算法实现了版本之间的差异化对比;腾讯 Tinker 热修复借助 Diff 算法生成 patch 包等。
? Xcode 10 Library Tips
相信不少人已经更新到了 Xcode 10。Xcode 10 的 UI 控件窗口从右下角挪到了右上角。默认的使用逻辑是点开后,拖拽一个控件到界面上控件窗口会自动消失。如果一个页面需要连续拖几个控件就会很痛苦。所以分享一个重要的 tip:按住 option 建点击弹出控件窗口的按钮,窗口就会常驻。
? 拍照聚焦和曝光,AVFoundation 简明教程
这是利用 AVFoundation
实现拍照、聚焦和曝光等功能后的一篇总结文章,包含代码和示例,对有这方面应用需求的朋友可以花点时间看看。
? Unleashing the power of asset catalogs and bundles on iOS
对于 iOS 开发者来说,Bundles
和 Asset catalogs
应该是再熟悉不过了。文章介绍了一些高级用法,特别是利用 Asset Catalogs 存储一些配置文件,可以给不同的设备配置不同的值,打开了另一个世界。文末还结合 Bundles
和 Asset catalogs
介绍了一个实际 App 中的使用场景。
? Tricky UIViewController transition animations
目前有很多为初学者准备的简单过渡动画教程,但鲜有为高级开发者准备的。在这篇文章里,作者图文并茂地分享了他最近实现的几个复杂过渡动画,以及几个他在实现过渡动画时的小技巧。
? 揭秘Flutter Hot Reload(原理篇)
本文介绍了 Flutter 的热重载(HotReload)
的实现原理,如果有兴趣自行实现热重载(HotReload)
特性的同学可以关注一下。
- Flutter 热重载的关键代码位于
/flutter/packages/flutter_tools/lib/src/run_hot.dart
- 在需要重新加载时,扫描有修改的文件,通知 UI 线程重绘 View 树
- 在 Flutter 中,因为 Dart 代码是工作在自己的 VM 下,所以 UI 层的 reload 是通过服务注册的方式来跟外界进行打交道的
? TimeInterval, Date, and DateInterval
作者讲述了 TimeInterval、 Date、 DateInterval 的历史由来。使用这些 API 的同时了解这些有趣的历史,不失为一个愉快的过程。
代码
Panda - 基于 Swift 的 Autolayout 实现
使用 Swift 重新实现 Cassowary 算法、不依赖 UIView 的 Autolayout 机制,使得 Layout 和渲染都可以在后台进行。抛去多线程的影响,算法本身的效率也是略高于 Apple 的实现,即使不用的话,也可以通过源码了解 Autolayout 内部的运作原理。
内推
-
北京-百度网盘 持续招 iOS 开发:社招、应届、实习均可。项目在技术上很有挑战性,团队技术氛围极好。诚心希望各路大神前来切磋,也欢迎计算机基础好的小白来共同学习。简历发邮箱 xuyafei01@baidu.com,暂不考虑的也欢迎微博私信 @小非86 聊聊~
-
北京-蚂蚁金服 招iOS/安卓/前端开发:负责支付宝会员及帐号业务线,地点北京国贸,金台夕照地铁站出口 100 米。有兴趣的同学欢迎将简历发送到:weijing.wdf@alibaba-inc.com / weijing.wdf@antfin.com (同一个邮箱)或者微博私信 @折腾范儿_味精 了解情况。
-
上海即刻:如果你认识聪明勤奋、胆大心细、有追求的工程师,那就来加入我们吧!任何推荐或简历可直接发给 Jason(即刻 iOS leader): jasy@okjike.com,或微博 @JasonYuh。
-
杭州奇志科技招聘 iOS、前端:奇志科技自 2016 年起通过行业无人机协同工作流 Mesh 进入物联网与人工智能领域, 并成功为房地产、建筑、测绘、电力巡检等行业提供无人机解决方案。感兴趣可以微博上私信 @没故事的卓同学 了解。
-
深圳头条研发中心诚招各路 iOS 好手一起做取悦自己的项目:如想了解更多深圳头条的信息,可以加小T微信:tomtan,切磋技术和聊情怀都可以喔~~~~
-
北京字节跳动 iOS 团队持续招人中:简历可以发送到邮箱 raozhizhen@gmail.com,或者添加我(@AidenRao)的微信 jingmu1994 了解更多公司及岗位信息。
-
北京百度教育事业部招 iOS 开发:百度教育事业部,地点:北京西二旗。部门下面有百度阅读,百度文库,百度爱听等 App 产品。团队技术氛围浓厚,有兴趣的同学欢迎将简历发送到我的邮箱:lizelei@baidu.com。
关注我们
我们开通了公众号,每期发布时公众号会推送消息,欢迎关注。
同时也支持了 RSS 订阅:github.com/SwiftOldDri… 。
本期编辑
@没故事的卓同学,@四娘,@享耳先森,@Damonwong,@折腾范儿_味精,@张嘉夫,@AidenRao,@Parsifal,@aaaron7,@方秋枋,kyo,tom510230,anotheren,水水,looping,@JasonYuh,@老老老老老老老驴,@小非86
说明
? 表示需翻墙,? 表示编辑推荐
预计阅读时间:? 很快就能读完(1 - 10 mins);? 中等 (10 - 20 mins);? 慢(20+ mins)