最近,为了学习GStreamer,准备开始翻译GObject Reference Manual,但发现TualatriX已经翻译了一部分,我将在这里把他翻译的内容全部整理到一起,然后再翻译其他的内容。
以下内容引用自http://imtx.cn/archives/165.html,作者:TualatriX
第一篇不翻译,先引用一下IBM developerWorks的宋国伟先生在写“GObject对象系统”时的前言,也就是GObject Reference Manual的Introduction:
前言
大多数现代的计算机语言都带有自己的类型和对象系统,并附带算法结构。正象GLib提供的基本类型和算法结构(如链表、哈希表等)一样,GObject的对象系统提供了一种灵活的、可扩展的、并容易映射(到其它语言)的面向对象的C语言框架。它的实质可以概括为:
- 一个通用类型系统,用来注册任意的、轻便的、单根继承的、并能推导出任意深度的结构类型的界面,它照顾组合对象的定制、初始化和内存管理,类结构,保持对象的父子关系,处理这些类型的动态实现。也就是说,这些类型的实现是在运行时重置和卸载的;
- 一个基本类型的实现集,如整型,枚举型和结构型等;
- 一个基本对象体系之上的基本对象类型的实现的例子–GObject基本类型;
- 一个信号系统,允许用户非常灵活的自定义虚的或重载对象的方法,并且能充当非常有效力的通知机制;
- 一个可扩展的参数/变量体系,支持所有的能被用作处理对象属性或其它参数化类型的基本的类型。