你是否想要开发 Mac 应用程序却又不知道从哪里入手?本路线图提供了 Mac 应用程序开发的绝佳起点,即使你已经是一个 iOS 开发专家,本路线图对你依然适用。Apple让开发应用程序和提交应用程序到 Mac App Store 变得简单。遵循本路线图以了解如何取得开发工具,理解主要概念及最佳实践,并学会查找更多信息。

继续遵循此路线图,你将使用到 Xcode(Apple 提供的集成开发工具)来开发 Mac 应用程序。你将了解 Objective-C(驱动所有Mac应用程序和框架的程序设计语言)的编程基础知识,并将探索 Cocoa 框架。最后,你还会学到如何将应用程序提交到 Mac App Store。

路线图中的每个页面,都介绍一个新主题,并链接到一篇或多篇有关该主题的简短文章。路线图只是提供基本的入门知识,最后一页“接下来做什么”包含你接下来应该阅读的文稿链接。完成了路线图,你就具备了进一步了解各个主题的能力,并且掌握到着手开发 Mac 应用程序的知识、工具和技能。

如果你是 iOS 开发者:你其实已经掌握了不少开发Mac应用程序的知识。在路线图的学习过程中,重点关注平台的差异性。因为尽管 iOS 和 OS X 使用相同的开发工具和开发语言,两者仍然存在着一些重大的差异。

设置

你在开发应用程序时,会使用到 Xcode,即 Apple 的集成开发环境 (IDE)。Xcode 为开发完美的 Mac 应用程序,提供了你所需要的一切。它包括源代码编辑器、图形用户界面编辑器和许多其他功能。大多数应用程序开发工具集中显示在一个窗口中,Xcode 称之为工作区窗口。在此窗口内,你可以顺畅地从代码编写转换到代码调试,再到用户界面设计。

开始之前:

  1. 下载最新版本的 Xcode。

    在 Mac 上打开 Mac App Store 应用程序,搜索 Xcode,然后点按“免费”按钮下载 Xcode。(Mac OS X v10.7 以及更高版本已经预装 Mac App Store 应用程序。如果你使用的是较早版本的 Mac OS X,则需要升级。)

  2. 加入 Mac Developer Program 成为 Apple 开发者。

    加入该计划后,你可以访问分发应用程序的所有工具和资源,在本路线图后面你将了解关于这些工具的更多信息。

马上开始

开发优秀的 Mac 应用程序,需要大量的学习和实践。不过,有了这些工具,开发一个简单可用的程序并非难事。“你的首个 Mac 应用程序”教程,介绍了这些工具、基本设计模式和应用程序开发过程。通过这个教程,你将创建一个类似音量控制器的程序,可以通过多种形式的输入来控制一个控制器。本教程中的简单步骤引入了一些简练实用的概念,将在今后的程序开发中不断地用到。

“你的首个 Mac 应用程序”是路线图中最长的文章,但请不要仓促地完成它。它为你在后面将详细学习的概念奠定了基础。其他每篇文章,都是围绕当中某个概念再深入说明。

立即学习本教程:你的首个 Mac 应用程序”告诉你,如何在 OS X 开发环境中,创建一个简单的应用程序。完成教程后,可返回本页继续学习《马上着手开发 Mac 应用程序》。

工具

Xcode 提供整套管理开发工作流程的工具——从创建应用程序、设计用户界面,到测试、优化,并将其提交到 Mac App Store。你可以自定 Xcode,来符合你的工作风格,让你专注于手头的任务。

“你的首个 Mac 应用程序”向你展示了如何创建新项目、添加用户界面元素,以及编辑源代码。创建应用程序后,你可使用 Xcode 来测试和调试源代码、分析和改进应用程序的性能、执行源代码控制操作、归档并将应用程序提交到 Mac App Store 等等。

立即阅读此文章:“在 Xcode 中管理工作流程”向你展示 Xcode 用于 iOS 应用程序开发的重要功能。

程序设计语言

Objective-C 是一种简洁的、面向对象的程序设计语言,所有 Mac 应用程序都由它来驱动。你需要编写 Objective-C 代码来创建应用程序,同时你需要懂得该语言,才能使用大多数的框架。尽管你可以使用其他编程语言来开发,但不使用 Objective-C 就无法生成 Mac 应用程序。

