必威电竞Storyboards vs NIBS vs Code Debate(翻译)Storyboards vs NIB vs Code 大理论。

前言

召开iOS开发的童鞋都应该会纠结一个题目,那就是以举行开发的当儿是采用StoryBoard还是用Nibs又或者是Code(纯代码流)呢?笔者为甚纠结者问题,今天恰在raywenderlich上面看到了几乎单大神之间的撕逼,哦不,讨论下,感觉得到累累,于是便将她们讨论的始末整理翻译了转,如发生不当之处,还请多包涵,原视频请戳这里

英文:raywenderlich
译文:伯乐在线专栏撰稿人 – 陆熠十四 翻译
链接:http://ios.jobbole.com/88119/

讨论

Ray Wenderlich

Ok!现在咱们都在线,感谢各位的来,今天我们见面生出一个讨论有关iOS开发之座谈,是选取Storyboards、Nib还是Code,我们出三个志愿者,Cesare
Rocchi代表的凡“Code爱好者”,Tammy Coron 代表的是“Nib爱好者”,Felipe
Laso Marsetti代表的凡“StoryBoard爱好者”,我们将自Cesare Rocchi开始

Cesare Rocchi

第一,code是怪清晰直观的,你可以直接扣正在代码,你莫需打开愚蠢的Nib文件,并且毫不深入钻研然后找来有些繁杂因素到底关联了或者没关系,这些都异常愚蠢;当您当开发一个大型项目的时刻这种措施大之有因此;当我起一个crazy
guy那里接手一个类,这个类型是故StoryBoard或者Nibs做的,最后我会用code重写所用的事物,你可以以StoryBoard或者Nibs设置好有东西,但是最终你可据此代码重写所有的状态;比如您以一个nib文件中安装了一个lable,当你运行是app的早晚是lable看起和公设置的不太一致,这是因另外一个人数在后来补充加了一条龙代码改变了杀lable的特性

Tammy Coron

当听到他(Cesare
Rocchi)如此贬低Nib的时节给我怒不可遏,我看成一个先后媛有死丰富一段时间了,我见了很多的主次猿喜欢下code的计来开的;但就算自己个人而言,我是一个不胜靠让视觉的食指,我爱通过可视化的方式来进行编程,所以自己选择用Nibs;你或许会见说用StoryBoard可以较用Nibs看到又多之事物,但是针对自己吧,我连无爱StoryBoard,因为StoryBoard能召开的百般有限,特别是当你以形容一个大型项目的上还是你跟任何的人数搭档之时段,如果以StoryBoard你拿会管所有的UI都汇集在一个文本里,这会招合作变得异常不方便,合并及吧会见时有发生成百上千底累;StoryBoard上还有一个怪非常之题目即使,它不允许而操作太多之性,特别是在不同的View里面使用TableViewCells的下,你切莫得以以StoryBoard里面收录它们,你也许好形成但是会比较累,而Nib要开打此会更为的略;并且你不要想去于StoryBoard里从定义Controller或者是View,无论何时想要就这些你无比好去行使Nib

对于code,我同意而利用code要召开过多的办事,必须要去解Nib背后之代码,但是采取Nib你可迅速看到自己对素操作的意义,如果下code,你勾勒好有的元素,设置好它们的属性,再以它们增长到视图里面,你必须要在运行app之后才会看到实际的功能,这是十分重大之政工,没有丁以意代码到底长什么,他们仅仅见面关注app看起何等,
最好的洞察措施尽管是以Nib来做

So,我可能发生硌多少震动,等自家冷静下来我会说得重复好,XD

Raywenderlich

深科学的看法,现在轮到最后一个丁发言了,Felipe该公及了

Felipe Laso Marsetti

So,Cesare你就是是个混蛋;Tammy并没吃自己深感恼火,因为她十分尊重可视化,而可视化就是未来,虽然code很充分,但是可视化将会晤是前景,不错,Nib或许更的酷更加之轻易,但是未来一定是StoryBoard的环球,它可以叫你完成有Nib与code做不顶之业务,当你在联代码或者合并Nib的时段你还会遇上冲突,每当你触碰Nibs,Xcode就会毫无理由的当你改变了它,所以你如果描述这样的变动,因为Xcode认为其改变了,仅仅以你看了它们一眼

StoryBoard更好,不用再如Nib或者code那样工作,如果你下code,你用周转而的app,看布局是否合理,然后返回更改布局属性,再运行app来拘禁效果,不断的复,这样效率非常之不比,或许用Nib会有所改善,但是当你于召开一个大型项目的时段,你见面发三四十独ViewController,这样您或许就会见时有发生四五十单Nib文件,这会特别之丑,因为你而十分小心的开片改

可StoryBoard不仅可吃你避免写一良堆无聊之代码,甚至是避那些要在Nib下写的代码,比如使segue和unwind
segue,你可以经平等系列之delegate方法来传输数据,你可装转场动画,你甚至足以打定义动画

世家还觉得咱们只好以一个StoryBoard上面工作,但是其实我们得在相连一个StoryBoard上面工作;当我们当开公司级客户端的时光,我们通常都是3-5单人口的团队,我们会生出10只StoryBoard,这十分漂亮,因为您得拿各个模块分开,比如about模块、反馈模块或者社交模块,你得视可视化的layout,为了避免别人说StoryBoard变得愈加深,越来越慢,你得尝试着打开它,然后,boom~~,你得知晓地掌握呀连接在什么,什么要失去哪,你得命名你的segue,你得享有许多底自定义,所有的立刻通还预示着StoryBoard将见面是鹏程

自,Nibs和code是杀有因此之,而且自耶建议以必要的时节去行使Nibs和code,但是本人想说当Xcode中利用StoryBoard是异常有利于之,这是苹果在用的事物,他们呢StoryBoard做了深多的行事,它便是未来,并无足够的凭来证明StroyBoard很缓慢好臃肿或者其它,没有足够强劲之证据来验证当时部分;我强烈建议使用StoryBoard,当必要之时刻你可以code或者nibs,但是本人提议你尽量避免去动,因为StoryBoard才是王道

Raywenderlich

Awsome!非常棒的视角!So,接下每个人都发出一个空子啊友好之看法展开辩解,那么,Cesare你闹什么而说之也?

Cesare Rocchi

额,首先,如果当你想使统一Nib或者StoryBoard的上,那直就是噩梦,毫无意义,然后code要形成这是异常轻松的,作为一个项目经理,我可以知道地观看昨天代码都做了何等修改,但是比如Nib或者StoryBoard,我无能为力把其究竟做了哟,到底是修复了bug还是促成了有一个效果

