博文

【Scott Meyers】C++5×5断想之一:C++历史上最重要的图书(2006-11-12 14:27:00)

摘要:  【Scott Meyers】C++5×5断想之一:C++历史上最重要的图书   小狼注:很可惜,我推荐的三本C++书《C++ Primer》、《Effective C++》和《深度探索C++对象模型》只有一本上榜,但是我仍然认为我推荐的三本书是很值得大家学习,同时推荐这篇文章供大家参考。   原文地址:http://www.artima.com/cppsource/top_cpp_books.html。译文发表于《程序员》2006.11。 作者介绍 Scott Meyers,C++顶级权威之一,为世界各地客户提供培训和咨询服务。出版有畅销的Effective C++系列图书(《Effective C++》、《More Effective C++》和《Effective STL》),设计了创新型的Effective C++ CD,Addison Wesley的Effective Software Development Series顾问编辑,The C++ Source (http://www.artima.com/cppsource/)咨询板块专家。布朗大学计算机科学博士,他的网站是www.aristeia.com。       1991年,我写作了《Effective C++》。在此之前,我已学习C++多年。坐下来撰写本文的同时,我相信我的C++学习历程始于1986年,现在是2006,正好是我学习C++20周年和写作第一本C++图书15周年纪念。不过,记忆里——至少在我的记忆里——不敢保证,似乎有历史记录证明过我实际于1988年开始接触C++。如果是这样的话,那么现在应该是我与C++的19周年纪念年。虽然这个数字比不得20那么完整,但仍然说明C++于我已是多年老友。今年里,无论作何考虑,我都觉得我不应该关注C++的未来,而是回想它的过去。目前,C++的未来是热门话题,比如备受关注的下一个版本语言规范(C++0x),临近最后定稿阶段,首版技术报告已经出炉,二版也正蓄势待发。但我现在想驻足过去,做点与众不同的事:分门别类评选C++历史上最重要的贡献。 首先要公布的是最重要的五本C++图书。公布之前,我想先罗嗦几句。这些C++领域最重要贡献是在我个人阅历和准则基础上评......

阅读全文(3944) | 评论:0

差异程序员-评《游戏之旅——我的编程感悟》(来自csdn)(2006-04-03 16:25:00)

摘要:差异程序员-评《编程感悟》
2005.12.10     转自csdn
 
云风的《游戏之旅——我的编程感悟》是一本以程序员视角写的书,在众多传道授业解惑的书中,这个类型的书显得有些另类。在我的藏书中,这样的书有三本,王轶男的《编程黑马真言》、梁肇新的《编程高手箴言》和云风的这本《游戏之旅——我的编程感悟》。指望从这种书中获取知识也许本身就是一种错误,虽然不可避免的也能学到一些东西,因为作者的立意就不是教给别人什么东西,只是分享自己的心得,再加上我们实际的背景与作者可能差之千里,所以,看懂字面上的意思就算得上难得了,更何况看透背后的含义呢!但我依然乐于读这种书,品味作者走过的路,体会作者看待问题的方式,顺便开阔一下视野,了解一些不曾了解的东西。   在这本书的第二章,云风提到了一个问题,今天的许多以程序为生的程序员在工作中感到了理论的脱节,书本上的基本算法和数据结构看似无用。现代编程语言,不再重视程序逻辑的实现和数据的简单描述方法,而注重问题的分化、类层次的设计、模块的封装。   关于这个问题,我在日常开发中也有一些体会。写过许多程序,却少有需要在算法上需要费些思量的地方,大多数程序几乎可以凭借对软件开发的直觉就能写出来,这种情况下,写程序更多的是在考虑业务问题,而对于计算机知识的关注几乎被压到了最低。我曾经疑惑过,如果这就是软件开发,那么自己学到的计算机知识到底意义何在。借着云风的这个问题,我试着给出一个自己的答案。   软件开发是为了用计算机解决实际问题,而程序就是一座架在实际问题和计算机之间的桥梁,程序员的使命就是作为一个翻译,用程序设计语言让二者可以进行沟通。从程序设计语言的发展趋势中,我们可以看出,随着计算机基础设施的日益完善,程序设计的中心越发远离了计算机,而更加靠近问题领域:汇编让机器码成为了历史,而C语言让程序员不再理会寄存器,C++让人们更加有效的组织数据,到了Java,内存管理也成了历史,发展中的MDA让有意让模型发挥更大的作用,让现阶段的语言下岗是它的一个努力方向。   这是一种进步,因为编程的最终目的是为了解决问题,我们很清楚专注的力量,如果能把更多的精力放在问题上,而非其它一些与问题本身无关的内容上,我们可以更快更好的解决问题。像基本算法和数据结构这些东西与问题本......

