写点什么

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:001721
用户头像

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

关注

评论

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

Java jdk下载安装与配置及其不同版本jdk切换,Java开发实战

JVM调优资料

Java 程序员 后端

Java-进阶:多线程1,Java程序员必须掌握的技术

Java 程序员 后端

Java中高级核心知识全面解析,Java工程师需要掌握的技能

Java 程序员 后端

Java全面学习视频书籍,阿里架构师看到都觉得好,Java自学教程

Java 程序员 后端

LeetCode题解:143. 重排链表,数组,JavaScript,详细注释

Lee Chen

算法 大前端 LeetCode

架构实战训练营|作业|模块2

Frode

#架构实战营

HTTP系列之:HTTP缓存

程序那些事

缓存 Netty HTTP 程序那些事

linux网络包收发讲解

赖猫

Linux

08. 语音识别与第二次AI热潮

数据与智能

人工智能

Go 专栏|开发环境搭建以及开发工具 VS Code 配置

AlwaysBeta

Go 语言

前端开发css这些样式你还熟悉吗,Chrome是必备技能

你好bk

CSS html css3 大前端

JDK 8 及其后续 JDK 中 Period 和 Duration

HoneyMoose

我们为什么要学习TypeScript ?

法医

typescript

Linux之lastb命令

入门小站

Linux

C语言:十进制、BCD码互换

不脱发的程序猿

C语言 十进制、BCD码互换

java web 部分(1),Java技术总监面试常见问题及答案

Java 程序员 后端

LeetCode刷题13-简单-罗马数字转整数

ベ布小禅

9月日更

粗放生长时代结束,高精地图收紧灰色地带

脑极体

网络攻防学习笔记 Day123

穿过生命散发芬芳

9月日更 互联网安全 流量采集

架构实战营模块七作业

老猎人

架构实战营

IntelliJ IDEA 如何快速查看提交代码的对比

HoneyMoose

Java中的注解到底是怎么一回事?,jvm原理面试题

Java 程序员 后端

Java中高级核心知识全面解析,Java大厂高级面试题灵魂100问

Java 程序员 后端

找啊找啊找工长,找到一个好工长

escray

生活记录 9月日更

C语言:十进制、十六进制数据互换

不脱发的程序猿

C'语言 进制转换

在线JSON转Mongoose工具

入门小站

工具

Excelize 开源五周年 🎉

xuri

Excel Excel数据分析 Go 语言 Excelize

JavaScript数组常用的方法总结

孙叫兽

JavaScript 大前端 数组 引航计划

java web 部分,Java教学视频百度云盘

Java 程序员 后端

【LeetCode】所有奇数长度子数组的和Java题解

Albert

算法 LeetCode 9月日更

epoll底层实现源码及epoll反应堆模型

hanaper

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