再有就是是,你在少数时刻或会见利用Xcode的beta版本来进行工作,你知Xcode在治本Nibs或者StoryBoard上面并不曾那的智能,当自己打开项目之时光,beta版的Xcode修改了几许文件,导致了独具东西还破灭了,这就是意味着你打开StoryBoard之后什么还不曾了,所以整项目就了崩溃了

其三碰就算是应用Nibs或者StoryBoard会减低我的工作效率,当自家于coding的上,我好保持自己的手在键盘上面,而休用去开拓一个nib文件然后去做一些事关,然后又用手放回键盘继续coding,这样见面下降我的工作效率;还有某些万一提的尽管是,不止一次,特别是在开始的当儿,我会盯在屏幕,尝试着摸有是何人TMD给此特性设置了价值,谁安装了x或者y,在哪里或者是何许设置的等等,That’s
all!

Raywenderlich

So,Cesare说使用code会让他的工作效率更强,Tammy你生出什么使说之呢?

Tammy Coron

前额,当您看在nib文件的下,你并不需要过多的错过关心那么基本上之属性,它们是怎设置的及它们如何的涉嫌,当您使用nib工作的时刻,你一味待将您的psd文件处理下放到nib文件之中,这样您一直就可以看到效果,然后您再失干代码,我思说之是用nib一切都很的飞速

自家好当app完成以后深入到framework里面,在好有限的岁月中,在及时中没代码,只有可视化的要素,这样就得很快的深深到screen里,去押君的app是什么样连接的,然后再失去处理好之代码;但是倘若您将整还为此代码来做用会晤非常之麻烦,要去装这么那样的性能,oh
my
god,简直无聊死了,根本就是在浪费时间;我嫌使用StoryBoard,使用StoryBoard的总人口就如是僵尸一样,一个big
boy不应去动StoryBoard,额,反正我哪怕是无希罕XD

Raywenderlich

So,Felipe你是此太青春的成员,你吗不行好僵尸,你出啊意见?

Felipe Laso Marsetti

额,我便是一个僵尸StoryBoard用户,我强烈建议使用StoryBoard,code是好有必要之,有时候你不得不去描绘有代码来就那些可视化完成无了底干活,比如从定义UI,但是那些还不是常用之,大部分上使用StoryBoard就足以满足急需了;使用StoryBoard你可以很方便之去装元素属性,而未用失去理背后繁琐的代码;这有的全部还代表StoryBoard是鹏程,这是苹果于用底东西

末了我思说,越少的代码就代表越少的机用bug引入到您的app里面,就类似发出500实施由定义UI的代码,你得拿其减少至100执,这样您便好避免掉400尽没有必要之代码,这样好减少bug,而且这样更便于的失维护您的代码,如果你是独立开发,那么以code或许对您影响不特别,但是一旦你打旁人那边接手项目,你虽只能深入钻研这些代码到底做了啊,是安设置view的,什么继承了哟,以及当nib里面来啊,你还是无可知采取nib去创造一个有static
prototype
cells的tableview,你要去创造一个tableview的子类,新建.h、.m、以及nib文件,然后再度夺创造cell的子类,再新建.h、.m、以及nib文件,然后这些cells在tableview当中是独自的,这样你不怕只好失去新建一个并且一个之cell;然而当StroyBoard里面,只需要一个tableview,20单cells,然后boom~~,太好了,节省时间,让客户端更简约,更少之bug,而且一切都是在可视化下成功的,你不用去非停止的stop、run、stop、run,然后去押您的nib文件及你的代码,僵尸赢了

Raywenderlich

不错的论据,有一样接触我连连听到的哪怕是,使用可视化的User Interface
Designer,你得避再多的代码,可以削减bug,你们怎么对待这理念?

Cesare Rocchi

额,在autolayout出现之前我会同意这视角,如果给我本着Interface
Builder进行打分(10分制),在过去我会被6分,当autolayout出现之后就惟有出3瓜分了,我专门恐怖在Xcode4.6上面进行工作,autolayout尝试着以享有的物混合在一起,造成的动静就是是若当界面上面没有问题,但是以一般状态下这不是你想要之,你也许是思念使让你的视图更小还是是另外;我只得承认autolayout在Xcode5之后有所改善,但自身本着之并无是很感兴趣

Raywenderlich

Tammy,Cesare很反感autolayout,你出什么想说之呢?

Tammy Coron

本身同为不是autolayout的狂热粉丝,我会尽量的将autolayout关闭掉,我于一部分型方面用过autolayout,但自本着autolayout提不起兴趣,你仍然可以使用Nib而不失去行使autolayout,所以我觉得他的实证是低效的,抱歉XD

Raywenderlich

那么Felipe你是怎对autolayout的也?

Felipe Laso Marsetti

无你喜不喜欢,autolayout会始终存在正在,我们用会见发出例外尺寸的设备用去适配,iPad
mini、iPhone4、4s、iPad
retina,autolayout可以帮忙我们错过完成这些适配,Nin与StoryBoard都可以被您可视化的夺动autolayout,你可充分直观的当屏幕及进行布局,但是要是失去行使code,这将见面是千篇一律项大辛苦的事体

利用StoryBoard在debug的早晚你可充分直观的看,在Xcode5上,你得预览自己之布局,一旦而改变布局约束,改变设备的尺寸,你可以立即就来看结果,如果你采取code,你尽管不得不debug、run、debug、run,非常的劳动;就个人而言,我也未是生的喜欢autolayout,虽然在Xcode5与iOS7随后有所改善,但依然未是深好用,这个我们鞭长莫及,但是无论如何,使用Interface
Builder会好了使用code

Raywenderlich

OK!不错的论据,接下去会没完没了拓展半独小时之议论,Cesare从你从头

Cesare Rocchi

code是非常清晰直观的,你可以描绘了事后马上运行,然后得出运行结果,你切莫需要深刻到6只不同之属性编辑器当中,来下手明白这些变量属性等等是什么样为装的

最终一点本人思要说的凡,Interface
Builder背后的观点是挺对的,这个看法是思念如果被设计师采用来设计UI,不管是Nibs还是StoryBoard都见面让你直观的相而的app长什么样子,就比如在稍时候,你无需有一个填写在数量的tableview,作为一个设计师,根本就是未会见待一个填写在真实数据的tableview,设计师就想要知道app看起何等,这不但是一个叫设计师的家伙,更多之凡让那些不思量写尽多代码的coder,That’s
all

Raywenderlich

