我正在慢慢学习如何在 Xcode 和 Objective-C 中构建应用程序,并且我一直在阅读这篇博文 http://blog.teamtreehouse.com/why-i-dont-use-interface-builder关于在不使用 Interface Builder 的情况下编写 Cocoa Touch 应用程序的信息,以及这篇博文 http://berzniz.com/post/32597579083/8-reasons-why-real-men-do-use-interface-builder关于人们如何尽可能地使用 Interface Builder。
我发现自己更倾向于避免使用 Interface Builder,因为如果只是纯代码,我可以更快地发现问题,而且在这一点上,我比使用 Interface Builder 更熟悉编写代码。
所以我正在考虑完全避免使用 Interface Builder。但在此之前我想了解以下内容:
是否有什么时候您绝对必须使用 Interface Builder?有什么是没有它就不可能实现的吗? (我知道事实恰恰相反。)
我可以采用哪些实践来帮助我不错过 Tal Bereznitskey 概述的使用 Interface Builder 的优势。我特别想到他提出的关于更容易维护、更容易原型设计和更改内容的观点。
完全忽略 Interface Builder 会让我在未来构建应用程序时处于不利地位。如果我只坚持编写代码,我希望将来开发的复杂应用程序会变得更加难以开发吗?
我目前只是自己构建应用程序,但是当我开始与其他开发人员合作时,我会处于明显的劣势,因为我从未学习过如何使用 Interface Builder,或者我只知道如何编写代码就可以了吗?
我的发展经验以及IB的优缺点:
首先让 IB 消除复杂性,因为复杂性会阻碍学习只能用代码表达的核心概念。事实上,虽然 IB 隐藏了原本显而易见的连接(因此易于学习和调试),但总的来说,它在删除无关代码方面做得很好。
一旦您对 Objective-C 和 cocoa 感到更加熟悉,那么尽可能多地了解视图层次结构和 UI 元素的工作方式是有益的,而无需使用 IB。我认为在 IB 中没有什么是你不能做的,但是当以编程方式处理时,肯定有很多事情会更加灵活和强大。
从那时起,一旦您了解了底层功能,您就可以重新使用 IB 并让它节省您的时间和精力,否则您将使用设置 UIKit 元素的许多属性。
解决您对错过的担忧。我想说需要一些时间来学习 Storyboard(一种规划 UI 的集体方法)和 XIB/NIB 文件(其中单个 UI 文件与单个视图控制器关联)。故事板较新,很多人(包括我)都不太能完全理解它! NIB 和 XIB 更强大/不太明显,但仍然非常重要,因为有些东西在 Storyboard 中效果不太好。
在与其他人合作方面,IB 可能会让版本控制变得很痛苦,因为 IB 文件的 Plist/Backing 并不总是能很好地进行合并等...但是我想说,如果您是从学习的角度出发的话先写代码,再学习 IB 会更容易,反之亦然。在团队中工作最重要的规则是不要害怕提出问题。您的代码技能将帮助其他人,而其他人反过来也可以帮助您进行 IB。
希望有帮助。
Ray Wendlerlich 网站上有很棒的教程,请用 google 搜索他。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)