XCode 5.0所带来的革命性变化

时间:2022-09-13 16:44:38

大家都知道的一些东西我这里就不多说了,比如

新增的游戏框架和模板

iOS7的SDK以及64-bit/32-bit区分开来的的模拟器

扁平化控件

这里我说下我使用xCode5之后的最大感受:



  • 自定义Cell在IB中终于可以直接操作contentView了!XCode 5.0所带来的革命性变化
我们知道以前在IB中的自定义UITableviewCell是没有contentView这一层的,其实每个Cell都有这个view,所以很多时候用代码书写,我们常常将子视图放在cell.contentView之上,这是一个好习惯,但是在IB中可能初学者就会迷惑为何控件的父视图就是这个cell而不是cell.contentView,最大的区别就在于可能我们不激活contentView,有些东西就会被我们的内容给覆盖住,诸如 删除按钮,编辑状态,accessoryView等等。

现在用XCode5打开老项目如果Cell中没有contentView,会提示你升级你的IB,自动为你加上并迁移以前的子视图,这个操作是不可逆的,项目将不能再XCode4.x中运行。但是我认为这个升级是应该的,凡事应该像标准靠齐,目前XCode5的表现没有让我觉得 还会删掉回去用4.x。
  • 功能强大的运行时内存监控,在静态分析器和instuments中间为我们的内存管理又加一新帮手,好用!
XCode 5.0所带来的革命性变化


XCode 5.0所带来的革命性变化



可以看到CPU的监控是精确到线程级别的,我运行了一个没有什么复杂逻辑的简单界面组合的项目,可以看到UI线程占据着大部分CPU使用率。在instuments观察之前,这个工具更加直观的反应项目中存在的隐患。


  • XIB文件的体积缩小了一倍以上! 
xib文件的冗余度高一直被反对IB者诟病,此次更新XCode5之后对XIB的xml源码进行了压缩,体积缩小了一半以上,亲自验证:
在XCode5中创建了一个带IB的控制器,放置了16个按钮和一个输入框,一个segment:

XCode 5.0所带来的革命性变化


我们看下他的xib文件大小:

XCode 5.0所带来的革命性变化


OK,现在回到XCode4.6,做同样的事情:

XCode 5.0所带来的革命性变化

OK,让我们看看相同的界面生成的xib文件体积差别是多少:

XCode 5.0所带来的革命性变化

31KB与 13KB!也许对于更加复杂的界面,XCode5生成的文件冗余度会更低!!

加上现在的iOS设备硬件越来越好,xib的体积又有所缩减,所以那些说什么用IB都是蠢货的愤青们,官僚主义们的论据越来越站不住脚了。