写点什么

听布道师讲 iOS 9 给开发者带来了什么

  • 2016-01-26
  • 本文字数:1609 字

    阅读完需:约 5 分钟

iOS 9 Day by Day 》作者 Chris Grant 在书里回顾了 iOS 9 给开发者带来了哪些变革。书中 13 个短章把 iOS 9 在开发工作发挥重要作用的关键特征做了详细介绍。

InfoQ 网站在过去的几个月里一直全面而具体的介绍了 iOS 9 的功能特点。《开发者手里的iOS 9 》系列电子书帮助开发者详细介绍了iOS 9 SDK 的新功能和相关工具,并大致概述了所有新的或已升级了的框架。电子书里同时也讲解了这些iOS 9 新功能的使用详述。

下面是InfoQ 采访技术布道师Sam Burnstone,内容关乎Swift 和iOS 开发生态。

InfoQ:在您看来,iOS 9 最重要的三个功能特征是什么?

Sam Burnstone: 特征之一就是 UIStackView。

UIStackView 从根本上改变了开发者在 iOS 上创建用户界面的方式。StackView 的核心便是方便垂直或水平排布多个 sub-view,做过 Android 开发的人都知道,它和 LinearLayout 控件非常相似。

StackView 最有用的就是它会自动为每个 sub-view 创建和添加 AutoLayout 限制条件。当然你可以控制 sub-view 的大小和位置,可以通过选项来配置 sub-view 的大小、排布以及彼此间的间距。

很明显,苹果已经意识到这一点并开始大力宣传介绍 UIStackView。而对于开发来说,他们最需要解决的问题是希望所有的 sub-view 能给进行自我定位,并定义需要被安排的 sub-view 的轴向,横向的或是垂直的。而此时,视图会自动处理子视图的显示效果。将 StackViews 内嵌到另一个 StackViews 里的能力表明其功能是非常强大的,产生的结果就是由于布局约束急剧减少,布局的管理将更加简单。

UIStackView 大大简化了用户界面开发。这是好事,特别是随着硬件的改变。使用 UIStackView,减少了开发者为简单场景设置枯燥的约束,把繁杂的工作交给了 UIKit。

特征之二:搜索功能

iOS 9 允许开发者把自己的 App 内容公开到 iOS 上,用户在不需要离开主页的时候查看程序内容。通过使用 NSUserActivity 帮助用户群体直接从结果跳到 App 的用户地址来实现深层链接,这就大大提高了用户体验。

特征之三:支持从右到左

毫无疑问,虽然 iOS 9 里面新增了很多不错的功能,但在我看来最有趣的就是这是支持从右到左的功能。我们不该忘记,时至今日世界上还有很多地方的书写习惯是从右往左的,而开发从右往左的书写习惯的 App 也是可以获得利益的,前提条件是进行本地化处理。

InfoQ:你觉得这本书里最有趣的是哪一部分?

Sam Burnstone:我认为 StackView 这一章特别有趣。在我研究新功能的时候,惊奇的发现只要很少一部分的代码就能实现几乎所有的视图层次;将大量的视觉拖动到故事版(storyboard)上或添加几个简易的限制也是极其简单的!API 也是经过认真考虑设计的,添加了一些额外功能,例如动画显示,隐藏 sub-view 等等。

InfoQ:在各种类型项目实施过程中,如何判断 Swift 的成熟度可以取代 Objective-C 的?

Sam Burnstone: Swift 在项目开发的整个过程中,它的成熟度和高效成都足以支撑项目的需求;与现有的用 C 和 Objective-C 编写的代码库互用性配合非常好,这就意味着可以将现有的代码库进行整合。然而,你也可以继续 Objective-C 进行开发,并用苹果已经发布的新功能简单的注释旧代码库,以达到改善 Objective-C API 在 Swift 里消耗过快的目的。

Swift 快速发展的步伐令人相当兴奋,但这背后也是有很多需要完善的地方,例如使用前一个版本的语言写的代码通常情况下会对下一版本语言编写的代码相抵抗。苹果公司承诺承诺过将开发完毕的 Swift 开放出来,这就意味着开发者们需要注意他们的代码库在哪些领域可能出现漏洞,如何快速响应代码变化带来的变动。

