Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/36.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
iPhone开发的陷阱_Iphone - Fatal编程技术网

iPhone开发的陷阱

iPhone开发的陷阱,iphone,Iphone,在开发iPhone应用程序时,有没有关于陷阱的指导方针可以避免 当然可以,成千上万。任何软件开发都是如此。不幸的是,列举它们最简单的方法就是把它们写在一张纸上,同时等待一个友好的灵魂将你从你刚刚坠入的灵魂中释放出来 然而: 不要试图重新发明轮子。iPhone API非常完整——您只需查找所需的工具。事情并非总是按照您期望的方式实施。仔细阅读指南。查看教程并分析它们是如何工作的。(试着在教程中的这里或那里改变一行,看看改变会带来什么不同。)在iPhone开发的一年中,我犯的最大错误是没有尽全力找到

在开发iPhone应用程序时,有没有关于陷阱的指导方针可以避免

当然可以,成千上万。任何软件开发都是如此。不幸的是,列举它们最简单的方法就是把它们写在一张纸上,同时等待一个友好的灵魂将你从你刚刚坠入的灵魂中释放出来

然而:

  • 不要试图重新发明轮子。iPhone API非常完整——您只需查找所需的工具。事情并非总是按照您期望的方式实施。仔细阅读指南。查看教程并分析它们是如何工作的。(试着在教程中的这里或那里改变一行,看看改变会带来什么不同。)在iPhone开发的一年中,我犯的最大错误是没有尽全力找到iPhone的做事方式

  • 不要忽视内存管理;尽早经常掌握它。使用Instruments中的对象分配和泄漏工具经常检查内存泄漏。我建议您在完成每个功能或视图后进行检查;如果你不停地发现bug,那就更频繁了。最终,你可能会很好地理解它,你可以停止这样做

  • 不要只使用默认的构建设置。和他们一起玩,了解他们在做什么。确定认证和分发。快速进入开发人员程序--可能需要一段时间才能完成该管道。[当您收到需要续订的通知时,请立即启动该通知,因为该流程存在问题。]

  • 不要忽视仔细阅读人机界面指南(HIG)。如果他们说不要做某事,不要做。苹果将拒绝滥用其图像的应用程序

  • 不要吝啬于营销。是的,应用商店会把你的应用放在数百万人面前。。。理论上。但登上头版的可能性很小。App Store上有很多很棒的应用程序,但由于没有人知道它们,所以销量不高

  • 不要停留在你的荣誉上。如果一项新技术问世,看看它是否能让你的工作更轻松;如果是的话,花点时间去学习。个人示例:我刚刚尝试从基于SQLite的数据管理切换到核心数据,因为我在开始最近的项目时很匆忙;现在我真希望我能慢下来好好想想

  • 不要进入您的设计思维(例如,“我如何用表视图实现我的概念?”表视图确实适用于许多信息和实用程序,但不受限制。相反,想想用户希望做什么,你如何让他们更容易——把要一起使用的东西放在一起,等等。如果你从来没有探索过用例的概念,请仔细阅读它们

  • 不要犹豫,构建复合视图。我在这里看到的关于堆栈溢出的许多问题都与在表的顶部放置工具栏或在文本字段的背景中放置图像有关。我理解以简单的方式做事的愿望,正如我在上文第1条中所述,如果有简单的方式,就使用它。但在许多情况下,解决方案只是将两个视图分层,并具有适当的位置和透明度


  • 想想苹果从一开始就批准了什么

    是几个有助于了解苹果大部分未记录标准的有用网站之一。(上一项质询)

    以下是几个简单的例子:

    • 使用
      UIWebView
      可以让你的应用获得17+的评级
    • 使用未记录/专用API编码=拒绝
    • 版本号<1.0可能=被拒绝
    • 关于网络成功/失败的反馈不够=拒绝
    • 网络使用过多=被拒绝
    • 明确限制免费版本与完整版本=拒绝
    • 应用程序名称中的“iPhone”一词=已拒绝

    上面的链接包含更多的示例,以及关于这些示例的更多详细信息。

    不要忽略编程指南。虽然文档相当广泛,但编程指南包含了大量有用的提示和“内幕”信息,这些信息是无法从阅读方法定义中获得的。我花在阅读一项技术(比如核心数据)的指南上的时间和我实际实现它的时间一样多


    不要以为你知道一个方法是做什么的。如果您对某个方法的功能有任何程度的怀疑,那么花时间在文档中查找它以进行验证是非常值得的。

    上面@Amagrammer中的精彩示例

    我想补充一点,首先要开始的是iPhone的开发是Photoshop。这仍然是我能给刚起步的人的最好建议。我现在使用OmniGraffle,因为它有很棒的模板

    我发现,即使是超级简单的应用程序,也要起草原型,寻找可用性问题和工作流程问题。重新绘制应用程序比重新编写应用程序快100倍。我已经多次陷入这个陷阱,现在我实际起草了一些非常简单的功能,看看它会是什么样子和感觉


    这条建议将为你节省10秒甚至100秒的时间,希望你第一次就把你的应用程序做好,让你思考问题所在。扔掉代码很糟糕,我这么做不是因为代码不好,而是因为它使可用性或解决方案变得更糟。我认为我们中的佼佼者最终会扔掉代码,而原型化设计肯定会有助于你在一开始就不必构建RTFM

    如果你没有一个优秀的设计师,你自己也做不出优秀的设计,那么就不要开始iPhone应用程序的开发。这条规则只适用于你想/需要通过你的应用赚钱的情况。

    我只能衷心支持所有这些,并且给出了那些问题