Objective-C 是一种简单的程序设计语言,其语法和规范简单易学。如果你有其他面向对象程序设计语言(例如 Java 或 C++)的编程经验,那么它对你来说,将更容易上手。如果你是 C 语言程序员,你会发现熟悉面向对象编程和 Objective-C 后,应用程序的设计和修改变得更加容易。

立即阅读此文章:编写 Objective-C 代码”教你 Objective-C 的基本语法,包括类声明、方法、发消息和声明属性。Mac 和 iOS 应用程序都可用 Objective-C 来开发。如果你是 iOS 开发者,那么基本语法对你来说已经不是问题了。

基本任务

现在,你学到的 Objective-C 的知识,足可用来阅读和编写基本代码,你可以开始以对象的方式来考虑问题了。如同思考现实世界中的对象一样,你应该思考一个对象包含什么内容,可以用来做什么,以及如何与其他对象关联。

要创建 Mac 应用程序,你需要了解如何创建对象、比较对象、查询对象的相关信息,以及访问数据集(如数组)中的对象。掌握这些技能后,你就可以编写更复杂的 Objective-C 代码了。

立即阅读此文章:掌握基本的编程技能”描述 Objective-C 编程的基本任务。本文解释的概念在 Mac 和 iOS 开发中基本相同。

框架

应用程序由你编写的代码和 Apple 提供的框架组成。框架包含方法资源库,供你的应用程序调用。多个应用程序可同时访问一个框架资源库。

你开发的应用程序都会链接多种框架。你可以通过框架的应用编程接口 (API) 来利用框架。API(已发布在头文件中)指定可用的类、数据结构和协议。Apple 编写的框架,预计了你可能想要实现的基本功能。使用框架既省时省力,又可确保代码高效、安全。系统框架是访问底层硬件的唯一途径。

立即阅读以下文章:
研究主要框架”描述应用程序开发中最常用的框架。它还简要阐述了 OS X API 和 iOS API 之间的一些异同点。
将代码与框架整合”描述 Objective-C 框架中的方法种类,并解释如何将应用程序代码与框架代码整合。尽管 OS X API 和 iOS API 之间存在不同之处,但应用程序和框架之间的关系通常相同。

设计模式

设计模式可以解决常见的软件工程问题。模式是抽象设计,而非代码。采用一种设计,就是应用它的通用模式来满足具体需求。

不管是创建哪种类型的应用程序,你都应该了解框架中使用的基本设计模式。了解设计模式有助于更高效地使用框架,并且可让你编写的程序复用程度更高、扩展能力更强和更容易修改。

立即阅读此文章:采用设计模式使你的应用程序合理化”描述关键的设计模式,并解释如何在应用程序开发中使用这些模式。这些设计模式在 OS X 和 iOS 中基本相同。

用户界面设计

仅仅创建一个能用的应用程序是不够的,用户期望的 Mac 应用程序是直观易用、交互性强和引人入胜的。在设计应用程序时,从选取的功能到应用程序响应手势的方式,每个方面都要考虑用户体验。

用户或许不知道用户界面的设计原则,但是应用程序有没有遵循指南,他们是可以分辨出来的。请遵循《OS X Human Interface Guidelines》(OS X 用户界面指南)中清楚说明的原则和约定,为你的产品设计最好的用户界面和用户体验。

立即阅读此文章:从用户角度进行设计”阐述了如何创建具有卓越用户体验的应用程序。本文稿介绍编程时需遵循的指南,但不涉及如何在代码中实现设计。大多数 OS X 指南,都与 iOS 的不同,因为移动设备上的应用程序,在本质上是不同的。

应用程序设计

程序不会自动生成,它们不仅与运行的环境密切相关,还需要用到 OS X 系统提供的特性。用户期望看到你的应用程序像系统自带的邮件、日历、计算器程序一样运行。要实现程序的功能,你需要了解它背后的技术以及怎么样来使用这些技术。

在你想好你的应用程序应该提供哪些功能后,你就需要决定以什么样的显示来展现出来。你的应用程序是一个但窗口的实用程序还是基于文档的多窗口应用?这些设计的决定直接影响程序的结构。所有的 Mac 应用程序都是基于一组核心应用程序对象构建起来的,在你能够定制这些对象来实现你应用程序的功能前,你需要理解它们是怎样协同工作的。

立即阅读此文章:
"满足用户的期望"展现了一些你程序中需要考虑的主要的 OS X 特性和技术。
了解你的应用程序的核心对象”叙述作为所有应用程序的一部分的重要框架,以及它们是如何协作。

