写点什么

iOS 开发周报:iOS 8.4.1 发布,iOS 8 时代谢幕

  • 2015-08-18
  • 本文字数:2008 字

    阅读完需:约 7 分钟

新闻

  1. Apple 发布 iOS 8.4.1 :本周 Apple 发布了新的系统补丁,主要修正了一些 Apple Music 的问题,以及修复了一些安全隐患。如果不出意外的话,这将是 iOS 8 时代的最后一个补丁。在这一年内,Apple 在 iPhone 上的销售取得了巨大的成功,大屏幕的 iPhone 再一次激活了市场,也成功地将一些原来的大屏安卓用户转化为了 iOS 用户。在系统方面,现在已经有 85% 的设备在运行 iOS 8,可以说 iOS 8 取得了巨大的成功。作为继任者的 iOS 9 即将在秋天和新一代 iPhone 一起发布,让我们开始期待新系统的特性给我们的开发和生活带来的改变吧。
  2. 自动驾驶汽车?Apple Car?:有资料显示,Apple 正在湾区和硅谷测试一款无人驾驶的汽车,这让人不禁浮想联翩,莫非这会是 Apple Car 或者 iCar 的原型?早有传言说 Apple 有意进军汽车行业,但是到现在为止,我们只看到了 Apple 和汽车厂商合作推出的 CarPlay - 一个能让你配合你的汽车使用 iPhone 的桥接方案。在 Google,特斯拉,以及一些其他科技厂商都在不断尝试在汽车这一传统领域做些什么的时候,我们也有理由相信 Apple 可能也会有所动作。如果这属实的话,我们至少接下来应该还能听到不少关于 Apple Car 的消息,让我们拭目以待吧。

教程

  1. Cloud​Kit :NSHipster 的一篇文章的中文译文。如果想自己独立制作应用,有时可能需要写一些后端代码。即使对于能够胜任这项工作的移动开发者而言,这不仅意味着要写代码,更多的是长期维护。相比于直接自己书写后端代码,我们可能更倾向于选择一些现有的服务, Parse LeanCloud 就是不错的选择。而从 iOS 8 开始我们现在可以使用 Cloud Kit 框架来作为 app 的后台支持。这篇文章讲述了一些 CloudKit 的基础知识和使用,可以带领你入门这个框架。
  2. Don’t let your UIViewController think for itself :为 ViewController 瘦身一直是 iOS 开发中的一个热门话题,可以毫不夸张地说,看一个项目水平如何,是否具有优良的可维护性,一个重要的指标就是看项目中 View Controller 的复杂程度和代码行数。如果我们能有效地减少 View Controller 的复杂度,就意味着 app 的实现逻辑会更加清晰,项目可维护性也会更好。作者通过一系列文章介绍了良好的 View Controller 的设计方法,这是其中的一篇,主要基于 MVVM 的模式对 View Controller 的实现和新功能的追加进行了一些讨论。
  3. Rich Text, Core Text :在 iOS 上,我们可以使用 Core Text 来处理富文本和排版的需求,但是这个框架并不是非常直观,而且有不少小技巧和需要注意的地方。这篇文章介绍了一些 Core Data 的最佳实践和注意事项,如果你在和 Core Text 打交道的话,推荐阅读。

