Chinaunix首页 | 论坛 | 博客
  • 博客访问: 147391
  • 博文数量: 61
  • 博客积分: 1410
  • 博客等级: 上尉
  • 技术积分: 590
  • 用 户 组: 普通用户
  • 注册时间: 2009-03-03 15:26
文章分类

全部博文(61)

文章存档

2010年(9)

2009年(52)

我的朋友

分类: C/C++

2009-04-24 15:46:19

K&R     这本The C Programming Language相信大家再也熟悉不过了。英文书常用
C Bible 作者的姓氏加以称呼,由C语言的设计者Brian W Kernighan 和 Dennis M
        Ritchie写的这本书通常被称作 K&R。这本书被视为 C 语言的圣经,所以
        大家也喊它″C  Bible″。  这本书不但是教 C 语言的课本,也是 C 语
        言的定义,但也因此这本书并不好读。当作课本很好,对於其他书籍语焉
        不详的部份可以在这里找到明确的定义;对於要自修的读者而言,读这本
        书就比较辛苦了。
        顺便一提这本书的序言:「C 是个小语言,但是在许多场合下,他可以表
        现得和一些大语言一样的好」。

龙书    Dragon book 有两本,第一本由  Alfred V. Aho 和 Jeffrey D. Ullman
        所著。这本 Principles of Compiler Design, 封面上画著一只红色的,
        西洋式的龙,上面写著「Compiler设计的复杂性」,另外有一个铁甲武士
        正和它交战,身上写著「理论和发展工具」, 因而这本书被称为 dragon
        book。  推出後反应良好。
        数年後, 为了跟上 compiler 领域在这几年间的进步,  他们两人再加上
        Ravi Sethi  又为  dragon book  出了续集  Compiler Design : Prin-
        ciples, Techniques, and Tools。 不仅 compiler 领域内这本书被奉为
        经典,几乎只要在和 compiler 相关的许许多多主题扯上一点关连的文件
        中,包括系统程式,资料结构,正规语言等等,谈到深处後可能就会要你
        去参考这本 dragon book。

打棒球的人  同样是 Ullman 的书,Principles of Database and Knowledge-Base
            Systems。

OS动物园   Abraham Silberschatz 和 Peter Galvin 的Operating System Con-
          cepts, 在封面上用不同的动物表示不同的 OS.  OS/MVS 是一只大雷
          龙,VMS 是一只三角龙,MULTICS 则是暴龙。在这些远古 OS 之後的
          有用犀牛代表的 UNIX, 用一只直立奔跑的蜥蜴代表的 Mach, 和画成
          老虎的 OS/2。至於 MS-DOS.... 是一只不知道是狗还是狼的动物...

圆柱    稍稍翻阅 Computer Architecture: a Quantitative Approach, 很快就
        会感觉到这本 John L.Hennessy & David A.Patterson 所著, 封面画著
        圆柱的书无疑的是计算机结构的钜作。如同它的标题所示,这本书强调的
        是硬体设计需要有数字的分析,而不是凭直觉。这本书指出了许多设计上
        常见的的陷阱和谬误,对计算机结构设计界震撼不小。同样的作者後来出
        了一本架构类似, 较简单的入门书, 就是现在系上计算机组织课所用的
        Computer Organization & Design.

小熊书  Ravi Sethi的这本Programming Languages, Concepts and Constructs是
        programming language 领域的有名著作, 封面画著一只小熊站在床边玩
        电脑。

Foundations of Computer Science

        很难得能有像 Ullman 和 Aho 等人这样的大师合作, 来写电脑科学概论
        的书。这本书的读者设定在初学电脑科学的学生,内容就是几个重要的基
        础电脑科学领域,有基本的演算法,资料结构,离散数学,甚至数位系统,
        很适合在计概课当课本用。

        猜猜这本书的封面是什麽样子?中间是一只大乌龟,四只脚踩在四只大象
        背上以前的神话相信世界是由这样的大乌龟和四只大象支撑起来的。
        乌龟背上撑的是什麽呢?是一头龙,一只小熊,一只三角龙,一根圆柱,
        和一个打棒球的人。:)