目前来看,用 Swift 开发出来的工具很大一部分还是很原始的,尽管苹果 Xcode Playgrounds 的发展方向很受人喜欢,这些开发工具看起来更像是用于教学或尝试一种新的算法。苹果确实是花了很大力气把 Swift 培养成一门伟大的语言供大家学习,并尽最大可能让所有需要的人能给接触上它。

查看英文原文: iOS 9 Day by Day: a Review of iOS 9 for Developers

2016-01-26 18:001747
用户头像

发布了 25 篇内容, 共 74218 次阅读, 收获喜欢 1 次。

关注

评论

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

2022年中国生鲜电商年度综合分析

易观分析

电商 生鲜

「GitLab篇」如何用Git平台账号登录建木CI

Jianmu

开源 持续集成 CI/CD 持续部署 流水线

ArkID 企业级开源 IDaaS/IAM 统一身份认证授权管理解决方案

龙归科技

开源项目 iam SSO Idaas

MSE 费芮新金融行业标杆案例

阿里巴巴中间件

阿里云 微服务 云原生

云会议玩法升级

sofiya

从入门到高手,数据从业者的成长一般都要经过哪些阶段?

雨果

数据工程师必备技能

自动化元数据管理的“七宗最”?

雨果

元数据

企业引进外部专家合作开发时,如何保证数字资产既开放又安全?

ModelWhale

数字化转型 数据安全 资产安全 技术专家 协同开发

什么样的数据架构可以彻底解决企业数据孤岛的问题?

雨果

数据孤岛

大型软件团队协作中的常见难题和避坑策略|ONES 研发管理大师课

万事ONES

即时通讯安全篇(十):IM聊天系统安全手段之通信连接层加密技术

JackJiang

网络安全 https 网络编程 即时通讯 SSL/TLS

SAP AMDP 介绍 - ABAP 托管的 HANA 数据库过程

汪子熙

数据库 SAP abap 8月月更 AMDP

教育行业运维审计用什么堡垒机好?有什么作用?

行云管家

网络安全 教育 堡垒机 IT运维 运维审计

MAUI + Masa Blazor 开发带自动更新功能的安卓App

MASA技术团队

.net blazor MASA MAUI Xamarin

如何做好分支管理,保证高效CI/CD?

华为云开发者联盟

git 开发

【有奖评测局】阿里云容器镜像 ACR 测评团限时招募中!

阿里巴巴中间件

阿里云 云原生 容器镜像

阿里的职级是如何上升的,是工作经验还是能力?(附阿里面试题)

程序知音

Java 阿里巴巴 java面试 后端技术 八股文

1对1直播源码:运行多个任务,资源如何切换?

开源直播系统源码

软件开发 一对一直播源码 直播系统源码 语音连麦app

Spring Security + Vue + Flowable 怎么玩?

江南一点雨

Java spring springsecurity flowable

零故障支持数百场重大会议成功举办,HW云会议做了这些事

科技怪咖

太强了!字节大佬的《设计模式宝典》越读越有意思!

退休的汤姆

Java、 面经 社招 Java工程师 秋招

发展靠扩大人力规模,而不是技术研发创新,国内软件行业如何破局?

龙归科技

开源项目 Idaas 龙归科技 统一软件市场 ArkID

开源一夏 |企业内部应用接入钉钉获取部门及人员信息

六月的雨在InfoQ

开源 钉钉 API 钉钉开放平台 8月月更

【IT运维】Linux运维需要掌握哪些技能?

行云管家

Linux 运维 linux运维 IT运维

LCD液晶屏和LED显示屏有什么区别?

Dylan

LED显示屏 户外LED显示屏 led显示屏厂家

Hadoop与数据湖是什么关系?终于有人说明白了!

雨果

hadoop 数据湖

阿里云 EMAS Serverless 重磅发布

hum建应用专家

云原生

技术开发人员:一款远超Hue的SQL工具!

雨果

sql

如何完美的进行数字化转型?

雨果

数字化转型

一箭双雕!刷完阿里P8架构师spring学习笔记+源码剖析,涨薪8K

退休的汤姆

Java 面试 阿里 Java工程师 spring、

SAP Fiori Launchpad Tile,UI5 应用,和 PFCG Role 的对应关系

汪子熙

SAP Fiori Launchpad ui5 8月月更

听布道师讲iOS 9给开发者带来了什么_移动_Sergio De Simone_InfoQ精选文章