2010-10-12 73 views
2

对于我的工作,我已经写了一个iPad应用,用户可以将数据输入,查看一些图片,等,这是一直困扰我,我reaaaallly在缓慢obj中写-C和我发现自己陷入了用户界面(一个例子是我总是需要放入一个耗时的UITableView ......)我认为我对语言和Apple SDK有很好的处理能力。提示快速的iPhone/iPad的开发

有没有人有关于如何加速从UI角度的开发过程的任何提示?是否有替代工具xCode和IB?有没有更快的程序设计类库?任何认识,

MJ

+0

我认为我的问题的一部分是,由于屏幕房地产是如此有限,我发现自己构建了很多,很少的控制屏幕。我一直都不能抽象它们,因为它们都是如此不同。 – 2010-10-12 18:25:15

回答

5

如果您学习使用Interface Builder,Interface Builder已经可以大大加快您的开发速度。例如,请参阅custom table cell with IB tutorial

例如,在我目前的雇主中,我见过一个Cocoa Mac OS X应用程序,其中设置对话框完全在IB中完成......没有代码用于修改或同步NSUserDefaults中的值界面元素,一切都在IB完成。

而且,看到这个有趣的文章:Striking the Balance: Interface Builder vs. Code

+0

同意10000%。最糟糕的事情是在Interface Builder上退出。我已经看到了用代码编写的全部接口的应用程序。完全浪费时间,很难阅读,难以编辑。 – 2010-10-12 17:52:39

+0

这是一个半相关的问题。当我执行我的用户界面时,我遇到了类型安全问题。 5分钟前刚刚发生的一个例子是,我有一个NSMutableArray,用于存储X类型的对象。我不小心输入了Y类型。自然在运行时,我崩溃了,因为我试图调用一个函数关于obj不支持的对象。我可以使用哪些技巧来使代码更安全? – 2010-10-13 00:12:32

+0

对不起,除了“小心”:-)或者当你从数组中拉出某些东西时,请检查'respondsToSelector:'你想调用的方法是否确实存在于对象上。也许会问有经验的Java或.NET开发人员,然后才开始使用泛型,他们面临同样的问题。 – DarkDust 2010-10-13 06:15:53

2

避免的UITableViewController如果您还不是。

为加快开发的TableView,我始终保持一个非常通用的实现TableView中得心应手,我可以从复制和粘贴片段。

如果您经常为不同的对象类型执行TableView,请尝试使用协议来使实现更加均匀。

不要害怕UIViews作为子视图,而不是不断地使用UIViewControllers。有时候VC只是一个额外的复杂层,你不需要。

我的经验是,你可以做一个iPhone开发最重要的事情变得更高效是知道什么时候,当不使用控制器,因为这样做复杂的界面时,反对意见。

希望我能更具体,但你的问题有点模糊...有什么不妥界面生成器,它只是一个陡峭的学习曲线。