紫皮书  在Scheme语言(一种类似LISP的语言)的领域内, 这本 Harold Abelson,
        Gerald J. Sussman  和  Julie Sussman  的  Structure and Interpre-
        tation of Computer Programs 是另一本圣经,有著好多个□称。按照书
        名字首简称为″SICP″;  由於书皮是紫色的,  所以被简称为″Purple
        Book″; 由於这本书重要, 乾脆有人叫他「 The Book」! 够狂吧。在
        news groups 的 comp.lang.scheme中,你说「我在 The Book(大写)中
        读到了....」,大家就知道是这本书了。

        SICP以Scheme语言为工具,目的却是教程式设计的观念和原则。读者可以
        完全不懂电脑。这本书被入门者推崇著的同时,也被选作麻省理工学院的
        电脑概论课教材,给许多完全不懂电脑的学生读,可说是很难得的。内容
        包括了程序抽象,资料抽象,物件导向,资料流向程式设计等等。如果嫌
        课堂上的程式设计教得太死板,非常建议你一读。

蓝皮书  记得 Smalltalk 这个语言吗? Smalltalk 原本想设计成一个简单得可以
        用来教小孩子写程式的语言。 在八年的发展後,Xerox终於决定正式把这
        个语言公开,因而造成了这一系列书籍的诞生。这本 ″Smalltalk-80 --
        The Language and Its Implementation″ 由 Adele Goldberg 和 David
        Robson 所著,被称为 Blue Book。和 K&R 一样,这本书不但是课本,也
        是 Smalltalk 语言的定义。 可以想见,这本书一定同样的重要,但也同
        样的不容易读,在读这本书之前最好找一些介绍性的书籍当先修。

橘皮书  Smalltalk-80 -- The Interactive Programming Environment, Small-
        talk系列的第二本,Goldberg著。 介绍如何使用Smalltalk的程式设计环
        境。

绿皮书  Glenn Krasner 所著,Smalltalk 系列的第四本,给要实作 Smalltalk的
        发展者看的。
        
        Smalltalk系列计划中的第三本本原应该描述Smalltalk应用程式的图形界
        面和互动环境,然而并没有成书,使得这方面缺乏正式的文件,十分可惜。


这是我目前所收集到的资料了。听说 UNIX 界还有一本重要的「黄皮书」。有没有
同学愿意补充的呢?:)


References
----------

[Abelson & Sussman 1985] Abelson, Harold & Sussman, Gerald Jay  &
    Sussman, Julie,1985, "Structure and interpretation of computer
    programs", Cambridge: MIT

[Aho & Sethi & Ullman 1985] Aho, Alfred V. & Sethi, Ravi & Ullman,
    Jeffrey D., 1985, "Compilers : principles, techniques, and tools",
    S.l.  Addison-Wesley

[Aho & Ullman 1992] Aho, Alfred V. & Ullman, Jeffrey D., 1992,
    "Foundations of computer science", New York: Computer Science Press

[Goldberg & Robson 1983] Goldberg, Adele & Robson, David, 1983,
    "Smalltalk-80 : the language and its implementation", Reading, Mass.
    Addison-Wesley

[Goldberg 1984] Goldberg, Adele, 1984, "Smalltalk-80 : The interactive
    programming environment", London Addison-Wesley Publishing Center

[Kernighan & Ritchie 1988] Kernighan, Brian W. & Ritchie, Dennis M.,
    1988, "The C programming language", 2nd edition, Englewood Cliffs,
    N.J., Prentice Hall

[Krasner 1983] Krasner, Glenn, 1983, "Smalltalk-80 : bits of history,
    words of advice", Reading, Mass., Addison-Wesley

[Patternson & Hennessy 1990] Patternson, David A. & Hennessy, John L,
    1990, "Computer architecture : a quantitative approach", San Mateo,
    CA, Morgan Kaufmann Publishers, Inc.

[Sethi 1989] Sethi, Ravi, 1989, "Programming languages : concepts and
    constructs", Reading, Mass., Addison-Wesley

[Silberschatz & Galvin 1994] Silberschatz, Abraham & Galvin, Peter B.,
    1994, "Operating system concepts", 4th edition, Reading, Mass.,
    Addison-Wesley

[Ullman 1988] Ullman Jerrrey D., 1988, "Principles of database and
    knowledge - base systems", Rockville, Computer Science Press



 
阅读(1163) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~