Centos系统下载大全 | Redhat系统下载大全 | Windows2012系统下载大全 | Windows2008系统下载大全| CMS教程 | 网站地图 51运维网-专注Linux/Unix系统安全运维!
当前位置:51运维网 > 编程 > Objective-C > 正文

Objective-C教程

时间:2014-08-20 22:05 来源:未知 作者:www.51ou.com 阅读:
Objective-C是非常实际的语言。它是一个用C写成、很小的运行库,只会令应用程序的大小增加很小,和大部 分OO系统使用极大的VM执行时间会取代了整个系统的运作相反。ObjC写成的程序通常不会比其原始码大很多。而其函式库(通常没附在软件发行本)亦和 Smalltalk系统要使用极大的内存来开启一个窗口的情况相反。[1] 
Objective-C的最初版本并不支持垃圾回收。在当时这是争论的焦点之一,很多人考虑到Smalltalk回 收时有漫长的死亡时间,令整个系统失去功用。Objective-C为避免此问题才不拥有这个功能。虽然某些第三方版本已加入这个功能(尤是 GNUstep), Apple在其Mac OS X 10.3中仍未引入这个功能。
另一个问题是ObjC不包括命名空间机制(namespace mechanism)。取而代之的是程序设计师必须在其类别名称加上前缀,时常引致冲突。在2004年,在Cocoa编程环境中,所有Mac OS X类别和函式均有NS作为前缀,例如NSObject或NSButton来清楚分辨它们属于Mac OS X核心;使用NS是由于这些类别的名称在NeXTSTEP开发时定下。
虽然Objective-C是C的母集,但它也不视C的基本型别为第一级的对象。
Objective-C同C++的异同:
和C++不同,Objective-C不支持运算子重载(它不支持ad-hoc多型)。亦与C++不同,但和 Java相同,Objective-C只容许对象继承一个类别(不设多重继承)。Categories和protocols不但可以提供很多多重继承的好 处,而且没有很多缺点,例如额外执行时间过重和二进制不兼容。
Objective-C和C++的比较
单一继承:
Objective-C不支持多重继承,(同Java和Smalltalk),而C++语言支持多重继承。
动态:
Objective-C是动态定型(dynamicaly typed)所以它的类库比C++要容易操作。Objective-C 在运行时可以允许根据字符串名字来访问方法和类,还可以动态连接和添加类。
C++ 跟从面向对象编程里的Simula 67(一种早期OO语言)学派,而Objecive-C属于Smalltalk学派。
在C++里,对象的静态类型决定你是否可以发送消息给它,而对Objective-C来说,由动态类型来决定。 Simula 67学派更安全,因为大部分错误可以在编译时查出。 而Smalltalk学派更灵活,比如一些Smalltalk 看来无误的程序拿到Simualr67那里就无法通过。
从很多方面来看,C++和Objective-C的差别,与其说是技术上的, 不如说是思维方式上的。你是否想更安全而舍弃灵活性?Simular67学派的支持者称既然程序设计出色何必再要灵活性,而 Smalltalk学派则称为了灵活可以容忍运行时多出错。
下面是教程:

Objective-C 教程

Objective-C 语言概述

Objective-C 开发环境(安装配置)

Objective-C语言程序结构

Objective-C 基本语法

Objective-C 数据类型

Objective-C 变量

Objective-C 常量

Objective-C 运算符

Objective-C 循环

Objective-C 块

Objective-C Numbers/数字

Objective-C Arrays/数组

Objective-C 指针

Objective-C NSString/字符串

Objective-C struct/结构

Objective-C 预处理器

Objective-C typedef

Objective-C 类型转换

Objective-C 日志处理

Objective-C 错误处理

Objective-C命令行参数

Objective-C 类&对象

Objective-C 继承

Objective-C 多态性

Objective-C 数据封装

Objective-C Categories/类别

Objective-C Posing/冒充

Objective-C 扩展

Objective-C Protocols/协议

Objective-C 动态绑定

Objective-C 复合对象

Objective-C 快速枚举

Objective-C 内存管理

感谢您对【51运维网 http://www.51ou.com/】的支持,我们为您免费提供《Objective-C教程》技术文章,《Objective-C教程》详细使用和说明,有时《Objective-C教程》可能不完善、敬请谅解!如果《Objective-C教程》有错误请给我们留言,我们将尽快修复文章错误,如果您觉得本站不错,请分享给周围的朋友!谢谢!

顶一下
(4)
100%
踩一下
(0)
0%
上一篇:Objective-C 内存管理
下一篇:没有了
推荐内容
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
验证码:点击我更换图片