开源项目

  1. SIFloatingCollection :一个很有意思的项目,它尝试仿照实现了 Apple Music 里风格选择的界面。相比于使用 UIKit,这个项目可以说是另辟蹊径,使用了 SpriteKit 来进行制作和模拟,因此我们也可以很轻易地使用我们自己的形状来重用这个库,以满足设计要求。虽然不能说这个实现十全十美,但是这确实给我们在实现一些动画效果时提供了新的思路,除了 UIKitUIDynamic 以外,我们还可以直接用像是 SpriteKitbox2d 这样的东西来进行创作。
  2. Parse-SDK-iOS-OSX :著名的 BaaS 公司 Parse 最近开源了它们的 iOS/OSX SDK。Parse 的服务虽然在国内可能访问速度不是很理想,但是它们在服务的稳定性和 SDK 质量上一直有非常优异的表现。此次开源的 SDK 对于日常工作是 SDK 开发的开发者来说,是一个难得的学习机会。Parse 的存取操作涉及到很多多线程的问题,从 Parse SDK 的源代码中可以看出,这个 SDK 的开发者对 iOS 开发多线程有着非常深厚的理解和功底,让人叹服。我个人推荐对此感兴趣的朋友可以尝试从阅读 internal 文件夹下的两个EventuallyQueue 文件开始着手,研究下 Parse 的底层多线程处理思路。
  3. Loggerithm :一个在 Swift 中更好地输出 log 的工具。可能并不是所有人都知道,我们在 Swift 中最常用的 println 只会在 Debug 下进行输出,如果我们希望在 Release 版本中留下些什么有用的信息 (比如之后进行调试或确定 bug 时可能会需要) 的话,我们还是只能使用 NSLog 才能在系统 log 文件中进行写入。使用这个项目提供的 API 进行输出的话,可以让我们能无缝地在 Debug 和 Release 时使用合适的输出方式;另外,这个框架提供分级输出,配合 XcodeColors 的话还可以直接在控制台将不同级别的输出用不同的颜色标记出来,看起来十分方便直观。
  4. Koloda :Swift 实现的很漂亮的卡片界面和动画效果,对于一些基于卡片的 app 来说,可能是非常好的界面参考。框架的开发者选择了和 UITableView 以及 UICollectionView 类似的 API,因此使用起来也非常方便。

感谢徐川对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们,并与我们的编辑和其他读者朋友交流(欢迎加入 InfoQ 读者交流群)。

2015-08-18 08:245901
用户头像

发布了 59 篇内容, 共 24.0 次阅读, 收获喜欢 4 次。

关注

评论

发布
暂无评论
发现更多内容

架构师训练营第六周总结

王铭铭

解析软件系统稳定性的三大秘密

华为云开发者联盟

开发者 软件开发 稳定性 系统 探索与实践

Week06

熊威

架构师训练营第6周总结:数据库分片,Hbase和ZooKeeper

hifly

zookeeper Cassandra 极客大学架构师训练营 HBase

第六周作业

晨光

架构师训练营第六周学习总结

whiter

极客大学架构师训练营

架构师训练营第六周 - 总结

Larry

CAP原理简介

elfkingw

Doris临时失效处理过程的UML时序图

周冬辉

架构师训练营第六周命题作业

whiter

极客大学架构师训练营

CAP原理之个人见解

潜默闻雨

缓存穿透、缓存击穿、缓存雪崩,看这篇就够了

码农神说

缓存 缓存穿透 缓存击穿 缓存雪崩 数据缓存

继 GitHub、Twitter 后,Linux 内核废止 master/slave

神经星星

GitHub Linux 程序员 Linux Kenel 技术平权

Kafka 是如何建模数据的?

tison

大数据 kafka

聊聊服务灾备

老胡爱分享

分布式架构 服务设计

详解 Flink 实时应用的确定性

Apache Flink

flink

CAP

东哥

CAP

第六章总结

武鹏

聊聊Dubbo(一):为何选择

猿灯塔

总结

东哥

联想ThinkSystem服务器,企业智能化考验下的极限应考

脑极体

「架构师训练营」第 6 周作业 - 总结

森林

「架构师训练营」第 6 周作业 - CAP

森林

分布式KV存储临时失效时序图

LEAF

分布式RDBMS和NoSQL

LEAF

第六章作业

武鹏

华为云MVP朱有鹏:做IoT开发乐趣无穷,年轻开发者更要厚积薄发

华为云开发者联盟

人工智能 物联网中台 物联网 IoT 华为云

【架构师训练营】第六周总结

Mr.hou

极客大学架构师训练营

架构学习第六周作业

乐天

喜讯!众盟科技获ADMIC 2020金璨奖“年度汽车数字化营销供应商”殊荣

人称T客

第六周作业

Larry

iOS开发周报:iOS 8.4.1 发布,iOS 8 时代谢幕_移动_王巍_InfoQ精选文章