OK!And Tammy?

Tammy Coron

看来,我当Nibs是极致好之方案,特别是对此有创造力的口,知道Nibs背后的代码原理是必备之,但是你为何要失去浪费时间去与代码较劲,Nibs非常之无敌;至于Story
Board,我无能为力像待VB那样对其,它就是比如僵尸一样(可能是狐狸精的意思)(Tammy后面说了一个僵尸吃大脑的笑话,听得无是深理解就从未翻译了)

Raywenderlich

Awsome!Felipe?

Felipe Laso Marsetti

前额,StoryBoard就是鹏程,就像block,就像ARC,就比如时又一代之Xcode与iOS一样,苹果本将精力都放在了StoryBoard上面,他们没有在Nibs上面更新太多之物,他们未尝还加新力量进入,你可以坚持运用Nibs或者是code,但是下StoryBoard你得节约大量底日,你可于StoryBoard上做出非常复杂的UI,segues、unwind
segues、custom
segues,你还是可给StoryBoard与Nibs和code一起干活,更不见之bug,你应该去品味一下

可是你们很多人口尚是于利用code和Nibs,因为你们好僵硬,你们好一直的章程,害怕改变,说实话,我在平凡工作当中总是以动用StoryBoard,我们当大型的合作项目中运用它们,它总是顶趁手的工具

于大部分情形下,就自我的阅历而言,我恐怕是一个血气方刚的僵尸,StoryBoard就是本身的家伙,StoryBoard可以完成的转业您是足以为此Nibs和code做到,但是切记,这是以苹果在WWDC上面提出来的事物,把StoryBoard和Nibs混合起来会工作的死好,这便是苹果于做的政工,StoryBoard就是最为好的家伙,所以,请别阻止你自己失去尝试这同一起美好的初技巧,你也许仅仅只是害怕做出改变,你只有待花一点微小时间,你虽见面感受及StoryBoard的美好的处在

Raywenderlich

Awsome!感谢各位的讲演,那么各位有啊问题想问问之啊?

Matthijs Hollemans

如果你管所有的事物都坐落StoryBoard里面,你尽管得一次性的下手明白这无异于杀堆的事物,我看像Nibs那么让划分会又好,允许你用segue来连接其他事物,你当每次就处理一个屏幕,这样重复兼容你的Xcode窗口大小,然而StoryBoard占用了无与伦比好的空间

司机

咱俩都理解用StoryBoard可以非常容易的做出一个粗略的应用,在AppStore当中80%的利用还是属简单用,有广大底开发者都是业余的,包括自己为是,我只是怀念有了大好的idea,但无肯定要做出特别过硬的app,我思念StoryBoard就是也这些人准备的

Chris Wagner

这是坏好之某些

Tammy Coron

你可以只有是nibs来构建一个StoryBoard,就如您什么样收拾好的品类一律,但是自己无法想像自己能像以Nibs那样去动StoryBoard,说实话其实自己并从未怎么下了StoryBoard,所以自己对于StoryBoard的多数意都异常牵强XD

Matthijs Hollemans

本身同一也是一个负视觉的口,同样我耶喜爱在可视化的角度去办事,Xcode可以变换得比较现行更进一步的可视化,不仅仅是以组织Nibs和StoryBoard上面,Xcode还得可视化的召开过多之事体,举个栗子,可视化的操控UI元素,我再爱好在Nibs下做这些业务,我弗认为这种办法(使用Nibs)会于淡化,因为我道苹果并不曾费尽多之遐思在好的开发工具上,它恐怕不过叫了支出要利用的极少功能,特别在与其它的IDE比较起的早晚,我梦想Xcode在未来会晤变换得进一步的可视化

Felipe Laso Marsetti

抵一下!你还是说苹果没有花心思在开发工具上?╰(‵□′)╯

Matthijs Hollemans

额,确实,这同样块对她们而言并无是好重大,他们则于了开发者appstore,但是要他们真很厚就无异块,他们应有会受我们再多又使得的家伙

Felipe Laso Marsetti

立马是一个值得讨论的地方,核心的问题是,不管你喜不喜欢,autolayout与StoryBoard都见面连在,明年WWDC,苹果宣布iOS8,我们将会晤见到苹果在StoryBoard以及Interface
Builder上面做的做事,可视化将会转换得更其的强,有同样沾自己需要考虑的尽管是是否要于大型项目中挑选采取Nibs,StoryBoard是盖ViewController为底蕴元素的,而Nibs是为View为根基元素的,一个nib就是一个view,这样于开班下的下会产生接触未适于,因为你想如果开创一个自定义的view,但是若同时非克以直以StoryBoard里面完成

此外关于苹果专注让appstore等题材,这些是实情,但是切记,苹果也规定了周UI、开发了StoryBoard、Interface
Builder,他们做这同样全副生态链;另外关于StoryBoard,你可就此来创造非常简单的app,遇到复杂的app,你或许会见失掉摘Nibs,我觉着这是荒谬的,你依然会以合之时段遇到冲突;我眷恋说之是,尝试一下,如果您用帮忙,来自己这边,你知当乌好找到自己;使用StoryBoard,你真的可以做出非常复杂的花色,性能问题历来管需去担心,在今天的5与5s地方就进一步没有必要失去担心这问题了

Tammy Coron

StoryBoard让我备感累的凡,你只能以融洽之app上面创建于定义views,为什么自己若浪费时间去下StoryBoard,我为此Nibs就可以了搞定了

Felipe Laso Marsetti

因为StoryBoard可以再好之田间管理而的视图,当用户在app里进视图与归视图,你的控制器就是一个scene,所以您得更进一步可视化的待这些,你可以了解的明亮好会叫带及那边去,自定义的view是独自的一些,你可以采用一个nib创建一个自定义的view,然后用好累,同样要铭记,StoryBoard允许你用你的控制器而不用当StoryBoard里面还的失创造这些,你甚至足以使code来创造,你免应让拘及此面去,当您成nibs去采用StoryBoard的时候会越加的可观

Tammy Coron

自家呢可通过看正在项目的领航部分来管理自己之花色,这是自的第一单视图,这是自己之次只视图,等等,我索要找到一个可怜好之说辞为我错过用StoryBoard,我同意关于StoryBoard就是鹏程之见识,不管我们喜不喜欢,autolayout就是未来底自由化,但是自确实好不便喜欢上StoryBoard

Felipe Laso Marsetti

