Cocoa是在Mac OS X系统上原生的一个编译环境。他包含两个框架,其实就是一系列的类库,Foundation和AppKit。

在你的iPhone等掌上设备上,使用的则是他的一个子类 - Cocoa Touch 。他所支持的Foundation框架与Cocoa相同,但他的用户图形类库为UIKit,它是为掌上设备特殊设计,提供了你设备上的界面。

Cocoa与Cocoa Touch的区别是本文要介绍的内容,Cocoa Touch与Cocoa一个比较鲜明的区别就是Cocoa Touch并不支持垃圾回收机制,这就意味着你必须在你的代码里管理好你的内存。而Cocoa与Cocoa Touch共同点就是二者都包含Objective-C运行时和两个核心框架:

·Cocoa包含Foundation和AppKit框架,可用于开发Mac OS X系统的应用程序。

·Cocoa Touch包含Foundation和UIKit框架,可用于开发iPhone OS系统的应用程序。

·Cocoa是 Mac OS X 的开发环境,Cocoa Touch是 iPhone OS的开发环境。

框架

Foundation框架实现了NSObjec类(即根类),这个类定义基本对象行为。此外,该框架还实现了用于表示基本类型(例如,字符串和数字)和群体类型(例如,数组和字典)的类,同时也提供一些基本工具,例如用于国际化、对象持久化、文件管理以及XML处理的工具。你还可以使用Foundation框架中的类访问底层系统的实体和服务,例如可以用它来访问端口、线程、锁和进程。Foundation框架以Core Foundation框架为基础,Core Foundation框架提供的是过程化(ANSI C)接口。

你可以使用 AppKit 和UIKit 框架开发应用程序的用户接口。二者用途相同,但是针对平台不同。框架中的类很多,各有不同用途:有的用于事件处理、有的用于画图、有的用于图像处理、有的用于文本处理、有的用于用户排版、还有用于应用程序间数据传输。框架中还包含表视图、滑动条、按键、文本字段以及警告对话框等用户接口元素。

编程语言

Objective-C是开发Cocoa和Cocoa Touch应用程序的本地语言,也是最重要的语言。但是Cocoa和Cocoa Touch应用程序也可以包含C++和ANSI C代码。另外,你也可以使用桥接Objective-C运行时的脚本语言—例如PyObjC和RubyCocoa—开发Cocoa应用程序。

Cocoa与Cocoa Touch的区别的更多相关文章

  1. 理解cocoa和cocoa touch的响应者链

    该文章翻译自:Understanding cocoa and cocoa touch responder chain. 转载注明出处:http://www.cnblogs.com/zhanggui/p ...

  2. obj-c编程14:Cocoa和Cocoa Touch简介

    这一篇篇幅相对少很多,几乎没有代码,全部都要靠本猫的语言组织能力啊!Cocoa框架在前面讲解F库时曾简单做过介绍,现在再具体说一说喽.各位童鞋是否已经发现鸟,前面所写的所有代码都是基于终端(或称之为c ...

  3. 【转】XCode、Cocoa、Objective-C 的关系区别

    原文网址:http://blog.sina.com.cn/s/blog_5e89e1ff0100z4k1.html Object-Ciphone开发用的编程语言不是c,c++,java 而是objec ...

  4. [Cocoa]深入浅出 Cocoa 之 Core Data(1)- 框架详解

    Core data 是 Cocoa 中处理数据,绑定数据的关键特性,其重要性不言而喻,但也比较复杂.Core Data 相关的类比较多,初学者往往不太容易弄懂.计划用三个教程来讲解这一部分: 框架详解 ...

  5. [Cocoa]深入浅出 Cocoa 之消息

    深入浅出 Cocoa 之消息    罗朝辉(http://blog.csdn.net/kesalin) 转载请注明出处 在入门级别的ObjC 教程中,我们常对从C++或Java 或其它面向对象语言转过 ...

  6. [Cocoa]深入浅出Cocoa多线程编程之 block 与 dispatch quene

    深入浅出 Cocoa 多线程编程之 block 与 dispatch quene 罗朝辉(http://www.cppblog.com/kesalin CC 许可,转载请注明出处 block 是 Ap ...

  7. [Cocoa]深入浅出Cocoa之Bonjour网络编程

    本文转载至 http://www.cnblogs.com/kesalin/archive/2011/09/15/cocoa_bonjour.html   深入浅出Cocoa之Bonjour网络编程 罗 ...

  8. 移动端web开发,click touch tap区别

    转自: http://blog.csdn.net/sly94/article/details/51701188 移动端用tap时会有穿透问题 一:click与tap比较 click与tap都会触发点击 ...

  9. Linux中mkdir和touch命令区别

    一.目的 本文将介绍linux下新建文件或文件夹.删除文件或文件夹命令.         touch能够新建文件,mkdir用来新建文件夹.rm用来删除文件或文件夹.         本文将选取ubu ...

随机推荐

  1. Java [leetcode 14] Longest Common Prefix

    小二好久没有更新博客了,真是罪过,最近在看linux的东西导致进度耽搁了,所以今晚睡觉前怒刷一题! 问题描述: Write a function to find the longest common ...

  2. mina2

      远程通信 Mina2 学习笔记 作者:李少华 邮箱:xiaosanshaoli@126.com QQ:305409913 2010-12-23   初稿 引言... 1 一.       Mina ...

  3. selenium+testNG+Ant

    好几天没写了,抽时间写下,也好有个总结: 1.selenium+testNG+Ant (1)ant 是构建工具 他的作用就是运行你配置好的东西 而tentng.xml你可以认为他是管理test的一个配 ...

  4. 编程解读 + DOS搞笑开机GIF

  5. ubuntu网站做图像外链

    http://paste.ubuntu.org.cn

  6. 看雪 安卓 dex文件

    http://bbs.pediy.com/showthread.php?t=177114

  7. htmlcss笔记--定位

    1.定位: position:relative(相对) 不影响元素本身的特性: 不使元素推理原来文档流:还占有所在的位子. 定位元素控制:top/right/bottom/left 定位元素偏移量. ...

  8. PHP编码规范整理,很全很实用(图文版)

    有一个组织叫做“php互操作性框架制定小组”,这个小组的主要目的是制定各种PHP编码规范的,下面就是我根据小组提供的建议整理的一些常用的编码规范. PSR-1: 1.PHP代码文件必须以<?ph ...

  9. 科大讯飞和Tizen-TTS语音合成引擎

    最近在做一个文本转语音TTS(Text to Speech)的第三方软件封装,使用的是国内语音技术龙头安徽科大讯飞公司提供的离线引擎AiSound5.0,主要用于汽车导航用途.科大讯飞还提供 了AiT ...

  10. TCP/IP协议详解内容总结

    TCP/IP协议 TCP/IP不是一个协议,而是一个协议族的统称.里面包括IP协议.IMCP协议.TCP协议. TCP/IP分层:   这里有几个需要注意的知识点: 互联网地址:也就是IP地址,一般为 ...