Mac App Store

您目前所读到的信息主要描述在 Xcode 中创建应用程序的方法。然而,要在 Mac App Store 上发布应用程序,您还需要进一步了解相关内容。

测试和改进应用程序后,你需要将你的工程打包这样别人才能在他们的电脑上安装和运行。你需要创建证书来授权开发者给应用程序签名,以及创建 App ID 来标识应用程序,然后还要收集你需要在 Mac App Store 展示的信息。你通过 Xcode 来提交应用程序,你的应用程序必须通过 Mac App Store 审查人员审批之后才能正式发布。

立即阅读此文章:"准备提交到 Mac App Store"描述为 Mac App Store 开发应用程序的管理方面的任务。

查找信息

开发应用程序时,需要能轻易得到详细的技术信息。Xcode 可让你在编程时轻松查找到所需信息。

Xcode Quick Help 显示简明的参考信息,不会分散您对正在编辑的文件的注意力。请点按符号、界面对象或生成设置,以查看更多信息。按住 Control 键点按 Xcode 本身的各个区域,获得任务导向的说明,介绍如何执行常见操作。每篇帮助文章都提供逐步的指导,并且通常包括视频或插图来进一步说明。

Xcode 中的“Documentation”管理器,提供深入的编程指南、指导教程、示例代码、开发者工具使用手册、详细的框架 API 参考,以及由 Apple 工程师讲解的视频演示。“Documentation”管理器提供了一个一体化视图,可在其中搜索和浏览所有 Apple 开发者文稿。OS X Developer Library 也在网上提供。

立即阅读此文章:快速查找文稿”图解如何使用这些重要的文稿资源。

接下来做什么

祝贺您,您已学完《马上着手开发 Mac 应用程序》中的所有内容,并阅读了所要求的关联文章,现在可以进行 Mac 应用程序的开发了。但是,要成为高效多产的 iOS 开发者,首先,应该加入 Mac Developer Program。然后,您就可以从 Mac Developer Library 下载示例应用程序项目,并从中了解各个方面是如何配合工作的,从而深化已学到的知识和技能。

阅读以下文稿来增进你的 Mac 应用程序开发知识

  • Mac OS X Technology Overview》(Mac OS X 技术概述)介绍可在 OS X 应用程序中使用的框架和其他技术。
  • OS X Human Interface Guidelines》(OS X 用户界面指南)教你如何让你的应用程序符合 OS X 用户界面规范。
  • App Distribute Guide》(应用程序分发指南)带你完成向 Mac App Store 提交应用程序的过程。
  • Programming with Objective-C》(使用 Objective-C 编程)描述如何使用 Objective-C 程序设计语言定义类、发送消息、封装数据,以及完成各种其他任务。
  • Mac App Programming Guide》(Mac 应用程序编程指南)讲解在开发 Mac 应用程序时,你必须要了解并做到的基本事情。

PS: 本来以为和iOS路线图有很大差别的,结果发现大部分情况下只需要将 iOS 换成 Mac 或 OS X,但是既然开始,就坚持弄完吧!

参考链接:

Start Developing Mac Apps Today: https://developer.apple.com/library/mac/referencelibrary/GettingStarted/RoadMapOSX/chapters/01_Introduction.html

马上着手开发 iOS 应用程序 (Start Developing iOS Apps Today) : https://developer.apple.com/library/ios/referencelibrary/GettingStarted/RoadMapiOSCh/chapters/Introduction.html

Posted by TracyYih - 2013-10-30
如需转载,请注明: 本文来自 Esoft Mobile

