programming
D is for Digital 豆瓣
作者: Brian W Kernighan 出版社: CreateSpace 2011 - 9
This book explains how today's computing and communications world operates, from hardware through software to the Internet and the web. It includes enough detail that you can understand how these systems work, no matter what your technical background. The social, political and legal issues that new technology creates are discussed as well, so you can understand the difficult issues we face and appreciate the tradeoffs that have to be made to resolve them.
The Little Schemer - 4th Edition 豆瓣 Goodreads
9.7 (6 个评分) 作者: Daniel P. Friedman / Matthias Felleisen 出版社: The MIT Press 1995
This delightful book leads you through the basic elements of programming in Scheme (a Lisp dialect) via a series of dialogues with well-chosen questions and exercises. Besides teaching Scheme, The Little Schemer teaches the reader how to think about computation. The authors focus on ten essential concepts of thinking about how to compute and demonstrate how to apply these concepts in inventive ways. The Little Schemer is an excellent book both for the beginner and for the seasoned programmer.
How to Design Programs 豆瓣
作者: Matthias Felleisen / Robert Bruce Findler 出版社: The MIT Press 2001 - 2
This introduction to programming places computer science in the core of a liberal arts education. Unlike other introductory books, it focuses on the program design process. This approach fosters a variety of skills--critical reading, analytical thinking, creative synthesis, and attention to detail--that are important for everyone, not just future computer programmers.
The book exposes readers to two fundamentally new ideas. First, it presents program design guidelines that show the reader how to analyze a problem statement; how to formulate concise goals; how to make up examples; how to develop an outline of the solution, based on the analysis; how to finish the program; and how to test. Each step produces a well-defined intermediate product. Second, the book comes with a novel programming environment, the first one explicitly designed for beginners. The environment grows with the readers as they master the material in the book until it supports a full-fledged language for the whole spectrum of programming tasks.
All the book's support materials are available for free on the Web. The Web site includes the environment, teacher guides, exercises for all levels, solutions, and additional projects.
-- amazon.com
Algorithms 豆瓣 Goodreads
Algorithms
作者: Sanjoy Dasgupta / Christos H. Papadimitriou 出版社: McGraw-Hill Education 2006 - 10
This text, extensively class-tested over a decade at UC Berkeley and UC San Diego, explains the fundamentals of algorithms in a story line that makes the material enjoyable and easy to digest. Emphasis is placed on understanding the crisp mathematical idea behind each algorithm, in a manner that is intuitive and rigorous without being unduly formal.
计算机科学中的范畴论 豆瓣
作者: 陈意云 出版社: 中国科学技术大学出版社 1993 - 2
范畴论是近十年来兴起的计算机科学前沿研究打向之一,前景广阔.本
书作者对这一领域做了很多研究工作.80年末,在美国期间收集了最新的有
关资料.在此基础上写成的本书反映了范畴论作为工具应用于计算机科学的
最新情况.
书中首先介绍代数规范的基本知识和一些泛代数的知识,然后系统地介
绍了范畴论的主要内容:范畴、函子、自然变换、积与和、极限和余极限、伴随、
笛卡儿封闭的范畴和素描等,并通过很多例子.介绍了范畴论在程序设计语
言的语义、λ演算、论域理论、演绎系统和形式规范等方面的应用.各章节岳
面附有习题.
本书可作为计算机专业的高年级本科生、研究生的教材.亦可供从事计
算机科学研究和开发的科技人员参考.
C专家编程 豆瓣
Expert C Programming: Deep C Secrets
8.8 (11 个评分) 作者: [美] Peter Van Der Linden 译者: 徐波 出版社: 人民邮电出版社 2008 - 2
《C专家编程》展示了最优秀的C程序员所使用的编码技巧,并专门开辟了一章对C++的基础知识进行了介绍。
书中C的历史、语言特性、声明、数组、指针、链接、运行时、内存以及如何进一步学习C++等问题进行了细致的讲解和深入的分析。全书撷取几十个实例进行讲解,对C程序员具有非常高的实用价值。
本书可以帮助有一定经验的C程序员成为C编程方面的专家,对于具备相当的C语言基础的程序员,本书可以帮助他们站在C的高度了解和学习C++。
性能之巅 豆瓣
Systems Performance
作者: Brendan Gregg 译者: 徐章宁 / 吴寒思 出版社: 电子工业出版社 2015 - 8
《性能之巅:洞悉系统、企业与云计算》基于Linux 和Solaris 系统阐述了适用于所有系统的性能理论和方法,Brendan Gregg 将业界普遍承认的性能方法、工具和指标收集于本书之中。阅读本书,你能洞悉系统运作的方式,学习到分析和提高系统与应用程序性能的方法,这些性能方法同样适用于大型企业与云计算这类最为复杂的环境的性能分析与调优。
Pro Git 豆瓣 Goodreads
Pro Git
8.9 (26 个评分) 作者: Scott Chacon 出版社: Apress 2009 - 8
Git is the version control system developed by Linus Torvalds for Linux kernel development. It took the open source world by storm since its inception in 2005, and is used by small development shops and giants like Google, Red Hat, and IBM, and of course many open source projects.
* A book by Git experts to turn you into a Git expert
* Introduces the world of distributed version control
* Shows how to build a Git development workflow
What you’ll learn
* Use Git as a programmer or a project leader.
* Become a fluent Git user.
* Use distributed features of Git to the full.
* Acquire the ability to insert Git in the development workflow.
* Migrate programming projects from other SCMs to Git.
* Learn how to extend Git.
This book is for all open source developers: you are bound to encounter it somewhere in the course of your working life. Proprietary software developers will appreciate Git’s enormous scalability, since it is used for the Linux project, which comprises thousands of developers and testers.
JavaScript语言精粹 豆瓣
JavaScript:The Good Parts
9.2 (17 个评分) 作者: Douglas Crockford 译者: 赵泽欣 / 鄢学鹍 出版社: 电子工业出版社 2009 - 4
本书通过对JavaScript语言的分析,甄别出好的和坏的特性,从而提取出相对这门语言的整体而言具有更好的可靠性、可读性和可维护性的JavaScript的子集,以便你能用它创建真正可扩展的和高效的代码。
雅虎资深JavaScript架构师Douglas Crockford倾力之作。
向读者介绍如何运用JavaScript创建真正可扩展的和高效的代码。
琢石成器 豆瓣
作者: 罗云彬 出版社: 电子工业出版社 2009 - 6
Windows环境下32位汇编语言是一种全新的编程语言。它使用与C++语言相同的API接口,不仅可以开发出大型的软件,而且是了解操作系统运行细节的最佳方式。
本书从编写应用程序的角度,从“Hello,World!”这个简单的例子开始到编写多线程、注册表和网络通信等复杂的程序,通过70多个实例逐步深入Win32汇编语言编程的方方面面。
本书作者罗云彬拥有十余年汇编语言编程经验,是汇编编程网站http://www.win32asm.com.cn的创办者。本书是作者多年来编程工作的总结,适合于欲通过Win32汇编语言编写Windows程序的读者。
UNIX网络编程 豆瓣
Unix Network Programming
作者: 史蒂文斯 / 芬纳 译者: 杨继张 出版社: 清华大学出版社 2006 - 1
《UNIX网络编程》(第1卷)(套接口API第3版)第1版和第2版由已故UNIX网络专家W. Richard Stevens博士独自编写。《UNIX网络编程》(第1卷)(套接口API第3版)是3版,由世界著名网络专家Bill Fenner和Andrew M. Rudoff执笔,根据近几年网络技术的发展,对上一版进行全面修订,增添了IPv6的更新过的信息、SCTP协议和密钥管理套接口的内容,删除了X/Open传输接口的内容。
《UNIX网络编程》(第1卷)(套接口API第3版)内容详尽且具权威性,几乎每章都提供精选的习题,是计算机和网络专业高年级本科生和研究生的首选教材,《UNIX网络编程》(第1卷)(套接口API第3版)也可作为网络研究和开发人员的自学教材和参考书。
UNIX环境高级编程 豆瓣
作者: W.Richard Stevens / Stephen A.Rago 译者: 尤晋元 / 张亚英 出版社: 人民邮电出版社 2006
本书是被誉为UNIX编程“圣经”的Advanced Programming in the UNIX Environment一书的更新版。在本书第1版出版后的十几年中,UNIX行业已经有了巨大的变化,特别是影响UNIX编程接口的有关标准变化很大。本书在保持了前一版风格的基础上,根据最新的标准对内容进行了修订和增补,反映了最新的技术发展。书中除了介绍UNIX文件和目录、标准I/O库、系统数据文件和信息、进程环境、进程控制、进程关系、信号、线程、线程控制、守护进程、各种I/O、进程间通信、网络IPC、伪终端等方面的内容,还在此基础上介绍了多个应用示例,包括如何创建数据库函数库以及如何与网络打印机通信等。此外,还在附录中给出了函数原型和部分习题的答案。
本书内容权威,概念清晰,阐述精辟,对于所有层次UNIX程序员都是一本不可或缺的参考书。
UNIX编程艺术 豆瓣
9.4 (17 个评分) 作者: [美国] Eric S·Raymond 译者: 姜宏 / 何源 出版社: 电子工业出版社 2006 - 2
本书主要介绍了Unix系统领域中的设计和开发哲学、思想文化体系、原则与经验,由公认的Unix编程大师、开源运动领袖人物之一Eric S. Raymond倾力多年写作而成。包括Unix设计者在内的多位领域专家也为本书贡献了宝贵的内容。本书内容涉及社群文化、软件开发设计与实现,覆盖面广、内容深邃,完全展现了作者极其深厚的经验积累和领域智慧。
生物信息学算法导论 豆瓣
作者: N.C.琼斯 出版社: 第1版 (2007年7月1日) 2007 - 7
这是一本关于生物信息学算法和计算思想的导论性教科书,原著由国际上的权威学者撰写,经国内知名专家精心翻译为中文,系统介绍推动生物信息学不断进步的算法原理。全书强调的是算法中思想的运用,而不是对表面上并不相关的各类问题进行简单的堆砌。 体现了以下特色: 阐述生物学中的相关问题,涉及对问题的模型化处理并提供一种或多种解决方案: 简要介绍生物信息学领域领军人物; 饶有趣味的小插图使得概念更加具体和形象,方法更容易被领会,激励学生学习的兴趣并鼓励他们加入到生物信息学研究工作中来。 书中的大量论述表明:较少的几种设计思想就能解决大量的生物学难题。 目前,可供本科学生使用的生物信息学著作为数不多,本书恰恰是其中的一本。国内生物信息学,计算生物学、计算数学等领域的本科生、研究生和其他研究人员,会从书中汲取基本的算法原理、解决实际问题的方法和技巧,进而更好地从事相关研究工作。
用TCP/IP进行网际互连(第三卷) 豆瓣
出版社: 电子工业出版社 2008 - 10
《用TCP/IP进行网际互连:客户-服务器编程与应用(Linux/POSIX套接字版)(第3卷)》是关于计算机网络的经典教材,是目前美国大多数大学所开设的计算机网络课程的主要参考书。目前国内外能见到的各种关于TCP/IP的书籍,其主要内容都参考了《用TCP/IP进行网际互连:客户:服务器编程与应用(Linux/POSIX套接字版)(第3卷)》。该书的特点是强调原理,概念准确,深入浅出,内容丰富新颖。全书共分为三卷。第三卷主要讨论应用软件如何使用TCP/IP,重点研究了客户-服务器范例,并考察了分布式程序中的客户和服务器,举例说明了各种设计,讨论了应用网关和遂道技术。
计算机程序的构造和解释(原书第2版) 豆瓣 Goodreads
Structure and Interpretation of Computer Programs
9.7 (22 个评分) 作者: [美] Harold Abelson / [美] Gerald Jay Sussman 译者: 裘宗燕 出版社: 机械工业出版社 2004 - 2
《计算机程序的构造和解释》成型于美国麻省理工学院(MIT)多年使用的一本教材,1984年出版,1996年修订为第二版。在过去的二十多年里,该书对于计算机科学的教育计划产生了深刻的影响。
在第二版中,大部分重要程序设计系统都重新修改并做过测试,包括各种解释器和编译器。作者根据其后十余年的教学实践,还对其他许多细节做了相应的修改。
具体数学(英文版第2版) 豆瓣 Goodreads
Concrete Mathematics: A Foundation for Computer Science (2/e)
10.0 (5 个评分) 作者: [美] Ronald L. Graham / Donald E. Knuth 出版社: 机械工业出版社 2002 - 8
This book introduces the mathematics that supports advanced computer Programming and the analysis of algorithms. The primary aim of its well-known authors is to provide a solid and relevant base of mathematical skills--the skills needed to solve complex problems, to evaluate horrendous sums, and to discover subtle Patterns in data. It is an indispensable text and reference not only for computer scientists--the authors themselves rely heavily on it! but for serious users Of mathematics in virtually every discipline. Concrete mathematics is a blending of continuous and disCRETE mathematics: "More concretely," the authors explain, "it is the controlled manipulation of mathematical formulas,using a collection of techniques for solving problems." The subject mater is primarily an expansion of the Mathematical Preliminaries section in Knuth's c1assic Art of Computer Programming, but the style of presentation is more leisurely, and individual topics are covered more deeply. Several new topics have been added, and the most significant ideas have been traced to their historical roots. The book includes more than 500 exercises, divided into six categories. Complete answers are provided for all exercises, except research problems, making the book particularly valuable for self-study.