此地发出一个大好的事例,我去年接手了一个色,包含了五六十独ViewController,并且有一样杀堆的nibs,在自我开始贡献代码之前我只好去深入内部去研究这些事物,因为此项目未是自己写的,这个类别曾经举行了1-2年了,在正开之几只月我完全迷失在这个项目中,我不得不去弄明白这些nib文件中的关系,这实质上是充分不方便

而是倘若自身产生一个StoryBoard,那么所有还拿会清晰明了,这会省去成千上万的年月;所以你应该至少用StoryBoard来创造app的布局,然后重新失具体的做有从定义的酷炫UI,采用擅自一种而喜爱的方式;当你接一个大型项目的时光StoryBoard确实会协助您忙

红衣大叔

自我参与的品种有百万行之代码,几百只视图,我无明白我们是不是用去行使StoryBoard,不过我会去尝尝一下,你说的非常科学

Cesare Rocchi

前额,我一度发两三年从未失去举行大型项目了,当自己仍然记得那时候的痛,比如失去处理千头万绪的结构体,就算了以code来举行的花色,要去处理这样那样的结构体也是平项大不方便的事务,其实自己哉一如既往是一个负让视觉的总人口,但是自己连无思量以Xcode上面盖可视化的样式来开项目,我又爱以PhotoShop或者Sketch上面去举行这些工作,做一个优异之coder,你必使理解各种东西,这是一个view这是一个button,这个是不是更加的灵活等等,这虽是为什么我打开Xcode的下,我要自己之率先个视图是一个空手的模版

每当自己的齐一个列当中,我于一个特别粗的片采用了NavigationController,但是自长的是本人起定义的一个NavigationController,这是一个自定义度很高之一个app,在这个项目内,我完全看无产生哪里好用StoryBoard,我还是因此代码把全体搞定,非常之简练,而且好挺好的选用它们,我做的且是起定义度很高的app,唯一一个行使及之视图模板就惟有tableview

红衣大叔

在自身之经验看来,客户时会让自身Photoshop文件,告诉自己立就是是app要看起的典范,然后你开始勾画代码,可能还来另的法子,但是自觉得写代码是平种植轻松的点子

Felipe Laso Marsetti

打自的阅历无法掌握在客户端合作开发的早晚会时有发生啊,但是你抱一个Photoshop文件,你沾一个需求文档,然后对君说立刻即是app要拘留起的楷模,然后视图A到视图B是哪些的,视图B到视图C又是什么样的,把这些做下,告诉你定期,然后拜拜

前额,你采取code或者Nibs来做会很非常,但是你可以动用StoryBoard来举行这些东西,就到底非常复杂的UI也足以就;在自身的小卖部内,经常会生打定义UI的需,我们恐怕用以非常多之家伙,包括code甚至是PaintCode,以及另外可以变可视化的UI的家伙,Nibs或者是StoryBoard,能够利用StroyBoard我会非常的快,可以见到自己用了StoryBoard完成了一个发生一个之天职

Brian Moakley

我们谈谈了autolayout,讨论了StoryBoard,并且现在觉得其就是是鹏程,但是,一年过后,我们兴许还要见面说其他的事物是鹏程,所以,我们当再次思考我们的app到底是怎运转的,知道这些新技巧确实特别科学,可以增进我们的工作效率,但是本人思,懂得什么使code来完成具有事情是大精明之

Felipe Laso Marsetti

iOS7让了豪门各种各样的时机去品尝StoryBoard,甚至是Nibs,如果您拒绝利用StoryBoard,可能以若现在会下相同种植了两样让同过去之计来创造app;既然您本产生一个时来解脱原来那么烦的出进程还要尝试新的家伙与用iOS7拉动的全新UI,为什么不碰一下啊?

红衣大叔

一个杀好的品StoryBoard的理就是下StoryBoard可以动态调试尺寸来适应不同的装置,而autolayout将会晤是不过好之缓解方案

Cesare Rocchi

自并无喜欢StoryBoard或者是Nibs,但是本人不得不去了解她,特别是自个儿当教学的时刻,不管是教autolayout还是Nibs,我都见面建议您去念怎么以代码来完成就一体,Nibs或者是StoryBoard做了成百上千之做事,你相信着这些工具,但是也未晓她背后的代码原理是啊,它们当偷偷摸摸做了哟事情,这很不好;如果你想如果成同称呼专业的iOS开发者,我眷恋你无比好掌握各种各样的开发方法,无论是StoryBoard、Nibs还是code

Felipe Laso Marsetti

此地发出一个非常好的事例来证实明code的章程很重大,有那么些丁时会咨询有问题即使是干什么自己的视图无法切换、为什么dataSource不起作用等等,知道怎么采取code会很好的助而解决这些题材,一旦你知如何利用code,那您采取StoryBoard或者是Nibs将会是如鱼得水,知道code确实怪之基本点

Matthijs Hollemans

在Nibs或者是StoryBoard中动用autolayout是那个好明的,使用code来形容约束非常粗略,但是大部分辰光都未曾意思,但是若你在Interface
Builder里面做这些,它会告知您怎么的牢笼是来意义的,它会报您哪应该加约束,哪里不应有加以;在Nibs或者StoryBoard里面做这些使比较采用code更好

Felipe Laso Marsetti

略知一二code确实挺有必不可少,大部分口以做iOS开发的时刻不明了语言背后的一些原理,这或者会见造成一部分错误,或是内存泄露等等,同样的景吗会在使用StoryBoard或者是Nibs的上有,虽然应用这些工具开发起来会好之福利,但是倘若您切莫知晓背后的代码原理,你也许会见于debug的时节遇到困难

Raywenderlich

这就是说接下是投票环节了,Nibs、StoryBoard、code,你晤面选哪一个?

Brian Moakley

StoryBoard

Cesare Rocchi

Code

Matthijs Hollemans

StoryBoard

红衣大叔

StoryBoard

Felipe Laso Marsetti

不曾必要问我

Chris Wagner

StoryBoard

Raywenderlich

本身啊一律是StoryBoard

Tammy Coron

我TMD要说StoryBoard吗?这样我莫是老行笑(其他人大笑);额,我十分好Nibs,所以我会选择Nibs,但是要是如自我当Nibs和code间做一个抉择,我会选择code,因为code可以开另外业务

Raywenderlich

OK!看来各位大部分还是摘了StoryBoard,╮(╯▽╰)╭

前言

总结

就笔者个人而言,三栽方法本身还品尝过,个人还偏爱采用code,当然根据不同的场景我会结合各自的亮点进行支付;如上所述,StoryBoard是未来,虽然还有不够健全的地方,但是相信苹果会将该开的一发好,
StoryBorad也会见日渐呈现出它的魅力

