C学习之接口和实现

这篇文章是对C语言接口和实现这本书的理解。下面是一个参考链接,对原书有详细的引用.

http://site.douban.com/107552/widget/notes/106347/note/167405435/

C语言虽然不是很擅长面向对象的设计思维,但是同样讲究能有一种可重用的设计,这里也就是接口和实现。这本书几乎就是一个C语言版本的STL的实现,通过用C实现STL来讲解C语言的接口和实现,很喜欢作者的代码风格,比如define/undef的运用,函数名称和class名称的命名方式等等,很值得细看,所以下面贴了一个stack实现的接口的例子以供参考:


  #ifndef STACK_INCLUDED 
  #define STACK_INCLUDED 

  #define T Stack_T 
  typedef struct T *T; 

  extern T Stack_new (void); 
  extern int Stack_empty(T stk); 
  extern void Stack_push (T stk, void *x); 
  extern void *Stack_pop (T stk); 
  extern void Stack_free (T *stk); 

  #undef T 
  #endif
本书概念清晰、内容新颖、实例详尽,是一本有关设计、实现和有效使用C语言库函数,掌握创建可重用C语言软件模块技术的参考指南。本书倡导基于接口的C语言设计理念及其实现技术,深入详细地描述了24个C语言接口及其实现。   本书通过叙述如何用一种与语言无关的方法将接口的设计与实现独立开来,从而形成一种基于接口的设计途径来创建可重用的API,本书是一本针对 C语言程序员的不可多得的好书,也是值得所有希望掌握可重用软件模块技术的读者阅读的参考书籍。   关于如何设计、实现和有效使用库函数的指南少之又少(如果说还有的话)。这本力作填补了这 个空白。它可以作为下一代软件的工具书.所有的C语言程序员都应该阅读。                                     ——W.Richard Stevens  “我向每位专业C语言程序员推荐这本书。C语言程序员们忽视书中所描述的各种技术已经太长时 间了。”                               ——Norman Ramsey,贝尔实验室研究员   每一位程序员和软件项目经理必须掌握创建可重用软件模块的技术:可重用软件模块是 构建大规模、可靠应用的基石。与当前某些面向对象语言不同,C语言为创建可重用应用程 序接口(Application Programming Interface,API)提供的语言和功能支持非常少。尽管大多 数C语言程序员在自己所编写的每一个应用程序中都使用API和实现API的库.但只有相当少 的程序员可以创建和发布新的、可广泛使用的API。本书阐述了如何用一种与语言无关的方 法将接口的设计与实现独立开来,从而形成一种基于接口的设计途径来创建可重用的API。 书中提供大量实例具体说明这种方法。作者详细描述了24个接口和它们的实现细节,有助于 读者对这种设计方法的透彻理解。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值