当然,成千上万个。任何软件开发都是如此。不幸的是,最简单的列举它们的方式就是在等待友善的灵魂将你从刚刚陷入的困境中解救出来的时候,在纸上写下它们。
但是:
不要试图重新发明轮子。 iPhone API 非常完整——你只需要寻找需要的功能。事情并非总是按照你的期望实现。仔细阅读指南。查看教程并分析它们的工作原理。(尝试在教程中更改一行或两行代码,以了解更改带来的差异。)我在一年的 iPhone 开发中犯的最大错误是没有努力去寻找做某些事情的。
不要忽视内存管理;早日掌握并经常使用它。使用 Instruments 中的对象分配和泄漏工具频繁检查内存泄漏。我建议在完成每个功能或视图后进行检查,并在发现 bug 时更频繁地进行检查。最终你可能会对它有深入的了解,可以停止这样做。
不要只使用默认的构建设置。玩弄它们以了解它们的作用。弄清认证和分发。 快速加入开发人员计划——可能需要一段时间才能完成。[ 当收到需要更新的通知时,立即更新——该过程存在问题。]
不要忽视仔细阅读人机界面指南 (HIG)。如果他们说不要做某件事——千万不要做。苹果将拒绝滥用他们的图标的应用程序。
不要节省营销费用。是的,App Store 将你的应用程序展示在数百万人面前……理论上。但被放在首页的几率很小。 App Store 上有许多优秀的应用程序因为没有人知道它们而没有卖出很多。
不要止步于过去的成就。如果有新技术出现,要发掘它是否能让你的工作更容易;如果可以,花时间学习它。个人例子:我现在才尝试从基于SQLite的数据管理转换到Core Data,因为在开始我最近的项目时时间很紧迫;现在我希望我当时能够放慢脚步并好好考虑一下。
不要陷入自己的设计思路中(比如)“我如何使用表格视图来实现我的概念?” 虽然表格视图对于许多信息和实用类应用程序来说很自然,但不要被束缚。相反,想想用户将想要做什么,如何使其更容易-把可能一起使用的东西放在一起等等。如果您从未探索过用例的概念,请阅读相关资料。
不要犹豫建立复合视图。Stack Overflow上我看到的许多问题都涉及将工具栏放在表格顶部或在文本字段的背景中放置图像。我理解想要以简单的方式完成任务的愿望,正如我在上面提到的第1条,如果有简便的方法,请使用。但是在许多情况下,解决方案只是将一些视图层叠在一起,并适当地放置和透明度。
考虑一下从一开始就可能得到苹果认可的内容。
App Rejected 是几个有用的网站之一,可以帮助理解苹果主要未记录的标准。 (还有一个.) (关于应用商店拒绝原因的先前问题。)
以下是一些快速的例子:
UIWebView
可能会使您的应用程序获得17+评级。以上链接包含更多例子以及这些例子的更多详细信息。
以上来自@Amagrammer的精彩示例。
我想补充的是,在iPhone开发中,第一步应该从Photoshop开始。这仍然是我能给任何刚入门的人的最好建议。现在我使用OmniGraffle,因为它有很棒的模板。
我发现即使是超级简单的应用程序,也要绘制原型并寻找可用性问题和工作流问题。重新绘制应用程序比重新编码快100倍。我曾多次陷入这个陷阱,现在实际上绘制了一些非常简单的功能,以查看它的外观和感觉。
这些建议将节省您10到100个小时,希望第一次就正确地获得您的应用程序,并让您思考问题所在。丢弃代码很糟糕,我曾经这样做过,不是因为代码不好,而是因为它使可用性或解决方案变得更糟。我认为我们中最好的人最终都会放弃代码,并且原型设计肯定会有所帮助,使您不必首先构建某些东西而必须阅读说明书。
如果你没有一个优秀的设计师,也不能自己做出优秀的设计,那么就不要开始iPhone应用程序开发。这个规则仅适用于你想要/需要通过你的应用赚钱的情况。