What's new in Xcode 8
以下是苹果官方对Xcode 8新特性的描述,进行了一些翻译:
Xcode 8 包含了你为iPhone、iPad、Mac、Apple Watch和Apple TV创建惊艳的app所需要的一切东西。这个更快版本的IDE的新特性是你可以用来完成完全自定义的编码体验的新编辑器扩展。新的运行时问题会通过指出内存泄露来提示你避免bug,还有一个新的深入到你的对象图中去的内存调试器。Swift 3 包含更多自然、一致的API名称,让你可以在iPad上的新的Swift Playground app体验。
image更快的界面构建器
用来设计绘制的界面构建器被完全重构了,让你的工作更快,并提供了更棒的控制。你可以看到一个关于你的app在任何Apple设备上的样式的准确生动的预览。由于你可以在不同设备间快速切换来自定义你的UI尺寸,你将能看到和你的用户看到的同样的界面样式。平移和缩放变得难以置信地快,而且你甚至可以在完全缩放到鸟瞰你的故事版时编辑你的界面。
image编辑器扩展
新的Xcode代码编辑器扩展让你可以自定义你的编码体验。使用扩展来在你的编辑器文本里导航、选择、修改以及转化你的代码。将你最喜欢的扩展配置到快捷键上来让普通的格式修改变成瞬间完成。Xcode包含一个新的模板,这样你可以简单地创建编辑器扩展并发布它们到Mac App Store上去,或者签上你的Developer ID到扩展上并在线上分享它们。因为扩展是分离运行的,所以Xcode会保持安全和稳定。
新的Xcode 8 编辑器还包含这些非常棒的新特性:
- 新主题的San Francisco Mono字体
- 自动生成的快速帮助文档
- 高亮当前行
- Swift代码允许图片和颜色的字面值
- 代码实现图片
Swift 3
Swift 3 是第一个发布的完全开源在开发者社区Swift.org构建的创新编程语言。这次发布在新的公共API命名指南文档下统一了核心API的命名规则,这让写Swift代码变得更加自然。常用的系统API比如Core Graphics和Grand Central Dispatch更加有表现力并且与Swift更好地融合在一起。你也可以在新的iPad Swift Playgrounds app上体验Swift 3。
运行时问题
这个新的特性会报告Xcode自动识别的在你app运行时,难以发现且容易被忽略直到你的app到了你的用户手上才出现的问题。新的Thread Sanitizer会捕捉数据改变时的竞态条件以及其他线程相关的bug。使用新的View Debugger来更加高保真和高准确度地检查UI约束问题,在新的Memory Debugger中可以获得内存泄露的警告并追踪它。
image签名更加简单有力
设备设置和代码签名被极大地简化了,当你需要时也提供了更多的控制。新的自动管理代码签名会生成所有你需要的签名,并在连接的Apple设备上运行你的app。只需要选择你的team,Xcode会完成其他的工作。你也可以选择精选你的provisioning profiles并为每个配置设置签名过程。如果你运行到了任何的问题,改良过的错误信息和log信息可以在Report Navigator中看到。如果你有多台Mac,Xcode会自动为每一台Mac生成唯一的开发者证书。
在你的Apple设备上开发并运行你的app和在Xcode偏好设置中输入你的Apple ID一样简单。Apple Developer Program membership不再是必须的了。
感受
文章翻译得有点丑,纯属于我的英文功底不好哈哈,看英文原文真是觉得,苹果的文案写的蛮好的,各种长难句,有限的篇幅里表述了很多的东西,而且很清晰,不过由于水平不足,翻译成中文感觉还是少了点味道,谈谈对Xcode 8的感受吧。
从整体上来看,苹果在进一步地减少新开发者入门的难度。以往开发者在Apple Developer Program membership上需要创建好几个证书,整个过程实在是麻烦,但是如果想要在真机上进行调试这是不得不进行的步骤。从Xcode 7开始苹果就在减少真机调试的限制,现在更加省略了。
另外就是苹果一直在推的Interface Builder,从最开始的xib文件,到后来的storyboard,到提供大量约束实现自动适配却吃力不讨好的Auto Layout,苹果一直在坚持提供更加简单、直观的界面开发方式,虽然大部分开发者都还是喜欢纯代码的方式来进行界面开发,但苹果确实在一步步地努力让界面开发变成真正的界面开发,代码就是用来写逻辑的,界面就该直接在界面上操作。现在苹果的产品线界面也开始多样化起来了,Auto Layout就是一种应对的自动适配方式,但是实在是太难用了,要考虑那么多约束想想就头疼,而且每次打开storyboard都会卡,现在在Interface Builder上提供多设备查看UI、加快流畅度,希望能够真的变得好用起来,像最后一张图一样的效果,以前只能在Reveal之类的工具里看到,真的太酷了。
一个很惊喜的地方在于代码编辑器允许扩展插件了,其实Xcode本身的编辑器真的挺好用的,之前github上也有一些可以应用于Xcode编辑器里的小插件,效果还是挺炫酷的,想想sublime那么好用,有多大程度上归功于它超级自由的自定义性和大量的插件呢,现在看他描述的意思应该是让插件的制作和使用都变得很方便了,那就期待慢慢地会出现多少好玩的插件吧,毕竟程序员都是无聊而可爱的。
Runtime Issues,Xcode支持自动检测运行时问题了,这个如果真的做的好,确实可以帮助开发者提前发现很多本来不会关注的问题。
其余一些界面上的优化,无非都是让Xcode变得更好看好用,其实不得不说Xcode真的蛮给力的,一直以来用着都觉得挺舒服的,而且一直在不断地做出创新和改变,从一款IDE上,就能看出一家公司的态度和实力了。