codecamp

接下来做什么

在《 马上着手开发 iOS 应用程序》中,您学习了 iOS 应用程序开发的基础知识。现在,应该可以开发出您第一个功能完整的应用程序了。虽然将一个简单的概念转变成应用程序,再发布到 App Store 绝不简单,但是您在本文中学到的流程与实践,将帮助您找到正确的方向。

关于接下来做什么,这里有一些提示:

注册为开发者。

《 iOS Human Interface Guidelines》(iOS 用户界面指南)会指导您如何让应用程序符合 iOS 用户界面规范。

学习语言。

《App Programming Guide for iOS 》(iOS 应用程序编程指南)讲解了在开发 iOS 应用程序时,您必须要了解并做到的基本事项。

了解可用的技术。

《Xcode Overview 》(Xcode 概述)中的“Debug Your App”(“调试您的应用程序”)会教您如何在 Xcode 中彻底调试和测试应用程序。

发布应用程序。

<a rel="nofollow" href="https://developer.apple.com/library/ios/documentation/IDEs/Conceptual/AppDistributionGuide/Introduction/Introduction.html#//apple_ref/doc/uid/TP40012582" "="" style="box-sizing: border-box; color: rgb(45, 133, 202); text-decoration: none; background-color: transparent;">《App Distribution Guide》(应用程序分发指南)会带您逐步完成这些过程:预备测试设备,提交应用程序到 App Store。

让 ToDoList 应用程序提高一个档次

您刚创建的待办事项列表应用程序得益于多个内建行为。您可以继续体验此应用程序、巩固理解,或者开发一些新东西。如果要继续做待办事项列表应用程序,需要探究以下几个方面:

  • 现在退出并重启应用程序时,待办事项列表会消失。不妨探索一下让列表不消失的方法。
  • 您为应用程序中的所有控制都使用了默认外观。UIKit 包括了许多控制自定外观的功能。不妨使用该技术体验一下不同的用户界面选项。
  • 您已经可以让用户将项目添加到列表,并将项目标记为已完成,但用户还无法删除项目。表格视图具有支持编辑功能的内建行为,包括删除和重新排列行,您可以考虑集成到应用程序中。

随着 iOS 应用程序开发的继续,您将发现还有非常多的概念和技术需要钻研,包括本地化、可访问性和外观自定。就从您感兴趣的方向开始吧。记得边学习概念边学以致用。遇到有趣的新技术、框架或设计模式时,不妨写一个小应用程序来测试它,要大胆尝试。

开发应用程序涉及到方方面面,您可能会对此感到畏惧,但按本文稿中讲述的“分而治之”方式来做的话,会发现很快就能发布您的第一个应用程序了。在 App Store 中发布应用程序后,您可以不断地加入更多功能。只要不断创新,就能引起客户的注意,让他们对您的下一个杰作翘首企盼。

查找信息
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }