iPhone应用开发第一季:初识iPhone应用开发的三大基础:MAC系统介绍、Xcode开发环境介绍和Cocoa框架介绍。这三大基础是iPhone OS应用开发必知必会的内容
首先,第一节大家都知道应该就是:“HelloWorld”!
◆MAC系统介绍
◆Xcode开发环境介绍
◆Cocoa框架介绍
什么是MAC?
◆MAC系统是苹果机专用系统,正常情况下在普通pc上无法安装的操作系统
◆MAC壁纸
苹果公司不但生产MAC的大部分硬件,连MAC所用的操作系统都是它自行开发的,接下来,我们就来了解一下它的操作系统。
苹果机现在的操作系统已经到了OS 10,代号为MAC OS X(X为10的罗马数字写法),这是MAC电脑诞生15年来最大的变化。新系统非常可靠,它的许多特点和服务都体现了苹果公司的理念。
另外,现在疯狂肆虐的电脑病毒几乎都是针对Windows的,由于MAC的架构与 Windows不同,所以很少受到病毒的袭击。MAC OS
X操作系统界面非常独特,突出了形象的图标和人机对话(图形化的人机对话界面最初来自施乐公司的Palo
Alto研究中心,苹果借鉴了其成果开发了自己的图形化界面,后来又被微软的Windows所借鉴并在Windows中广泛应用)。苹果公司能够根据自己
的技术标准生产电脑、自主开发相对应的操作系统,可见它的技术和实力非同一般。打个比方,苹果公司就像是Dell和微软的联合体,在软硬件方面“才貌双
全”。
什么是Xcode?
Xcode是Apple自己开发的,只运行在Mac OS X平台下的IDE。如果你想真正了解Mac OS
X平台上的开发,就应该了解它。当然,Mac OS
X实现了POSIX,固然也支持传统的UNIX编程环境;Eclipse等Java开发工具也有Mac OS
X版。不过这些,你在Linux或者Windows平台也能体验到。Xcode也并不神秘,Apple并没有自己特有的编译器(尽管Mac上的Gcc是经
苹果修改过的版本),创建项目的时候,Xcode还是会生成并执行一条条的Gcc和ld的命令。所以如果你有足够的UNIX经验(并且知道到哪里找需要用
的Framework),完全可以在命令行编译一个完整的Cocoa应用程序。
其实Xcode提供了很多功能,使你无论在创建项目、设计、修改代码还是编译等各个环节都能收益,恐怕你很难找到一个不使用它的理由。事实上,自从
Mac OS 10.4引入了Universal
Binary的概念以后,Xcode几乎成为了大多数Mac开发者的唯一选择。不用担心的是Xcode是免费的,只要你有一台Mac,随机带的安装盘里就
有Xcode,升级是免费的(不过如果你用的是Mac OS 10.5以前版本的OS,你将不能运行Xcode 3.0或以上的版本)。
什么是Cocoa?
Cocoa Framework简称Cocoa,它是Mac OS X上的快速应用程序开发(RAD, Rapid Application
Development)框架,一个高度面向对象的(Object
Oriented)开发框架。无论您是资深的Mac开发人员,还是即将踏入Mac开发世界的新新人类,Cocoa都是您开发应用程序的瑞士军刀、乐高积
木,它是您构建Mac OS
X应用程序最强大、最高效的工具。值得一提的是,苹果公司之所以能够开发出众多顶级软件,其实也正是因为有着Cocoa这个秘密武器。Cocoa是Mac
OS X上原生支持的应用程序开发框架,苹果公司强烈推荐所有Mac开发人员使用。
骨灰话题:Hello World!
相信对于任何一个开发人员,Hello World!都应该是个熟悉无比的东西。那么,Cocoa的Hello World!程序您看得懂么?
-
import
<
Foundation
/Foundation.h
>
-
int main (int argc, const char * argv[]) {
-
NSAutoreleasePool *
pool
= [[NSAutoreleasePool alloc] init];
-
NSLog(@"Hello, World!");
-
[pool drain];
-
return 0;
-
}
-
首先,和绝大多数您所见过的C程序一样,任何一个Cocoa应用程序都有一个主函数:
-
int main(int argc, const char * argv[])
-
主函数是应用程序的主入口,也是一切开始和结束的地方。是的,没错!从表面上看,这些代码和常见的C程序的代码没有什么区别,而且事实上,它们和C程序的代码的的确确没有什么区别。
接下来你该问我,那什么是Foundation?Foundation.h里装的又是什么?什么是NSAutoreleasePool?那些中括号又是什么?...... 别急,在后续的几章里我们会慢慢把这么多陌生的面孔熟悉起来,当然我也可以现在就大致的解释一下:
Foundation全称Foundation
Framework,是Cocoa的一个子开发框架。Foundation里包含了Cocoa中最基本的一些类,它们在一个Mac应用程序中通常负责对象
管理、内存管理、容器等相关数据结构的操作。Foundation.h是Foundation的头文件,一旦引入了这个头文件,我们就可以在自己的程序里
使用任何在Foundation里声明的类。例如在上述代码中,NSAutoreleasePool就是Foundation中声明的一个类,它为应用程
序提供可控制的延迟对象释放的内存管理。至于那些方括号,它们是Objective-C里最最基本的语法成分,一对方括号中间的内容表示对对象(或类)进
行一次方法的调用。
如果您没有听明白,请不要惊慌失措,咱们在下面的几章里慢慢说。另外,Cocoa的国际音标是['koukou]希望大家能把这个单词的音读对。
Objective-C其实很C
在使用Cocoa进行应用程序开发的时候,Objective-C是我们首选的语言。(当然,Cocoa也通过官方、第三方等途径,构建了
Cocoa-Ruby、Cocoa-Python等编程语言上的桥接,使无论是来自Ruby还是Python世界的开发人员能够使用他们熟悉的语言快速上
手。)不过在这里,我们还是要首推Objective-C作为一个Cocoa程序的开发语言,原因有二:
其一、Objective-C实际上是C的超集
。
Objective-C的运行环境库(Runtime
Library)完全是由C编写的,因此任何一个Objective-C消息派发(Message
Dispatching),都会被替换成Objective-C运行环境中的某个或某几个C函数的调用。这种机制为Objective-C带来了高效的消
息派发和对C代码完全原生的兼容。
其二、整个Cocoa Framework都是由Objective-C/C实现的
。
因此在开发一个Cocoa应用程序的时候,Objective-C是我们不二的选择。
当我们说到“Objective-C”的时候,尽管编程模型和C不同,尽管语法看似有些奇怪,但事实我们所讨论的依然还是C语言。因为Objective-C确实是C,说的简单些:
Objective-C就是拥有一个面向对象层(Object Oriented
Layer)的C。而Objective-C正是通过从Smalltalk进化而来的这种语法,实现了对这个面向对象层的支持。因此如果您正在使用
Objective-C开发一个Cocoa应用程序,同时又希望在某些代码的某些位置插入一些C代码,那就请放心大胆的继续吧!
分享到:
相关推荐
总之,《iPhone应用程序编程指南》中文版会提供一个全面的教程,覆盖了从基本概念到高级技术的所有方面,让读者能够构建功能丰富的、用户体验优秀的iOS应用程序。通过学习本书,开发者不仅可以掌握iOS开发的基本技能...
《iPhone开发基础教程》是一本全面介绍iOS应用开发的书籍,配合提供的源代码,为初学者提供了详实的学习路径。本书旨在帮助读者掌握使用Xcode工具进行iPhone应用程序开发的基础知识和技能。 首先,我们需要了解iOS...
首先,我们需要理解iPhone应用程序的基础——iOS操作系统。iOS是Apple为iPhone、iPad和iPod Touch设计的封闭源代码操作系统,它基于Darwin,与Mac OS X有着深厚的渊源。开发iOS应用需要对这个平台的特性和限制有清晰...
《iPhone 4 开发基础教程》是一本专为初学者设计的指南,旨在帮助读者掌握使用最新版本的iOS SDK进行iPhone应用开发的基本技能。这本书基于iPhone X,虽然名称中提到"iPhone 4",但其内容应适用于更新的iOS版本,...
【标题】"iPhone开发基础教程"揭示了iOS应用开发的核心概念和步骤,是初学者进入Apple平台编程领域的理想起点。本教程将引导你通过一系列关键知识点,了解如何使用苹果的Swift编程语言和Xcode集成开发环境(IDE)来...
它涵盖了iPhone应用开发的基础概念、工具和技术,帮助开发者逐步掌握创建iOS应用的技能。 首先,我们要了解iOS开发环境Xcode。Xcode是Apple官方提供的集成开发环境(IDE),它包含了编写、测试和调试iOS应用所需的...
《初识iPhone 3开发:探索iPhone SDK》是Dava Mark和Jeff LaMarche合作编写的中文版教程,为那些想要踏入iOS应用开发领域的初学者提供了详尽的指南。本书全面介绍了如何使用iPhone SDK来创建功能丰富的应用程序,是...
总之,《深入浅出iPhone开发》是一本全面覆盖iPhone应用开发的教程,它不仅教授技术,更注重实践,让读者通过实例学习,从而真正掌握iOS开发的各个方面。无论是对Objective-C还是Swift感兴趣,这本书都能为初学者...
《iOS网络高级编程:iPhone和iPad的企业应用开发》是一本专为iOS开发者设计的专业书籍,主要探讨了在iOS平台上进行企业级应用开发时涉及到的网络技术。这本书的高清PDF版本提供了丰富的学习资源,旨在帮助开发者深入...
在本教程中,我们将深入探讨iPhone应用开发的基础知识,这些知识是基于提供的源代码实例的。作为初学者,了解iPhone应用开发的基本概念和技术是至关重要的,因为这将为你的iOS编程之路打下坚实的基础。 首先,我们...
《iPhone中文开发基础教程》是一本专为初学者设计的指南,旨在帮助读者全面了解并掌握在iPhone平台上进行应用开发的基础知识。本教程通过分章节深入浅出地讲解,将理论与实践相结合,确保读者能够逐步建立起坚实的...
《iPhone开发从基础到精通》是一份全面的iOS开发学习资源,旨在帮助初学者快速掌握iPhone应用开发的核心技能。这份资料包含三个主要部分,分别针对不同的学习阶段:基础、设计模式以及Objective-C(OC)的基础语法。...
这个压缩包中的文件名称列表"Beginning iPhone Development Projects"暗示了它可能包含了多个项目案例,这些案例覆盖了iPhone应用开发的基础到进阶知识点。 首先,基础的iPhone应用开发涉及Swift语言的学习。Swift...
在这个“iPhone应用开发 RSS实例 源代码”中,我们将探讨如何在iOS应用中集成RSS阅读功能。 首先,我们需要理解RSS的基本结构。一个RSS feed通常包含多个条目,每个条目都有标题、描述、链接、发布日期等信息。在...
在iPhone应用开发中,理解模型-视图-控制器(MVC)设计模式至关重要。MVC将应用程序分为三个部分:模型(Model)负责数据管理,视图(View)负责显示用户界面,控制器(Controller)协调模型和视图。这个模式使得...
我们正在探讨的主题是“iPhone开发基础教程-PDF完整版part 3”,然而,由于提供的“部分内容”并没有直接包含具体的教学内容,我们将基于标题和描述来构建相关的知识点,主要围绕iPhone应用开发的基础进行展开。...
《iPhone游戏开发实践指南》是一本深入探讨iPhone游戏开发的专业书籍,它涵盖了从基础到高级的游戏开发技术。这本书的源代码提供了丰富的实例,帮助开发者更好地理解游戏开发过程中的各种概念和技巧。通过阅读和分析...
本书的核心目标是帮助读者掌握在iPhone5和iPad上进行应用开发的基本技能,尤其针对iOS 5版本进行了详尽的探讨。 在iOS开发领域,Apple的SDK(Software Development Kit)是开发者的重要工具,它包含了编写、测试和...