召开iOS开发的童鞋都该会纠结一个题材,那便是以举行开发的时候是行使StoryBoard还是采取Nibs又要是Code(纯代码流)呢?笔者为深纠结者题目,今天正好在raywenderlich上面看到了几乎单大神之间的撕逼,哦不,讨论后,感觉得到累累,于是就将她们座谈的始末整理翻译了瞬间,如产生不当之处,还恳请多原谅,原视频请戳这里
http://t.cn/zRAb4NF

进行阅读

代码手写UI,xib和StoryBoard间的对弈,以及Interface
Builder的有稍技巧

讨论

Ray Wenderlich

Ok!现在咱们都在线,感谢各位的来临,今天我们见面出一个谈论关于iOS开发之座谈,是选取Storyboards、Nib还是Code,我们发出三只志愿者,Cesare
Rocchi代表的是“Code爱好者”,Tammy Coron 代表的凡“Nib爱好者”,Felipe
Laso Marsetti代表的是“StoryBoard爱好者”,我们以于Cesare Rocchi开始

Cesare Rocchi

先是,code是死清晰直观的,你可以一直看在代码,你免欲打开愚蠢的Nib文件,并且毫不深入研讨然后找来一部分扑朔迷离因素到底关联了或无提到,这些都死愚蠢;当你当开一个大型项目的时段这种方式充分的有因此;当自家自从一个crazy
guy那里接手一个色,这个项目是为此StoryBoard或者Nibs做的,最后我会用code重写所用之物,你得于StoryBoard或者Nibs设置好有东西,但是最终你得用代码重写所有的状态;比如您于一个nib文件里安装了一个lable,当您运行是app的时刻这lable看起和汝设置的未绝雷同,这是盖另外一个丁当此后续加了一条龙代码改变了挺lable的性质

Tammy Coron

当听见他(Cesare
Rocchi)如此贬低Nib的时段让自家怒不可遏,我当做一个次媛有甚丰富一段时间了,我表现了十分多的顺序猿喜欢用code的道来出的;但尽管我个人而言,我是一个那个靠让视觉的人头,我喜爱通过可视化的不二法门来展开编程,所以我选采取Nibs;你恐怕会见说利用StoryBoard可以比采用Nibs看到更多之物,但是本着自身来说,我连无希罕StoryBoard,因为StoryBoard能做的特别单薄,特别是当您于描绘一个大型项目的时或你同其余的人搭档之上,如果采取StoryBoard你以见面把具备的UI都汇集在一个文书中,这会导致合作变得老大紧,合并及也会见起很多的劳动;StoryBoard上还有一个坏挺之题目即,它不同意你操作太多之属性,特别是在不同之View里面使用TableViewCells的时,你无得以于StoryBoard里面用它们,你或可以完成但是会较辛苦,而Nib要做打是会愈的大概;并且你不要想去当StoryBoard里由定义Controller或者是View,无论何时想只要形成这些公无比好去下Nib
对code,我同意如果采用code要开多之做事,必须使错过领略Nib背后底代码,但是以Nib你可以长足看到好对素操作的效益,如果采取code,你勾勒好有的因素,设置好她的习性,再用其增长到视图里面,你不能不使以运行app之后才能够看出实际的功用,这是可怜主要之事务,没有人当意代码到底长什么样,他们只是见面关注app看起何等,
最好之观测措施就是是应用Nib来开
So,我或许发生硌多少感动,等自己冷静下来我会说得更好,XD

Raywenderlich

很科学的看法,现在轮到最后一个丁发言了,Felipe该你及了

Felipe Laso Marsetti

So,Cesare你虽是个混蛋;Tammy并没被自己感到恼火,因为她异常强调可视化,而可视化就是未来,虽然code很特别,但是可视化将会晤是鹏程,不错,Nib或许更的酷更加底任性,但是未来必将是StoryBoard的全球,它可以给您完了有Nib与code做不交的作业,当你于合代码或者合并Nib的时候你仍会遇上冲突,每当你触碰Nibs,Xcode就会并非理由的认为你改变了她,所以您而讲述这样的变更,因为Xcode认为其改变了,仅仅以您看了它一眼
StoryBoard更好,不用还像Nib或者code那样工作,如果您采取code,你得周转而的app,看布局是否成立,然后回来更改布局属性,再运行app来拘禁效果,不断的更,这样效率非常之不如,或许用Nib会有所改善,但是当您于召开一个大型项目的时候,你见面有三四十独ViewController,这样您或许就会见来四五十单Nib文件,这会特别之丑,因为你要是充分小心的开片窜
可是StoryBoard不仅可以为你避免写一死堆无聊之代码,甚至是避那些要于Nib下写的代码,比如利用segue和unwind
segue,你可以透过平等系列之delegate方法来传输数据,你可装转场动画,你甚至足以打定义动画
世家还觉得咱们只好以一个StoryBoard上面工作,但是其实我们得在连一个StoryBoard上面工作;当我们当开公司级客户端的当儿,我们常见都是3-5单人口的团组织,我们见面发生10只StoryBoard,这很妙,因为您得拿相继模块分开,比如about模块、反馈模块或者社交模块,你可以视可视化的layout,为了避免别人说StoryBoard变得尤其深,越来越慢,你可以尝试着打开它,然后,boom~~,你得领略地理解呀连接在什么,什么要失去哪,你得命名你的segue,你可拥有许多底自定义,所有的立刻整个还预示着StoryBoard将会见是鹏程
自然,Nibs和code是格外有因此底,而且自吗建议以必要之时节去行使Nibs和code,但是我想说当Xcode中采用StoryBoard是那个方便之,这是苹果在用之物,他们呢StoryBoard做了颇多的行事,它便是前景,并无足够的凭证来证明StroyBoard很缓慢好臃肿或者其它,没有足够强大的证据来验证当时部分;我强烈建议使用StoryBoard,当必要之时刻你可以code或者nibs,但是本人提议你尽量避免去动,因为StoryBoard才是王道

Raywenderlich

Awsome!非常棒的视角!So,接下每个人犹有一个机遇啊团结之看法展开辩解,那么,Cesare你出什么而说之啊?

Cesare Rocchi

