QCon北京「鸿蒙专场」火热来袭!即刻报名,与创新同行~ 了解详情
写点什么

iOS 开发周报:iPad Pro 或于 13 日发布,App Store 添加新的购物分类

  • 2015-11-11
  • 本文字数:1726 字

    阅读完需:约 6 分钟

新闻

  1. Apple 在 App Store 中新加了购物分类:在以前,很多电商类的 app 都被放到了生活类下,不过其实生活类 app 包罗万象,像是日记类 app 或者食谱类 app 会更适合这个分类。最近,Apple 在 App Store 中添加了一个购物 (Shopping) 的分类,这将会是这类电商 app 更好的归宿。在 app 数量爆炸的今天,更多的分类意味着 app 曝光可能性的增加以及潜在用户更容易发现你的 app,这对开发者和消费者来说都是好消息。
  2. 第三方零售商将于 13 日开始 iPad Pro 发货:虽然 Apple 官方并没有给出 iPad Pro 的具体发售日期,只是笼统地说会在 11 月发布,不过根据一些零售商的行为来看,这款设备已经离我们很近了。欧美一些零售商接受 iPad Pro 预订并将于本月 13 日开始发货。不出意外的话,这也将是 Apple 官方发布 iPad Pro 的日期。
  3. XcodeGhost 持续影响 iOS 开发:如果你认为一个多月前的 XcodeGhost 事件已经彻底完结的话,你就大错特错了。近日美国一家信息安全公司发现有一些 XcodeGhost 的变种版本能够作用于 Xcode 7 和 iOS 9,并绕开 ATS (App Transport Security) 系统以及逃避静态分析工具的检测。另外,一些使用了被感染的 Xcode 编译的第三方库中也会带有 XcodeGhost ,这使得即使你的 Xcode 没有问题,但是只要使用了这样的第三方库,最后编译的 app 依然是被植入病毒的版本。

教程

  1. Why is Swift’s String API So Hard? :在 Swift 中字符串类型的处理很有意思,对应的 API 远比我们想象的复杂。作为一门没有历史包袱的语言,Swift 为什么会在字符串上选择了现在这样的处理方式,以前 C 系语言的字符串处理有什么问题?这篇文章从深层次讲述了为何 Swift 的字符串会设计成现在的样子。
  2. Elastic view animation using UIBezierPath :作者通过UIBezierPath 实现了一个弹性下拉刷新的控件。这篇文章是这一实现过程的一个教程,写得非常详细。如果你对贝塞尔曲线的使用还不熟悉,或者对如何制作一个类似的自定义控件毫无头绪的话,这篇文章为你提供了一个很好的范例。
  3. 关于 @synchronized,这儿比你想知道的还要多:一篇翻译文章,介绍了 @synchronized 背后的故事。如果你已经使用 Objective-C 编写过任何并发程序,那么想必是见过 @synchronized 了。它的作用类似于锁,用来防止不同的线程同时执行同一段代码。这篇文章对这背后都发生了什么进行了一些探索。
  4. 被误解的 MVC 和被神化的 MVVM :如何避免把 MVC (Model View Controller) 写成 Massive View Controller 可以说一直是 iOS app 架构上的重点,MVVM 是一种选择。但是 MVVM 也并不是万能的,辩证地看的话,在 MVVM 帮助解决耦合的通过,它也存在一些缺点。这篇文章简述了 MVC 和 MVVM 的一些各自的特点,可以作为我们在设计一个 iOS app 架构时的参考。

开源项目

  1. YYText :功能强大的 iOS 富文本编辑与显示框架,相当于将 UILabel 和 UITextView 的开源实现。这组实现和 UIKit 中的类似,是基于并扩展了 CoreText 的特性。相较于系统的原生实现,这个开源实现让你有机会根据项目需求进行自己的调整,这在复杂的图文混排应用场景中会比较有用。
  2. Unbox :又一个 Swift 的 JSON 解析框架。因为在 Swift 中,不提倡像 Objective-C 那样大范围使用动态特性,因此在 JSON 解析方面一直没有特别好的自动化方案。这个项目和已有的像是 Himotoki 或者 Argo 来说并没有特别大的不同,不过实现上要简单不少,可以作为备选的方案。
  3. Prephirences :如果你还在使用 NSUserDefaults 来保存用户设置的话,现在可以考虑更好一些的方式了。Prephirences 可以让我们很轻松地在 NSUserDefaults,Core Data,Keychain 等不同情境下保存用户设置。另外,你也可以轻易地合并不同的设置中的值。
  4. Armchair :Swift 写的用户评论管理,支持 iOS 和 OSX 中在一定条件下弹出让用户进行评论的对话框。这个框架和 Objective-C 中的 iRate 和 Appirater 等比较类似,包含了基本所有支持的本地化语言,并且可以通过各种条件来控制是否弹出评论提示。

感谢徐川对本文的审校。

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

2015-11-11 18:001940
用户头像

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

关注

评论

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

LeetCode题解:225. 用队列实现栈,一个队列, 压入 - O(n), 弹出 - O(1),JavaScript,详细注释

Lee Chen

大前端 LeetCode

微信群总是有人发广告?看我用Python写一个自动化机器人消灭他!

刘早起😶

Python

够开放吗?来,和一群开发者搞事情!

易观大数据

架构师训练营第十三周作业

叮叮董董

35岁以上的程序员们,后来都干什么去了?

华为云开发者联盟

程序员 职业规划 架构师

云栖大会倒计时8天,新一代CDN的技术突破和应用实践专场有什么看点?

阿里云Edge Plus

CDN CDN加速

打破Scrum的五个误区(译)

Bruce Talk

Scrum 敏捷开发 Agile

淘宝服务端高并发分布式架构演进之路

简爱W

Java java架构师

常用数据分析指标

纯纯

【DevCloud · 敏捷智库】暴走在发布前夜的开发,你怕不怕?

华为云开发者联盟

版本控制 系统集成 发布

JavaScript中的原型到底该如何理解?

Walker

Java 大前端 面向对象编程 原型

大数据2学习总结

周冬辉

JavaScript 简介

InfoQ_34a83d636158

架构师课程第十三周总结

dongge

物联网为什么需要5G?

华为云开发者联盟

5G 物联网

架构师训练营-第十一周作业

腾志文(清样)

捡到宝啦!阿里内部人手一本的Springboot进阶手册,先学为敬

Java架构师迁哥

区块链赋能数字经济,为知识和版权确权定价

CECBC

区块链 知识产权 数字经济

为什么说区块链是制造信任的机器?

CECBC

区块链 不可篡改

架构师0期Week13作业

Nan Jiang

架构师13周练习

小蚂蚁

Securecrt 使用

yuanhang

securecrt

架构师训练营-第十二周作业

腾志文(清样)

CommonMistakes

卓丁

Linux 基础操作

yuanhang

linux命令

从零开始搭建完整的电影全栈系统(二)——简单的WEB展示网站的搭建

刘强西

Yii2 yii

架构师0期Week13总结

Nan Jiang

北京或先行落地央行数字货币 人民币3.0时代将来临

CECBC

数字货币 银行 人民币

搜索引擎如何推荐网页

dongge

java安全编码指南之:表达式规则

简爱W

Java java架构师

到底什么是分布式系统?你需要了解这些

华为云开发者联盟

分布式 部署

iOS开发周报:iPad Pro 或于 13 日发布,App Store 添加新的购物分类_移动_王巍_InfoQ精选文章