Xcode9使用新体验

iPhone至今已经十周年了,作为一个重要时间点,今年Apple的WWDC17可谓是憋了大招了。iOS11(ARKit,ML)、Swift4、Xcode9。Xcode9相较之前的版本还是有很多实打实的新功能的,目前AppStore已经推送最新版,为此本人写一下个人体验。

头文件跳转

头文件跳转发生了改变,Xcode9之前点击类名直接跳转到类头文件里面,现在成了actions了,

  • Jump to Definition(^⌘):跳转类头文件或定义
  • Show Quick Help(⌥):显示帮助文档
  • Edit All in Scope:编辑文档内所有匹配内容
  • Extract Function: 抽取成函数
  • Extract Method: 抽取成方法,至于和上面功能有啥区别,赶快试一下会让你喜欢上这两个功能的
  • Actions: 提供快速搜索三个功能,也许Apple认为这样改变确实不方便了,毕竟和我们预想页面中间多了一步。

不过有些小伙伴说了,我虽然喜欢这个功能,但是我CMD+左击 90%的情况是跳转头文件,这样每次需要选择岂不是很麻烦,哈哈 别着急 有办法 路径是Xcode Preference -> Navigation -> Command-click on Code选项改成Jumps to Definition

错误

在Xcode9之前, 错误信息只会在错误处后面一行显示,但是错误信息过多的时候,在看错误信息的时候难免有些不方便,现在好了,当点击错误信息前面的红点时,错误信息会完全展开,并且有fix功能。

代码块范围

当将光标放在class、func、if、for、{}、()等关键字时,按住command键,Xcode9将提示对应的代码块范围。当点击鼠标时好会出现对应的actions。例如:

点击 Add "else" Statement或者Add "else if" Statementaction的时候,Xcode会自动给我们增加else分支内容

厉害的来了,当点击Extract Method的时候, Xcode会将分支自动抽取成func, 手动对此功能点赞?呀!这以后抽取代码块的时候太方便了。

New Group新变化

在Xcode9之前,我们在工程文件下New Group的时候,Xcode只会创建虚拟文件目录(这点很痛苦), 还得自己手动创建本地实体文件目录并关联之. Xcode9之后New Group将会同步创建本地实体文件目录. 如果还想像之前那样只是建立虚拟的group,需要选择New Group without Folder即可

Asset Catalogs

现在Assets.xcassets不光能增加图片,也能增加有名字的颜色

使用的时候类似引用图片方式: view.backgroundColor = UIColor(named: "color")

以后管理全局颜色就和管理图片一样一样的啦 方便极了

Source Control

Xcode9对源代码管理增加了很大的支持,在Preferences中的Source Control增加了Git和Subversion。并且在左侧的Navigator中可以很清楚明了的查看提交信息

在左侧的Navigator中,有Branches、Tags、Remotes,这是相当于集成了SourceTree集成进去了呀

在Accounts中可以增加GitHub账户

而且GitHub账户信息展示的也很齐全

更多的关于Source Control操作不在一一赘述,大家可以自己研究一下

兼容性

Xcode9之后支持了Swift4.0和Swift3.2,默认使用的是Swift4.0。你可以再target的Build Settings的Swift Language Version中选择Swift版本!

想当年做Swift2到Swift3的转换时,真是满满的泪呀!

调试应用

Simulator

Xcode9这次对Simulator进行了非常大的升级,特别是外观发生了变化

最新的模拟器拟物化了,增加了Home键 左上的静音和声音键,右上的关机键都可以使用

模拟器大小也可以随意调整大小,不像之前只有cmd+1、2、3、4的尺寸,现在将光标放在模拟器四角之一上就可以随意调整模拟器大小了

现在可以运行多个模拟器,方便我们测试不同设备情况下页面的情况,

真机调试

之前如若要真机调试必须要连接数据线,现在方便了,可以通过WIFI无线安装App了, 不过需要Xcode9并且运行iOS11+的版本才能使用, 还有就是Mac和iPhone必须连接同一个WiFi网络。 操作如下: 1.用数据线连接Mac和iPhone 2.选择Xcode menu的Window -> Devices and Simulator

3.勾选Connect via network如果通过网络成功连接到iPhone,就可以拔掉数据线愉快的进行无线真机调试 同时也可以通过输入iPhone的IP进行连接。

语言特性

之前判断iOS版本需要获取Device Version:[[UIDevice currentDevice] systemVersion] 现在判断可以像Swift方式那样简单了

    if (@available(iOS 11.0, *)) {
        // iOS 11 Later
    } else {
        
    }
复制代码

新的编译系统

Apple提供了一套新的用纯Swift编写的编译系统,据说对编译速度的提升帮助很大,目前并没有成为默认.如果想要体验,需要手动设置一下, File -> Workspace Settings即可更改

其他

按住command + +-,可以将代码放大或缩小, 这以后演示代码就方便了不少

总结

关于Xcode9就简单介绍这里,还有很多其他的新特性。作为十周年之际,Apple也是拿出了很大的诚意,更多的功能可在Xcode的Help-> Xcode Help中查找

参考

What's New in Xcode9

转载于:https://juejin.im/post/5aa53fb7518825558251fd11

你可能感兴趣的:(xcode,swift,git)