额头,首先,如果当您想要统一Nib或者StoryBoard的时,那直就是噩梦,毫无意义,然后code要水到渠成这个是老大轻松的,作为一个项目经理,我可以掌握地观望昨天代码都做了怎么修改,但是比如Nib或者StoryBoard,我一筹莫展把握其到底做了啊,到底是修补了bug还是促成了某一个作用
再有就是是,你以少数时候也许会见利用Xcode的beta版本来进行工作,你懂Xcode在治本Nibs或者StoryBoard上面并从未那么的智能,当自家打开项目之时,beta版的Xcode修改了少数文件,导致了有着东西都消失了,这即表示你打开StoryBoard之后什么还不曾了,所以任何项目就算全盘崩溃了
其三点即是使Nibs或者StoryBoard会减低我的工作效率,当我以coding的时候,我欣赏保持自己之手放在键盘上面,而无用失去开辟一个nib文件然后去做一些干,然后又以手放回键盘继续coding,这样会下降我之工作效率;还有一些若提的即是,不止一次,特别是在开始之上,我会盯在屏幕,尝试在寻找有是何许人也TMD给此特性设置了价值,谁安装了x或者y,在乌或者是如何设置的等等,That’s
all!

Raywenderlich

So,Cesare说使用code会让他的工作效率更强,Tammy你发什么要说之啊?

Tammy Coron

前额,当您看在nib文件的时刻,你并不需要过多之夺关注那么基本上之特性,它们是怎设置的跟它如何的干,当你下nib工作的上,你只待将公的psd文件处理以后放到nib文件中,这样您一直就可以看到职能,然后你更失去干代码,我怀念说之是行使nib一切都老的飞跃
本身可以app完成以后深入到framework里面,在怪有限的时刻里,在即时个中没代码,只有可视化的素,这样虽可快的深透到screen里,去押您的app是什么连接的,然后又去处理好的代码;但是只要您将全部都因此代码来开用会晤很之繁琐,要失去装这样那样的习性,oh
my
god,简直无聊死了,根本就是在浪费时间;我看不惯使用StoryBoard,使用StoryBoard的人哪怕比如是僵尸一样,一个big
boy不应当去用StoryBoard,额,反正我就是是无喜欢XD

Raywenderlich

So,Felipe你是此最年轻的积极分子,你啊异常喜爱僵尸,你发出什么意见?

Felipe Laso Marsetti

额头,我就是一个僵尸StoryBoard用户,我强烈建议使用StoryBoard,code是特别有必不可少之,有时候你不得不去描绘有代码来完成那些可视化完成无了之做事,比如从定义UI,但是那些还不是常用之,大部分时分以StoryBoard就可满足要求了;使用StoryBoard你可好有利于之失去装元素属性,而非用去理背后繁琐的代码;这具的一体还代表StoryBoard是前景,这是苹果在用之物
终极我思念说,越少的代码就代表越少的火候以bug引入到你的app里面,就恍如发出500履行于定义UI的代码,你可用其减少到100实施,这样您就可以避掉400实践没有必要的代码,这样可以减小bug,而且这么越爱的夺保护你的代码,如果您是单身开发,那么用code或许对您影响不深,但是要你打别人那边接手项目,你虽只能深入钻研这些代码到底做了啊,是什么设置view的,什么继承了呀,以及当nib里面有什么,你居然不可知动用nib去创造一个备static
prototype
cells的tableview,你要去创造一个tableview的子类,新建.h、.m、以及nib文件,然后还错过创造cell的子类,再新建.h、.m、以及nib文件,然后这些cells在tableview当中是独立的,这样你虽只好失去新建一个并且一个之cell;然而当StroyBoard里面,只需要一个tableview,20单cells,然后boom~~,太好了,节省时间,让客户端更简约,更少之bug,而且一切都是在可视化下成功的,你莫用去非鸣金收兵的stop、run、stop、run,然后去押您的nib文件与若的代码,僵尸赢了

Raywenderlich

没错的论证,有相同接触我连连听到的哪怕是,使用可视化的User Interface
Designer,你可免再多的代码,可以减bug,你们怎么对这观点?

Cesare Rocchi

额,在autolayout出现前我会同意这理念,如果让自己对Interface
Builder进行打分(10分制),在过去我会被6分,当autolayout出现之后便不过生3分叉了,我专门恐怖在Xcode4.6上面进行工作,autolayout尝试着以拥有的物混合在一起,造成的情就是若当界面上面无问题,但是以日常情况下就不是您想要之,你恐怕是怀念使给你的视图更粗还是是任何;我只得承认autolayout在Xcode5之后有所改善,但自我本着斯并无是很感兴趣

Raywenderlich

Tammy,Cesare很反感autolayout,你产生什么想说的吗?

Tammy Coron

自一样也不是autolayout的狂热粉丝,我会尽量的将autolayout关闭掉,我于有些品种方面用过autolayout,但自己对autolayout提不起兴趣,你照样可以Nib而未失去动autolayout,所以我以为他的论证是无效的,抱歉XD

Raywenderlich

这就是说Felipe你是怎么对待autolayout的为?

Felipe Laso Marsetti

无你喜不喜欢,autolayout会始终存在在,我们以会见来异尺寸的配备用去适配,iPad
mini、iPhone4、4s、iPad
retina,autolayout可以拉我们去就这些适配,Nin与StoryBoard都足以于您可视化的失行使autolayout,你得挺直观的当屏幕及展开布局,但是要是失去下code,这将会见是同一码特别累的事情
用StoryBoard在debug的时节你得好直观的顾,在Xcode5上,你可以预览自己之布局,一旦您改变布局约束,改变设备的尺寸,你可就就看结果,如果你使用code,你就是只能debug、run、debug、run,非常的累;就个人而言,我啊未是格外之喜欢autolayout,虽然在Xcode5与iOS7之后有所改善,但还未是老大好用,这个我们无能为力,但是无论如何,使用Interface
Builder会好了使用code

Raywenderlich

OK!不错的论据,接下去会没完没了拓展半个钟头之议论,Cesare从你起来

Cesare Rocchi

code是老清晰直观的,你得写了之后这运行,然后得出运行结果,你切莫欲深刻到6个不等之习性编辑器当中,来闹明白这些变量属性等等是安为装置的
末一点自己怀念只要说之凡,Interface
Builder背后之意见是特别不利的,这个看法是思念使给设计师采用来设计UI,不管是Nibs还是StoryBoard都见面受您直观的观看而的app长什么法,就比如在有点上,你不欲发出一个填写在多少的tableview,作为一个设计师,根本就是不见面用一个填写在真正数据的tableview,设计师就想使知道app看起何等,这不光是一个吃设计师的工具,更多之是于那些未思量写尽多代码的coder,That’s
all

Raywenderlich

OK!And Tammy?

Tammy Coron