马上着手开发Mac应用程序的更多相关文章

  1. 马上着手开发ios应用程序

    https://developer.apple.com/library/ios/referencelibrary/GettingStarted/RoadMapiOSCh/chapters/Introd ...

  2. 马上着手开发 iOS 应用程序

    https://developer.apple.com/library/ios/referencelibrary/GettingStarted/RoadMapiOSCh/chapters/Introd ...

  3. 10款Mac上程序员装机必备的开发工具推荐和下载

    10款Mac上程序员装机必备的开发工具推荐和下载 使用Mac的用户主要有两大类:设计师和程序员,为各位程序员童鞋推荐10个Mac上非常棒的开发工具和辅助工具,分享软件专题[10款Mac上程序员装机必备 ...

  4. AppCode 中开发 Mac OS X 应用程序或共享库的经验小结

    AppCode 是 JetBrains 公司出品的用于开发 Mac OS X 及 iOS 应用程序的集成开发环境,只能运行于 Mac OS X 操作系统环境下,作为 XCode 的高级替代品.由于其基 ...

  5. 在Visual Studio中使用MonoTouch开发iOS应用程序

    前段时间在工作机上装了Mac OS X,这主要是因为我最近需要开发iPhone应用程序.虽然Xcode,Objective C一定是开发iOS应用程序的主流,但是经过一番考虑,我还是决定尝试一下使用M ...

  6. 【转】使用NetBeans和Eclipse开发PHP应用程序

    [51CTO独家特稿]各位用户如果单独看NetBeans和Eclipse的市场占有率,你可能会认为使用其中任何一种IDE开发PHP应用程序都没有 问题,例如: 1.NetBeans:一款开源的集成开发 ...

  7. 用 Eclipse 开发 Android 应用程序

    转自:http://www.apkbus.com/android-13828-1-1.html 开始之前 本教程介绍如何在 Eclipse 环境中进行 Android 应用程序开发,包括两个示例应用程 ...

  8. 在桌面Linux环境下开发图形界面程序的方案对比

    在Linux下开发GUI程序的方法有很多,比如Gnome桌面使用GTK+作为默认的图形界面库,KDE桌面使用Qt作为默认的图形界面库,wxWidgets则是另一个使用广泛的图形库,此外使用Java中的 ...

  9. CMake结合Visual Studio中开发Qt应用程序注意事项

    Qt工程管理 个人比较偏爱于使用CMake来管理C++工程,因为只要编写一个CMakeLists.txt文件,就可以在Windows和Mac上生成各自的IDE工程.在Windows上, CMake自然 ...

随机推荐

  1. Ubuntu 取消sudo密码

    需求:在Ubuntu下装了FQ代理goagent之后,为了goagent能够开机启动.因为goagent需要sudo权限,所以要去掉sudo密码. 要修改的文件位于/etc/sudoers,先备份: ...

  2. JS操作Radio与Select

    //radio的chang事件,以及获取选中的radio的值 $("input[name=radioName]").on("change", function( ...

  3. 分布式ActiveMQ集群

    分布式ActiveMQ集群的部署配置细节: 官方资料:http://activemq.apache.org/clustering.html 基本上看这个就足够了,本文就不具体分析配置文件了. 1.Qu ...

  4. px,dp,sp单位转换工具类

    在layout中使用dp 在代码中getWidth系列得到的是px 设置字体大小时使用的是sp /** * Android大小单位转换工具类 */ public class PxDpSpUtil { ...

  5. ExtJs自学教程(2):从DOM看EXTJS

    <二> 从DOM看EXTJS 看标题可能有人会问,为啥好好的例子不看,得从DOM看起呢?答案是目标只为了一个:自运行结果把EXTJS看得更清楚点 首先,要看得靠点工具,带点放大镜什么吧?对 ...

  6. Failed to initialize monitor Thread: Unable to establish loopback connection解决方法

    原因一: android中出现该异常的原因,是pid产生了冲突,将服务中的windows Firewall 服务停用就行了 原因二: http://stackoverflow.com/question ...

  7. fiddler for mac

    Fiddler 是一免费的web调试工具.并且兼容所有浏览器.系统和平台. Fiddler 是基于微软的 .Net 技术开发的,没办法直接在 Mac/Linux 下使用.本文介绍一些替代方案(这些方案 ...

  8. jenkins mac slave 设置

    1.在jenkins上增加节点, 2,在mac系统中将ssh的服务打开在偏好设置- 互联网与无线 - 共享中 3,使用mac root用户修改sshd-config的鉴权方式 首先获取到root用户登 ...

  9. 1085: [SCOI2005]骑士精神

    A*搜索. A*搜索的基础百度百科(实在偷懒没看论文之类的),在这里不说了. A*搜索很关键的是h(n)估价函数的选取(表示现在到结束节点需要的距离) 设d(n)为实际到结束节点的距离.h(n)< ...

  10. SharePoint的安装配置

    安装环境 1. Window server 2008 r2(sp2) OS.2. MS SQL Server 2008 r2.3. Office2010.4. IIS7以上.5. 确认服务器已经加入域 ...