阅读全文(6212) | 评论:0

第16届 JOLT 卓越产品奖隆重揭晓(来自csdn)(2006-04-03 16:18:00)

摘要:第16届 JOLT 卓越产品奖隆重揭晓
2006.03.17  来自:CSDN EricLee  有人认为一项技术产品只有在获得了Jolt奖之后才能真正成为行业的主流,一本技术书籍只有在获得了Jolt奖之后才能真正奠定经典的地位。Jolt大奖共设通用类图书、技术类图书、语言和开发环境、框架库和组件等十余个分类,每个分类设有一个“卓越奖”(Jolt Award)和三个“生产力奖(Productivity Award)。 通用类图书 卓越奖: Prefactoring by Ken Pugh (O'Reilly) 生产力奖:
Innovation Happens Elsewhere: Open Source as Business Strategy by Ron Goldman, Richard P. Gabriel (Morgan Kaufmann)
Producing Open Source Software: How to Run a Successful Free Software Project by Karl Fogel (O'Reilly)
The Art of Project Management by Scott Berkun (O'Reilly) 技术类图书 卓越奖:Agile Web Development with Rails by Dave Thomas, David Hansson, Leon Breedt and Mike Clark (Pragmatic Bookshelf) 生产力奖:
Framework Design Guidelines: Conventions, Idioms, and Patterns for Reusable .NET Libraries by Krzysztof Cwalina and Brad Abrams (Addison-Wesley)
Practical Common Lisp by Peter Seibel (Apress)
Why Programs Fail: A Guide to Systematic Debugging by Andreas Zeller (Morgan Kaufmann) 企业项目管理 卓越奖:......

阅读全文(4182) | 评论:0

侯捷的书——小李飞刀的刀(2006-03-24 22:59:00)

摘要:      侯捷其人—— 先生不知何许人也。闲静少言。不慕荣利。 好读书。求甚解。每有会意。击节高歌。欣然忘食。 嗜咖啡。妻严不能常得。 亲旧知其如此。或备而礼之。或置而招之。 造饮辄尽。期在必快。既快而退。曾不吝去留。 善善恶恶。贤贤贱不肖。曲高和寡。直言罪人。晏如也。 胸有点墨。心无城府。常着文章自娱。颇示己志。 忘怀得失。以此自终。(侯捷语)          有人说“其实侯捷也就是一个写书的”,呵呵,此话也不无道理,侯捷在华中科大的一次与学生“共话IT人生”的交谈中也承认自己由于年龄的原因,在企业里面从事软件开发对自己有点难度(当然,热爱教育也是一方面) ,侯捷的作品主要是计算机方面的,涵盖著、译、评三个方面。          早几年曾经有人把侯捷、李维和蔡学庸称为中国台湾的三大高手(注:本文的高手、专家主要是针对著书立说方面,请勿“钻”) 。侯捷的功力自不用说,他是本文的主角(小李不是主角,小李是上文《老李语录》的主角  );李维任职于Borland,主要的作品大部分同Borland的产品相关,像《Inside VCL(深入核心——VCL架构剖析)》、《Borland传奇》、《面向对象开发实践之路》(有delphi和C# 版)还有Delphi、C++Builder和JBuilder等书籍都比较流行,最近Borland公开出售Delphi IDE生产线,有人给李维的blog留言叫他赶快跳槽,呵呵,真是难为了李维了;蔡学庸,其实他的书我好像很少见到,我看过他的《Sleepless in Java(Java夜未眠)》写的还行,不过大部分都是一些软性文章,阅读起来很轻松,不需要什么阅读门槛。蔡学庸的文章主要都是在《程序员》杂志上看到,记得他曾经在《程序员》杂志上介绍C#的序列文章,觉得很庸俗,但是想一想,一种新知识的开始或许还真的需要这样一个过程,去年《程序员》杂志李建中和Lippman(不用介绍吧,简单说就是《C++ primer》的作者)中外两大高手介绍C++/CLI 序列文章,看的还有点深奥,然而或者过些时候等这种技术成熟普及以后,大......

阅读全文(6201) | 评论:0

《程序员》推荐三味书斋——OO篇(2006-03-23 12:32:00)

摘要:《程序员》推荐三味书斋——OO篇
来自《程序员》2002年第10期

创建人: 《程序员》
安安注:以下人物介绍的时间是文章出版时期。

主持人:熊节(透明):《程序员》杂志社技术编辑,C-View成员。
嘉   宾:孟岩(梦魇):联想公司掌上设备事业部应用开发处任职,C-View成员。与侯捷先生合译了《C++ Standard Library》一书。
王昕(痴人),C-View成员,《The C++ Standard Template Library》译者。

透明:对于面向对象,UML应该是第一要素。自然语言有着极大的不精确性,维特根斯坦认为这种不精确性是一切哲学问题的根源。如果要用自然语言来描述一个软件系统,这种不精确性也会给软件工程师之间的交流带来巨大的麻烦。UML的价值就在于:它比较精确,并且比较形象直观,对于促进开发者之间的交流是很有好处的。

梦魇:我目前还没有系统地学习过UML。在目前的OO领域,UML确实具有标准语言的地位,虽然这并不意味着它就没有缺点和错误,但是有一种标准语言,总比大家自说自话,老死不相往来要强得多。不过在我看来,它最重要的意义也就在于它是公认的标准,大家以它为共同语言进行交流。这并不等同于说UML就是OO,或者不懂UML便不懂OO。
UML是不是OO的核心或者第一要素,我持怀疑态度。我也很怀疑,那些只会画UML图,并自命为“架构师”的人,究竟能否真正设计出精致的系统。

痴人:其实我对于UML现在已经没有什么感觉了,说到底,UML只是一种工具,所谓的OO还是只能存在于开发人员自己的脑袋中。只是为了沟通上的需要,有UML这么一个标准的工具会方便很多。从其他方面来说,只要大家都愿意并且可以很好的交流,直接用代码来沟通也不是一个很坏的主意。

透明:其实我从来都没有认真学过UML,只看过一本《UML参考手册》,是汪颖翻译的电子版。在做项目、写文章、译书的时候,对UML有什么不懂的,就到那本参考手册里面去查查,慢慢也就熟悉了。不过这种学习方式的缺点就是:自己不太用的feature就总也掌握不好。比如用例,我到现在都不太明白。如果是想认真学UML,机械工业出版社的三本书《UML参考手册》、《UML用户指南》和《UML和模式应用......

阅读全文(4330) | 评论:0

推荐C++教程(综合了好几个人的推荐)(2005-12-06 23:45:00)

摘要:安安注:总体而言这里面的推荐比较客观,在我的blog里面还收集了荣耀的《C++程序设计之四书五经》,见:http://blog.programfan.com/article.asp?id=5018  大家特别是初学者就综合大家之言选择适合自己的书籍吧。 推荐C++教程 1.  <<The C++ Programming Language>> , Bjarne Stroustrup
这是一本每个人都应该买但不一定要看的书,强烈建议初学者不要看这本书,否则可能会一头雾水,失去信心,BS写书本来就不怎么样,他自己都说他的书有些晦涩难懂,但是买一本放在书柜里,有什么不清楚的地方查查高人如何解析还是有必要的。中文版是裘老师翻译的,以裘老师的深厚功力,技术上大家大可放心,但语言流畅上我就不敢认同了,况且这还是一本大书,如果要追求语言流畅的话,可能没有两3年是出不来的,而且国内的出版社又那么急功近利,稿酬不高,做得那么好有必要吗? 2.  <<C++ Primer>> , lippman 
lippman的地位自然不用猜疑,此书也被评为C++的最佳入门书籍,也是Lipman写得最认真的一本书,第3版在国内98年就有了。全书可谓是C++大全,深度适当,比较适合初学者,或者想对C++和程序设计有大概了解的读者, 但就是比较厚,这也只能怪C++的源远流长,总是在打园场,不断增加新特性,让我们这群读者都不得不捧着这本大书品读。中文版是潘老师翻译的,文字通顺,但缺乏味道,看着一本千来页的书,而且前面一部分讲的都是程序设计思想,容易令人产生困倦,也难怪很多人半道出家学java。
 
3.  <<effective C++ >> Scott meyer 同下 4. <<more effective C++>> , meyer
这年本书乃是改善设计思维和设计思想的必读书籍,书中每个item莫不是经过千锤百炼之后得出。其中,effective比较浅显易懂,每个item都比较短,而more设计思想更进一层,有些item已经多多少少有设计模式的味道。我看过的是繁体版,这两本书候老师翻译得不错(我觉得......

阅读全文(21080) | 评论:0

推荐一些算法方面的好书(来自北大bbs)(2005-12-05 13:36:00)

摘要:推荐一些算法方面的好书
1.The Art of Computer Programming
作者:Donald E. Knuth
出版社:
中文版由国防大学出版社发行,中文译本书名为《计算机程序设计艺术》,目前市场上买不到,但是听说快要出第三版的中文版了(已经出版了,我在海定图书城看到了,安安注)。
网络资源:
作者主页: http://www-cs-faculty.stanford.edu/~knuth/
电子版图书:超星数字图书馆 有中文版第一卷和第三卷
简介:
        简称TAOCP,是算法界公认的"葵花宝典"。这本书被American Scientist 评为
20世世纪科呀缱钪匾?2本学术著作之一,这12本著作中包括Einstein的相对论、Di
rac的量子力学、Mandelbrot的分形理论、Wiener的控制论等,由此可见这本书的价值。该书的作者Donald E. Knuth也是计算机界公认的大师,他是laTeX文件格式 的发明者,是编译原理中LR(k)文法分析算法以及其它很多著名算法的发明者。因为他在算法设计和分析领域的贡献,以及他所写的这本TAOCP,他获得了1974年计算机界的诺贝尔奖--图灵奖。
        TAOCP原计划要出七册,但是一直到目前为止Knuth只完成了三册 ,而目前只能
找档 第一册和第三册的中文版。这本书最初写于60年代,当时还没有流行的高级编程语言,所以Knuth自己发明了一种称为MIX的汇编语言,书中的算法和代码都用MIX语言描述,因此这本书并不适合初学者使用。现在虽然已经是第三次修订版,但是看来Knuth并不打算用某种高级语言来重写他的书。这本书最大的特点就是语言生动活泼,内容深入浅出,随手翻来读一读也会觉得妙趣无穷。即使不作为学习资料,该书也极具收藏价值,毕竟历史上还没有人像Knuth一样因为写了一本书而得到图灵奖。
推荐程度:五星级
使用语言:MIX
适用对象:适用于有较高水平的读者,初学者不易读懂,但是该书极具收藏价值。
2.Introduction to......

阅读全文(19219) | 评论:16

近10年最强的50本计算机图书,您读过几本?(转)(2005-11-30 20:23:00)

摘要:  近10年最强的50本计算机图书,您读过几本? document.title="近10年最强的50本计算机图书,您读过几本? - "+document.title 美国著名图书频道Book Pool集结最权威的62位作者评选出了最近10年计算机专业图书中的50强( 光这62位作者阵营就非常强大,我们熟悉的就有:
Francesco Balena(Microsoft.NET框架程序设计,Visual Basic.NET语言描述作者) Bert Bates(Head First Design Patterns作者) Joshua Bloch(Effective Java作者) Kalen Delaney(Microsoft SQL Server 2000技术内幕作者) Stephen C. Dewhurst(C++ Gotchas作者) Bill Evjen(Visual Basic.NET宝典作者) Dino Esposito(构建Web解决方案—应用ASP.NET和ADO.NET、Microsoft .NET XML程序设计作者) Andy Hunt(Pragmatic Programmer系列图书作者) Gary McGraw(Exploiting Software: How to Break Code作者) Steve McConnell(Code Complete作者) Christian Nagel(Enterprise Services with the .NET Framework作者) Arnold Robbins(Linux程序设计作者) Tim O'Reilly(O'Reilly媒体集团创始人) Chris Sells(Windows Forms程序设计、.NET本质论作者) Stephen Walther(设计模式--可复用面向对象软件的基础作者) John Vlissides(ASP.NET揭秘作者) 由此可见,这次评选的权威性,还是让我们来看看这50本书的分布吧: 软件工程类
按照现代计算机技术的发展,人月神话应该称得骨灰级图书了,计算机图书能够流行30年,Frederick Brooks确实让人刮目相看。这种现象......

阅读全文(13150) | 评论:1

最近十年计算机图书(2005-11-28 16:31:00)

摘要: NO.1    设计模式:可复用面向对象软件的基础

Design Patterns: Elements of Reusable Object-Oriented Software
NO.2    人月神话

The Mythical Man-Month: Anniversary Edition NO.3    TCP/IP详解卷1:协议 TCP/IP Illustrated, Volume 1: The Protocols
NO.4    编写安全的代码 Writing Secure Code, Second Edition NO.5    UNIX环境高级编程
Advanced Programming in the UNIX Environment, 2nd Edition
NO.6    代码大全

Code Complete, 2nd Edition NO.7    C程序设计语言

The C Programming Language, 2nd Edition NO.8    计算机程序设计艺术

Art of Computer Programming Volumes 1-3 Boxed Set NO.9    Effective C++

Effective C++: 55 Specific Ways to Improve Your Programs and Designs, 3rd Edition......

阅读全文(5916) | 评论:2

Windows 开发书籍推荐(转载)(2005-11-21 20:18:00)

摘要: Windows 开发书籍推荐(转载) 现在的计算机图书发展的可真快,很久没去书店,昨日去了一下,真是感叹万千,很多陌生的出版社,很多陌生的作者,很多陌生的译者,书名也是越来越夸张,什么××天精通××,精通××编程, ××宝典等等,书的印刷质量真的很好,纸张的质量也是今非昔比啊,但书的内容好象却是越来越让人失望,也许是我老了,我的思想我的观念已脱离现实社会,也许是外面的世界变化得太快,我编程数月,出去一走,路已不是原来的路……回家看着书架上的旧书发呆,听着李克勤的旧欢如梦,才发现自已原来太喜欢怀旧.

笔者从事软件开发多年,其中有两年多的时间一直是与Windows底层打交道,涉及到驱动程序,嵌入式OS,Windows应用程序(如GUI,图形图像技术,多线程,组件技术等等)等方面的开发,写了很多很的源代码……也许我的阅读面过于狭小,书架里基本上都是Jeffrey Richter,Charles Petzold,侯捷老师以及潘爱民老师的书,这些书一直陪伴着我,并给我的编程工作带来了很大的帮助,希望我的推荐对你也有帮助。

Windows编程类

Windows 程序设计(第5版)(上、下册)
原书名: Programming Windows (Fifth Edition)
原出版社:Microsoft Press
作者:(美)Charles Petzold
译者:北京博彦科技发展有限责任公司
出版社:北京大学出版社
出版日期:2001-03
页码:1376
定价:160:00RMB

此书被认为是Windows编程最好的导论性读本。在1994年5月,此书的作者Charles Petzold被《Window Magazine》和Microsoft公司授予”Windows Pioneer”奖,以表彰他对Microsoft Windows的成功作出的贡献,可见该书的权威性,以至于“如果对Windows开发有什么问题的话,请翻阅PetZold的著作吧”几乎成了一句至理名言。
本书覆盖了WINDOWS编程的方方面面,将windows编程的每一个元素(如输入,输出及对话框,图形,多媒体,线程,文档与视图,Internet等等)讲解得很清晰、简明,采用的大多是具有代......

阅读全文(7354) | 评论:1