总的看,我当Nibs是无限好的方案,特别是对有创造力的人头,知道Nibs背后的代码原理是少不了的,但是若干吗而失去浪费时间去跟代码较劲,Nibs非常的劲;至于Story
Board,我无能为力像待VB那样对待她,它就是比如僵尸一样(可能是异类的意)(Tammy后面说了一个僵尸吃大脑的笑,听得不是老大清楚就不曾翻译了)

Raywenderlich

Awsome!Felipe?

Felipe Laso Marsetti

前额,StoryBoard就是鹏程,就像block,就像ARC,就比如一代又一时的Xcode与iOS一样,苹果本将精力都放在了StoryBoard上面,他们并未于Nibs上面更新太多的物,他们尚无更加新成效上,你可坚持使用Nibs或者是code,但是利用StoryBoard你得节约大量之光阴,你可当StoryBoard上做出非常复杂的UI,segues、unwind
segues、custom
segues,你还是可以给StoryBoard与Nibs和code一起干活,更少之bug,你当去尝试一下
但你们很多口尚是当运用code和Nibs,因为你们老执着,你们喜一直的方式,害怕改变,说实话,我于一般工作中间总是在用StoryBoard,我们当大型的合作项目中采用它们,它总是顶趁手的工具
在大多数气象下,就自我之经验而言,我可能是一个青春的僵尸,StoryBoard就是我之家伙,StoryBoard可以完成的从君是可以就此Nibs和code做到,但是切记,这是于苹果于WWDC上面提出来的事物,把StoryBoard和Nibs混合起来会做事之特别好,这即是苹果于召开的工作,StoryBoard就是不过好之家伙,所以,请别阻止你协调失去品尝这同件美好的初技巧,你也许仅仅只是害怕做出改变,你不过需要花一点细微时间,你虽会见感受及StoryBoard的光明的远在

Raywenderlich

Awsome!感谢各位的演说,那么各位有啊问题想咨询之为?

Matthijs Hollemans

要你把有的物都在StoryBoard里面,你不怕得一次性的打明白就等同要命堆的事物,我当像Nibs那么给细分会重复好,允许而采取segue来连接其他事物,你该每次仅处理一个屏幕,这样还兼容你的Xcode窗口大小,然而StoryBoard占用了极致特别之空中

司机

咱俩都知道用StoryBoard可以非常容易的做出一个简短的用,在AppStore当中80%的以都是属于简单用,有过多之开发者都是业余的,包括自吧是,我只是怀念发出了杀好的idea,但非肯定要是做出特别强的app,我怀念StoryBoard就是为这些人准备的
Chris Wagner

顿时是挺好的少数

Tammy Coron

汝可以但是nibs来构建一个StoryBoard,就如您如何收拾自己之种一律,但是我无法想像自己会如以Nibs那样去用StoryBoard,说实话其实自己连不曾怎么下过StoryBoard,所以我对StoryBoard的大部眼光都挺牵强XD

Matthijs Hollemans

自己同样为是一个依视觉的人头,同样我吧喜爱在可视化的角度去干活,Xcode可以转移得较现在愈来愈的可视化,不仅仅是于团Nibs和StoryBoard上面,Xcode还得可视化的开多底政工,举个栗子,可视化的操控UI元素,我再欣赏当Nibs下召开这些业务,我无觉得这种办法(使用Nibs)会为淡化,因为自己看苹果并不曾花尽多之遐思在融洽的开发工具上,它可能仅受了开要使用的极度少功能,特别以同其余的IDE比较起来的当儿,我梦想Xcode在未来会面转移得进一步的可视化

Felipe Laso Marsetti

对等一下!你甚至说苹果没有花心思在开发工具上?╰(‵□′)╯

Matthijs Hollemans

额头,确实,这同片对他们而言并无是充分重点,他们则受了开发者appstore,但是如果她们真正非常注重就无异片,他们相应会受咱们重新多重复实用之工具

Felipe Laso Marsetti

当时是一个值得讨论的地方,核心之题目是,不管而喜不喜欢,autolayout与StoryBoard都见面持续存在,明年WWDC,苹果宣布iOS8,我们拿会看到苹果于StoryBoard以及Interface
Builder上面做的干活,可视化将见面更换得更加的强硬,有同等沾自己索要考虑的就是是是否要以大型项目中选取采取Nibs,StoryBoard是因ViewController为底蕴元素的,而Nibs是为View为根基元素的,一个nib就是一个view,这样以开班下的下会出接触未适于,因为您想使创造一个自定义的view,但是若还要非可知在直接在StoryBoard里面完成
此外关于苹果专注于appstore等题材,这些是真情,但是切记,苹果也确定了一切UI、开发了StoryBoard、Interface
Builder,他们做这同举生态链;另外关于StoryBoard,你得据此来创造非常简单的app,遇到复杂的app,你或会见错过选Nibs,我以为就是漏洞百出的,你依旧会于合之时候遇到冲突;我思念说之是,尝试一下,如果您得帮扶,来我这边,你了解在何可以找到我;使用StoryBoard,你确实可以做出非常复杂的品类,性能问题根本无需去担心,在今日底5暨5s点就越没有必要失去担心这个题目了

Tammy Coron

StoryBoard让我备感辛苦的是,你只能以祥和的app上面创建于定义views,为什么自己一旦浪费时间去行使StoryBoard,我之所以Nibs就得了搞定了

Felipe Laso Marsetti

盖StoryBoard可以重新好的军事管制而的视图,当用户以app里上视图与归视图,你的控制器就是一个scene,所以您得更可视化的待遇这些,你可知晓的亮好会被带动及那边去,自定义之view是独立的片段,你可以采用一个nib创建一个自定义的view,然后用好频繁,同样要记住,StoryBoard允许而用你的控制器而非用当StoryBoard里面又的去创造这些,你居然可以使code来创造,你切莫应有让限制到这里面去,当您成nibs去行使StoryBoard的时节会更加的帅

Tammy Coron

自己吗堪经过看在品种之导航部分来保管好的品类,这是本身之率先个视图,这是自我的第二单视图,等等,我待找到一个异常好的理为我错过动StoryBoard,我同意关于StoryBoard就是鹏程之见识,不管我们喜不喜欢,autolayout就是未来底矛头,但是自真要命不便喜欢上StoryBoard

Felipe Laso Marsetti

