• 面向对象C语言(ObjectiveC)编程简介


    Introduction to The Objective-C Programming Language

    面向对象C语言编程简介:

        面向对象的C语言是一种简单的计算机语言,设计的目的是为了进行高级的面向对象编程。面向对象的C语言被定义成对标准C语言的小而强大的扩展集合。是对C语言的扩展但是主要基于Smalltalk语言,最早的面向对象编程语言之一。设计面向对象的C语言是为了给C语言完全的面向对象编程能力,通过一种简单直接的方法。

        大部分面向对象开发环境由若干部分组成:

    • 一种面向对象的编程语言

    • 一个对象库

    • 一套开发工具

    • 一个运行环境

        这篇文章是关于开发环境的第一个部分—编程语言,完全地描述了面向对象C语言,并且提供了学习第二个部分的基础,Mac OS X 的面向对象C语言应用框架—统称为 Cocoa. 你可以开始学习更多有关Cocoa 通过文章Getting Started with Cocoa. 你可以用的两种主要的开发工具是 Xcode 和 Interface Builder, 可从该网页获得描述Xcode Workspace GuideInterface Builder 单独的. 运行时环境在另外单独的文档里描述: Objective-C Runtime Programming Guide.

        注意: 该文档描述的Objective-C的版本是发布在苹果电脑 Mac OS X v10.6 上的, 引入了新特性:associative references (see“Associative References”). 想学习Objective-C的1.0版本(在苹果电脑 Mac OS X v10.4 或者更早的版本上可用), 请阅读: Object Oriented Programming and the Objective-C Programming Language 1.0.

    谁应该阅读该文档

        该文档是为有可能对以下内容有兴趣的读者准备的:

    • 使用 Objective-C 编程

    • 想了解 Cocoa 应用框架的基础原理相关的内容

        该文档即介绍了实现 Objective-C语言的面向对象模型,同事也完整的介绍了该语言。重点在于Objective-C对C语言的扩展部分,而不是C语言本事。

        由于这不是一篇介绍C语言的文档,它假定我们之前了解C语言。但是,也不需要深入的了解。基于Objective-C的面向对象编程和之前基于标准C语言的编程有很大的不同,因此你不会有太大的障碍即使你不是一个有经验的C程序员。

    该文档的结构

    本文档分为若干章节和一个附录。

    下面的章节涵盖了所有Objective - C对标准C语言扩展的功能。

    苹果的编译器基于GNU的编译器系列。Objective-C 的语法是 GNU C/C++ 语法的超集,并且Objective-C 的编译器适用于C, C++ 和Objective-C 的源代码. 编译器识别 Objective-C 的代码文件是通过文件扩展名.m, 就像它识别仅包含标准C语法的文件是通过文件扩展名.c, 同样的, 编译器识别使用Objective-C语言的C++文件是通过文件扩展名 .mm, 其它的在Objective-C 里使用 C++ 的疑问涵盖在如下文档里:“Using C++ With Objective-C.”


    附录里包含的参考资料或许对理解该语言有很大的帮助:

    约定

       当本文档导论函数,方法和其他编程元素的时候, 使用了特殊的计算机语言和斜体字。计算机语言表示单词或者字符直接字面的拿来用(写成和他们一样的--就是C语言中的关键词了). 斜体表示能表现为其他东西或者是变化的(比如变量名等)。

    比如, 语法:

    @interfaceClassName(CategoryName)

    表示 @interface 和一对圆括号是必须的, 但是你可以选择类名和分类名。

    当显示示范代码的时候,省略号表示的部分,通常是内容填充部分,已经省略了:

    - (void)encodeWithCoder:(NSCoder *)coder
    
    {
       [super encodeWithCoder:coder];
    
       ...
    }

    涉及到的附录里的约定在附录本身描述了。

    另请参阅

    如果你从来没有用过面向对象编程来创建过应用程序,你应该阅读:Object-Oriented Programming with Objective-C. 你应该也要考阅读下它如果你用过其他的面向对象开发环境比如说:C++,JAVA,因为它们和Objective-C有很多不同的例外情况和约定。Object-Oriented Programming with Objective-C的设计师为了帮助你熟悉面向对象的开发,向一个 Objective-C的开发者方向发展。它阐述了一些面向对象设计的实现,给你一些提示真正的编写面向对象的程序是啥样的。

    运行环境(运行时)

    Objective-C Runtime Programming Guide 描述了Objective-C 运行时的一些情况和你如何去使用它。

    Objective-C Runtime Reference描述了Objective-C 运行时支持库的数据结构和函数。你的程序可以使用这些接口来和Objective-C的运行时系统交互。比如:你可以添加一个类或者方法,或者获得一个所有已加载得的类定义的列表。Objective-C Release Notes 描述了在最新版本的 Mac OS X的一些Objective-C运行环境的变化。

    内存管理

    Objective-C 支持两种内存管理的环境,垃圾自动回收和引用计数:

    • Garbage Collection Programming Guide 描述了 Cocoa使用的垃圾回收机制。(iPhone上不支持—所以你无法通过iPhone的开发中心访问此文档.)

    • Memory Management Programming Guide for Cocoa 描述了Cocoa使用的引用计数系统。


    注:本文章是直接翻译的苹果官方网页上的的资料,不会随着网页的变化而及时变化,最新官方网页请参考

    https://developer.apple.com/library/ios/#documentation/Cocoa/Conceptual/ObjectiveC/Introduction/introObjectiveC.html

    欢迎朋友们指导修改~~~~

    转载请保留以下信息:
    作者(Author):smilelance
    时间( Time ):2010.02
    出处( From ):http://blog.csdn.net/smilelance

  • 相关阅读:
    借助backtrace和demangle实现异常类Exception
    mysql数据库表里首行和末行的取得方法
    斐波那契高效算法(4种算法综合分析)
    sublime学习之--批量在多行首位加入代码
    Zabbix --> client安装以及怎样加入数据库的动态监控视图
    sdut 3-6 静态数据成员与静态成员函数
    poj3411Paid Roads
    python中get pass用法
    Qt之QListWidget:项目的多选与单选设置
    Qt之QListWidget:项目的多选与单选设置
  • 原文地址:https://www.cnblogs.com/secbook/p/2655432.html
Copyright © 2020-2023  润新知