此地发出一个那个好的例证,我去年接班了一个门类,包含了五六十独ViewController,并且有雷同可怜堆的nibs,在自开始贡献代码之前我只好去深入内部去研究这些事物,因为此路未是本人写的,这个类别都举行了1-2年了,在正开之几只月我了迷失在此路中,我不得不去搞明白这些nib文件中的关系,这实则是杀不方便
但一旦自身产生一个StoryBoard,那么所有还拿会清晰明了,这会省去成千上万的时光;所以你该至少用StoryBoard来创造app的布局,然后重新夺具体的打造有从定义的酷炫UI,采用擅自一种而喜爱的措施;当你接一个大型项目的上StoryBoard确实会协助您忙

红衣大叔

自我参与的品类有百万推行之代码,几百只视图,我无懂得我们是不是用去动StoryBoard,不过我会去尝尝一下,你说的那个科学

Cesare Rocchi

额头,我曾经产生两三年从未失去举行大型项目了,当自己仍记得那时候的痛,比如失去处理千头万绪的结构体,就算了使用code来举行的门类,要去处理这样那样的结构体也是一律项非常窘迫的政工,其实自己也如出一辙是一个乘让视觉的人数,但是自己连无思在Xcode上面盖可视化的花样来开项目,我再次爱以PhotoShop或者Sketch上面去举行这些工作,做一个妙之coder,你必须使理解各种东西,这是一个view这是一个button,这个是不是更的灵敏等等,这便是为何我打开Xcode的时段,我希望自己的首先独视图是一个空的沙盘
于自我的达到一个品种当中,我于一个好有些的有采用了NavigationController,但是自长的是自身自从定义的一个NavigationController,这是一个自定义度很高之一个app,在此项目内,我了看无生哪里好用StoryBoard,我还是因此代码把全路搞定,非常之简练,而且好十分好的选定它们,我做的且是自定义度很高的app,唯一一个施用及之视图模板就只有tableview

红衣大叔

以自之更看来,客户常常会面让我Photoshop文件,告诉我立即就是是app要拘留起的旗帜,然后您起来勾画代码,可能还发另的不二法门,但是自当写代码是一致种植轻松的方法

Felipe Laso Marsetti

自自我的涉无法掌握当客户端合作开发的时光会发什么,但是你收获一个Photoshop文件,你得一个要求文档,然后针对你说立刻就是app要扣押起的样子,然后视图A到视图B是哪些的,视图B到视图C又是什么样的,把这些开出来,告诉您定期,然后拜拜
额头,你使用code或者Nibs来做会很非常,但是若得用StoryBoard来做这些事物,就算是非常复杂的UI也得做到;在自的商店中,经常会面生出于定义UI的急需,我们兴许需要使用非常多的工具,包括code甚至是PaintCode,以及其他可以变动可视化的UI的工具,Nibs或者是StoryBoard,能够使StroyBoard我会非常的欢喜,可以看看好下了StoryBoard完成了一个发生一个的职责

Brian Moakley

我们谈谈了autolayout,讨论了StoryBoard,并且现在觉得她就是鹏程,但是,一年后,我们或以会说其他的事物是鹏程,所以,我们应该还考虑我们的app到底是何许运转的,知道这些新技巧真正十分对,可以增进我们的工作效率,但是自己眷恋,懂得怎么使code来完成所有业务是好睿智的

Felipe Laso Marsetti

iOS7让了大家各种各样的机错过尝尝StoryBoard,甚至是Nibs,如果你拒绝使用StoryBoard,可能以若本会用相同种植截然不同让与过去之计来创造app;既然你现在来一个机会来解脱原来那烦的付出过程又尝试新的家伙及采用iOS7拉动的全新UI,为什么不尝试一下乎?

红衣大叔

一个挺好之品StoryBoard的理就是下StoryBoard可以动态调节尺寸来适应不同之设备,而autolayout将会是极度好之化解方案

Cesare Rocchi

自己连无喜欢StoryBoard或者是Nibs,但是本人不得不去了解其,特别是自当教学的时光,不管是教autolayout还是Nibs,我还见面建议您错过学怎么运用代码来就即一切,Nibs或者是StoryBoard做了累累之做事,你相信着这些工具,但是也非清楚她背后的代码原理是啊,它们当背后做了呀事情,这大糟糕;如果你想要成为平等叫作专业的iOS开发者,我眷恋你尽好理解各种各样的开发方法,无论是StoryBoard、Nibs还是code

Felipe Laso Marsetti

这边发出一个挺好的例证来证实明code的点子要命重点,有好多丁常会面问有问题即是为何我的视图无法切换、为什么dataSource不起作用等等,知道怎么用code会很好的佑助而解决这些题材,一旦你了解什么使code,那你下StoryBoard或者是Nibs将会见是只要鱼儿得和,知道code确实挺的第一

Matthijs Hollemans

于Nibs或者是StoryBoard中以autolayout是杀好掌握的,使用code来描写约束好简短,但是大部分时分还不曾意义,但是要您以Interface
Builder里面做这些,它会告诉你怎样的约是发出含义之,它会告知你哪里应该加约束,哪里不应该加;在Nibs或者StoryBoard里面做这些使比使用code更好

Felipe Laso Marsetti

明白code确实充分有必要,大部分人当开iOS开发之早晚不知道语言背后的片段法则,这可能会见导致局部荒唐,或是内存泄露等等,同样的情况呢会以运用StoryBoard或者是Nibs的下起,虽然应用这些家伙开发起来会十分之惠及,但是要你莫亮堂背后的代码原理,你恐怕会见当debug的时光遇到困难

Raywenderlich

这就是说接下去是投票环节了,Nibs、StoryBoard、code,你会选取啊一个?

Brian Moakley

StoryBoard

Cesare Rocchi

Code

Matthijs Hollemans

StoryBoard

红衣大叔

StoryBoard

Felipe Laso Marsetti

从不必要问我

Chris Wagner

StoryBoard

Raywenderlich

自吗同是StoryBoard

Tammy Coron

额头,我挺喜爱Nibs,所以我会选择Nibs,但是只要要本人以Nibs和code间做一个摘取,我会选择code,因为code可以做其他工作

Raywenderlich

OK!看来各位大部分都是选了StoryBoard

总结

纵使笔者个人而言,三栽方法本身还品尝过,个人还偏爱采用code,当然根据不同的场面我会结合各自的独到之处进行开;如上所述,StoryBoard是鹏程,虽然还有不够全面的地方,但是相信苹果会将那举行的尤为好,
StoryBorad也会慢慢显现出它们的魅力

拓展阅读

代码手写UI,xib和StoryBoard间的对弈,以及Interface Builder的局部稍技巧
http://t.cn/8kdcjt6

相关文章

admin

网站地图xml地图