原创 关于《代码大全》收藏

新一篇: 选择教材遭遇的尴尬 | 旧一篇: Windows源代码部分公开

关于《代码大全》
 
很久没有看编程类的书籍了,这几年来,除了翻译了几本涉及编程的书以外,几乎不再看这一类书籍,只是偶尔需要用到某些细节知识的时候,才会查阅相关的图书,而大部分细节知识通过联机文档或者google都可以解决。显而易见,编程类图书的作用越来越弱了,至少对我是这样,当然,我写的程序不像早些年那么多了,这也是事实。
几周以前,《代码大全》的责编找到我,要我为这本书写一点推荐语。我没有阅读过这本书,只是闻其名而已,不过我还是答应下来了。刚拿到书那些天,曾经在看电视的时候,搭配着看这本书,轻松也有收获。看了四分之一,便放下了。
这几天,编辑一催,赶紧再拿起来,毕竟答应了要写一点意见,拖了这么久还是觉得不好意思。后面的部分看得没那么仔细,不过内容和观点倒是很清楚。
这本书几乎覆盖了编程过程中技术以外的所有细节,这些年来,我也经常会想到这些问题,比如变量命名、循环语句、要不要加注释以及加什么样的注释、是否考虑细节上的性能优化、goto语句的用途,等等。虽然阅读不仔细,但它让我看到了技术之外的各种指导,基本上刷新了我想到过的很多编程实践问题。
我一直排斥软件工程,但我很推崇良好的编程习惯。以前我曾经跟别人说过,若有一天你敢把自己的代码开放出去(指Open Source),那你的编程达到了一种境界。当然,如果你厚着脸皮把风格迥异的代码开放出去,那或许是另一种境界。
我一直觉得优秀的程序员不需要很聪明(不过,优秀的算法设计者需要很好的天赋),但是,优秀的程序员一定有很好的编程习惯。这本书正是在指导这些编程习惯,以及传授最佳的编程经验。
在832页有一段引用了Edward Yourdon的话,我很喜欢:
 
“如果你还没有对某个程序花费至少一个月的时间——一天工作16小时,其余8小时也睡得不安稳,老是梦到它,为解决‘最后错误’连熬几夜——你就算没有编过真正复杂的程序,你也不会感受到编程中激动人心的东西。                  ——Edward Yourdon”
 
我建议纯技术爱好者更应该认真看一看这本书,高超的技术水准加上良好的编程习惯,等于优秀程序员中的佼佼者。
 

发表于 @ 2006年07月12日 01:48:00|评论(loading...)|编辑

评论

#longaway 发表于2006-07-14 23:56:00  IP: 211.100.21.*
TrackBack来自《酒至微醇 —— 关于 》

喝得有些晕。看到关于《代码大全》的文章及评论。一时兴起,也说几句。
#movingboy2 发表于2006-07-12 09:13:00  IP: 59.42.128.*
请问作者能否说说为什么排斥软件工程?是你所经历的所谓软件工程让你伤了心,还是你对软件工程有些什么独特的看法吗?
#Bennie 发表于2006-07-12 08:56:00  IP: 61.138.15.*
对832页这段话很喜欢,不知道是作者没有细心看书,还是准备反其道而行。这段话正是作者所反对的编程方式。
#一凡 发表于2006-07-12 11:19:00  IP:
目前软件的“制造”过程还远没有达到可以“工程化”的程度。对于软件工程的“对与错”的思考很早就开始了。但是没有包打天下的“救命法宝”。“软件以人为本”。
#netcliff 发表于2006-07-12 12:06:00  IP: 218.108.49.*
是啊,按照 CC2的说法,应该反对这种编程方式的,不知道这篇文章的作者引用这段话是 支持还是反对
#kiki 发表于2006-07-12 13:00:00  IP: 220.200.90.*
晕 还以为什么感悟呢 N百年前的书了 2都快看完了
你说引用的那句 你认为那么作是对的 那么我告诉你 你这么作不出1年 你将由于劳死病综合症而暴死

这种工作的态度是对的 但是 工作方法是错的

我不知道你是干什么的 但你不喜欢 软件工程 那 只能说明你要么是菜鸟要么就是在野程序罢了 自己对号哈

请不要误人子弟了
#hehe 发表于2006-07-12 12:39:00  IP: 222.66.58.*
hehe
#ejianya 发表于2006-07-12 13:03:00  IP: 210.21.45.*
早在六年前就读过您的《软件工程》这本书了。这是我第一本入门的书籍。如今我也是一个开发人员了。但就是找不到您更多的好书,能介绍一下吗?
#ejianya 发表于2006-07-12 13:05:00  IP: 210.21.45.*
哦!是《软件工程导论》
#sharenet 发表于2006-07-12 14:34:00  IP: 219.130.86.*
你们这些家伙
其实潘大哥说的是很喜欢”在832页有一段引用了Edward Yourdon的话”,是有过开发经验的人的一种真实的感受,所谓的反对软件工程,是反对的教条主义。
年轻人谦虚点
你做潘大哥的学生都不够份,知道吧!
#sharenet 发表于2006-07-12 14:45:00  IP: 219.130.86.*
你们这些家伙
其实潘大哥说的是很喜欢”在832页有一段引用了Edward Yourdon的话”,是有过开发经验的人的一种真实的感受,所谓的反对软件工程,是反对的教条主义。
年轻人谦虚点
你做潘大哥的学生都不够份,知道吧!
#浜斾簯鍫傚皬寮?Url= 发表于2006-07-12 15:04:00  IP: 218.28.167.*
不知道Linux开发用了多少软件工程?
呵呵,kiki还是学生吧。
另外,我也没看出引用的话跟编程方式有什么关系,这句话是说态度的,一种思考的态度,把程序当生命的态度。
#潘爱民很一般 发表于2006-07-12 15:54:00  IP: 219.136.167.*
在国内的高级软件开发人员里面,他算很一般的,大家别太苛刻
#无忌 发表于2006-07-12 16:58:00  IP: 220.248.38.*
在Edward Yourdon那段引文后面,作者的原文是这样的:
This lusty tribute to programming machismo is pure B.S. and an almost certain recipe for failure.

对Edward Yourdon的那段话,大家自可有不同看法。老潘的错误并不是他喜欢那段话,而是在于:他非常推崇CC2这本书,特意写了篇小文;而就在这篇小文里,他又把CC2作者认为是B.S.的东西当精华一样引用出来,大加赞赏。
#kiki 发表于2006-07-12 18:00:00  IP: 220.200.90.*
to sharenet
只有你这种 垃圾 估计喜欢作他学生吧
难怪啊 物以类聚啊
宏志LEE 有那么多FAN也难怪了 都是XX功啊 HOHO
垃圾 谦虚点
你做潘我的学生都不够份,知道吧!
鼻孔扩大了吧,生气了吧 自己回家砸墙 少爷没功夫再来陪你拍

对了 名字乱七八糟的大哥 你说得话不解啊
可能你会把程序当生命 我不会 我会把家人 快乐 当生命
程序 只是自己喜欢的东西 和吸烟 没什么区别
我希望所有程序员都能 多些生活 少些程序 别弄的跟吸毒的似的还到处得意的说 我解决了XX问题 自己的问题都没解决啊

最后 软件工程是必须的 大企业和小作坊的差别在哪里?软件工程

LINUX不是我的研究范围 无视

#camusld 发表于2006-07-12 18:10:00  IP: 202.173.8.*
kiki 发表于2006-07-12 13:00:00
"我不知道你是干什么的 但你不喜欢 软件工程 那 只能说明你要么是菜鸟要么就是在野程序罢了"
------------------------------------------------
kiki是不知天高地厚还是...我不知道该说什么了.敢这样说潘爱民先生.软件工程?信息产业部推崇的,那些老爷们认为的有用的项目经理才觉的这是软件的基础.
#无田耕夫 发表于2006-07-12 17:40:00  IP: 221.223.24.*
鄙视sharenet。追求的是真理,而不是某个大哥。
#潘爱民 发表于2006-07-12 20:59:00  IP: 221.216.19.*
昨天夜里写这篇短文的时候,临近结束翻到832页,看到这段引文,一阵共鸣,想起当年也有过类似的经历,而且我知道很多人有这样的经历。没有仔细看这本书的作者对这段话的评述,就冒冒然收笔了。
今天看到诸多朋友的评述,颇有点讽刺意味。诚如“无忌”所说,我在推荐这本书的同时,却把作者认为不可取的观点拿出来加以赞赏。不过,忽略这里的上下文环境,我确实挺喜欢这段话的。我的观点是,引文中描述的是一种很好的经历,但并不是日常工作方式。我鼓励每个程序员都有这样的经历,但更希望人人都有正常的生活。

以下页面的FOOTNOTES 1:http://www.yourdon.com/strucanalysis/chapters/ch1.html

关于软件工程,我并不看重。我更相信人对代码的控制能力,正常人对于正常复杂程度的代码,控制几十万行代码应该是可以的;如果软件总体上有很好的结构设计,模块之间有稳定、合理的接口,那么,仅仅依靠人的脑袋,加上良好的编程习惯,即使面对大型的软件,应该也能控制。
#wonder88 发表于2006-07-12 21:34:00  IP: 208.46.102.*
关键问题是人不稳定阿,如何依靠人?
#Bennie 发表于2006-07-12 22:01:00  IP: 222.129.146.*
开始之评述,决无讽刺之意,我当年也有过此类经历,但亦以为是不足取的。我也曾相信过我对代码的控制能力,但是后来发现且不可以对人脑的控制力有太高的目标,因为那不该是努力的重点。而且我以为本书的目的并不是为了强调软件工程的。
#lifaint 发表于2006-07-12 22:15:00  IP: 210.72.222.*
楼上大多数人都没有读懂这篇短文的意义,随意评判作者引用的这句话。
Yourdon这段话中所描述的情景,资深一些的开发人员都应该是遇到过的,而CC的作者虽然反对这种生活方式,但是一定也对此深有感触。
楼上的几个人真是中国技术人员中浅薄的代表啊。
#whatisnew 发表于2006-07-12 23:01:00  IP: 221.218.40.*
其实做过做项目最重要的是人,
工程这类的都是死的

潘老师去Mircosoft了吗?
#CAPCHER0110 发表于2006-07-13 21:20:00  IP: 10.1.1.*
呵呵,大名鼎鼎的潘老师现在也写blog了呀,我喜欢你这种有深度的人,三年前还看过vc++技术内幕呢。不过那个微软的开源项目WRK怎么没下文了呢?
#jyeafee 发表于2006-07-14 09:25:00  IP: 222.66.66.*
lifaint "楼上的几个人真是中国技术人员中浅薄的代表啊。"这句话不敢苟同.当然我也不赞成在这里骂人的做法.本来那句话不是一种值的推崇的.新新一代的程序员,做出好的作品,还要学会享受生活的美味.高手并不是都不要生活的吧?
#joule 发表于2006-07-14 12:53:00  IP: 218.27.67.*
我是计算机系学生,还没有太多的经历,
但我认为,做软件应该向做其它产品一样,工厂化生产,而不应该靠少数几个高手,我想将来能为软件工厂化生产做一些贡献!
#piggybank 发表于2006-07-16 15:29:00  IP: 220.165.202.*
潘老师,国内的翻译作品中,您是少有几个我比较愿意看,并且收藏的。
不知道是不是类似的原因,我也不太喜欢软件工程——其实是形而上学的软件工程。
正如最近几年越演越烈的引进西方各种先进管理思想背后暴露出来的问题,如2001年RUP、2002年CMM,以及近两年更多的花样等等,我觉得问题的根源不在于这些东西是否先进,是否好,而是我们消化不良,用错误的方法执行好的想法。

在我看来,我非常认同一个观点:对于软件开发而言,虽然需要聪明的人,但相对而言更需要能够扎扎实实写出质量好而“憨实”的代码的人。这么说是因为聪明人容易轻浮,但不是说聪明人就一定不好,重点在于他意识到自己的不足而设法约束自己,而管理者则适当的搭配和用好人。
我自己就是过于“小聪明”,回顾学习软件开发的岁月,觉得收获最大的几个阶段恰恰是自我克制后坐下来踏踏实实些东西的时候。
而正是这样的原因,无论是在中国传统文化基础上使用西方管理方法,还是在我们这样的IT环境和文化中引入西方的软件工程相关的好的方法论、过程的路途上,有很多障碍需要突破——这是我们很多人没有意识到的。
比如,传统文化造成的一些思维障碍;比如,编写优雅的代码,有良好的编程习惯、错误处理习惯等等。

我也曾经给我所负责过的几个团队(不好意思,不喜欢自称部门经理,更喜欢说是负责团队建设)写过一些东西,组织过一些讨论和培训,看了代码大全,很觉得不错——我不太喜欢看别人写的书,除了一些值得收藏的书我会整套的买,但未必都看,我喜欢保留独立思考的空间——但也很遗憾:为什么我就不能早生二十年?不能在国外?虽然书中的内容很全面,我还达不到这样的总结水平和写作水准,但我相信我们每个人也不差——人家是人,你也是人,你为什么不如别人,还不是说你经验不够,而是更多时候忙着“看”别人的书,“学习”别人的观点和结论,独立思考少了。
当然,我不是反对看书,只是强调一下独立思考而已。

因此,借这个机会说说,也是想提醒那些 fans:你拥护xxx大牛也好,反对xxx伪大牛也好,你真的有那样的独立作出判断的能力么?
说来说去,还不过是众多 fans 之一,受到激素的控制,从众行为罢了。

值得反省一下,你、我作为独立的人存在的价值是什么?不要过于人云亦云,别人牛也好不牛也罢,so what ? 多关注一下自己吧。成事不足,毁人不倦的事情少做哦

另外,潘老师这句话很认同:

若有一天你敢把自己的代码开放出去(指Open Source),那你的编程达到了一种境界。当然,如果你厚着脸皮把风格迥异的代码开放出去,那或许是另一种境界。

自认为自己的编码习惯非常好,写出来的东西不仅错误处理,更为今后的扩展、重构留下极大的余地,早也就脱离了编码和技术的层次,近几年一直从事架构设计、团队建设,但仍然不敢开源,呵呵
很想开源,把以前的一个老作品翻出来,到时候也请国内的朋友们,无论水平高低一起来帮助,一起来思考、学习和提高。

#to piggybank  发表于2006-07-17 17:38:00  IP: 222.171.38.*
你的评论中,对“同构”一次使用不当。 :)

我也是潘老师的Fans之一。
好想让林伟介绍认识一下,可一直很胆怯。。。
我应当算同是较早接触OLE技术的了,记得我的第一个OLE程序还是在MSC6.0下以纯C/SDK写就的呢,呵呵~~ 当时好想写一本关于COM的书,可潘老师的《COM原理与应用》先一步了。呵呵
#BT监控网 发表于2006-07-17 22:17:00  IP: 221.222.77.*

可惜

使用BT下载的注意了,可能你已经被捕了。
www.xobbs.com
记录了你的IP地址等信息。

#林子 发表于2006-07-21 15:18:00  IP: 219.134.169.*
关于软件工程,我并不看重。我更相信人对代码的控制能力,正常人对于正常复杂程度的代码,控制几十万行代码应该是可以的;如果软件总体上有很好的结构设计,模块之间有稳定、合理的接口,那么,仅仅依靠人的脑袋,加上良好的编程习惯,即使面对大型的软件,应该也能控制。
-----------------------
不太理解潘老师写的这段话,顺便说说自己的看法!
“如果软件总体。。有好的结构设计,,XX稳定,,”
最大的前提是这些都做的比较好的情况下,再加上后面讲到的人的控制,才可能成就一个好的项目。
那么我想问的是,好的架构,设计,合理稳定的模块接口那里来呢?
若没猜错,应该是来自好的分析设计,包括架构的,业务的等等,对不对?
好的分析设计怎么来呢?应该来自架构师,分析师吧!
架构,分析师不可能在做完一个项目又一个项目之后不去思考总结吧?
在架构,分析师通过对一个个项目的分析设计后,一定想找到一个统一的标准或模板
以便在下面项目中能够利用以住项目经验,更好的为以后项目开发服务,说的
大一些是否应该就是让软件的开发更像我们建立房屋,建立桥梁一样更工程化一些呢?

反过来讲,我也相信人脑袋创造,控制等能力,但对于越来越复杂的业务逻辑,就要求软件
应该像其它行业学习,规范化,工程化。
因为人的脑力在单个时间内的思考是有限的,这就需要我们有一套工程化的东西理论来指导我们工作。
可能有人会说:不用工程化,理论化这些东西也能解决啊,用我的经验呗,没错,非常正确,经验非常
重要,但如果从另一个层次来理解经验会是什么呢?若把多人的经验稍加改造,定成标准,写入书本,是
不是就是我们说的工程化了呢?

因为我个人认为,软件工程就是一些经验的总结。解决问题或事情方面,应该没有所谓的银弹或大牛,
若有,那么我宁可相信是,在解决某问题时,他会抛出n个解决方案,然后权衡各方面的利弊得出1个较为正确的
方案,经大家的验证,这的确是行之有效的解决方案,于是尊为大牛!
这样看来,软件工程,在一定情况下,一定语境中,合适的去用,是有必要的。
试想,三峡大坝也不是个人拍脑袋或是个人的经验就能解决吗?
呵呵

写的有些乱,希望未曲解潘老师的意思,纯属一家之言,欢迎斧正!





#Eric 发表于2006-08-02 11:22:00  IP: 218.109.44.*
楼上请明确一下何谓“软件工程”。楼上所说的软件工程,其实更像是“正确的做事方法”。正确的做事方法当然是有价值的。

“软件工程”并不能笼统的说是经验的总结,实际上“软件工程”更多的是规章制度和项目实施规范。

软件工程,更像是一种不切实际的期望。期望着软件可以象房子那样按部就班的重复生产出来。
#hackyeat 发表于2006-08-03 01:54:00  IP: 219.128.48.*
----其实一天工作16个小时,如果睡觉5个半小时,每天半个小时运动,剩下两个小时用于其他,我想是够的,只是我还没经历过一个月的.
----本人喜欢书法,所以写代码时喜欢写得漂亮些,简练些,至少是为了自己养眼,但不是自慰.其好处多多,也不必多说.
----软件工程是一个大问题,我想等取得SA时再来妄言几句.现在是忠实聆听者.
----小弟路过,感谢潘大哥翻译的《VC++技术内幕》,很透彻,看了以后,只要结合Googel和Baidu基本解决问题。
#林子 发表于2006-08-07 13:48:00  IP: 59.40.214.*
TO:Eric

找到一篇类似但写的较好的文章:
http://www.zhangxun.com/tmpl_book.aspx?sname=cc2e
#阿呆 发表于2006-09-01 08:39:00  IP: 192.168.0.*
呵呵,写得非常好哈。受教中........
另一个不错的类似技术文章:
http://blog.csdn.net/cxxsoft/archive/2006/08/04/1019656.aspx
#phixcoco 发表于2006-09-10 15:57:00  IP: 10.212.43.242, 10.212.43.*
祝潘老师教师节快乐~~
#阿呆 发表于2006-09-18 10:57:00  IP: 192.168.0.*
另一篇非常不错的类似文章:"一个典型的采集服务器体系结构设计"
http://blog.csdn.net/cxxsoft/archive/2006/09/18/1236331.aspx
#Antihero 发表于2006-09-22 10:20:00  IP: 192.160.11.*
想不到在csdn上可以看到潘爱民老师的博客,只是可惜文章太少了,估计太忙了吧。
#wd 发表于2006-09-22 13:33:00  IP: 218.18.133.*
在832页有一段引用了Edward Yourdon的话,我很喜欢:

“如果你还没有对某个程序花费至少一个月的时间——一天工作16小时,其余8小时也睡得不安稳,老是梦到它,为解决‘最后错误’连熬几夜——你就算没有编过真正复杂的程序,你也不会感受到编程中激动人心的东西。 ——Edward Yourdon”

你可能没有注意作者对这段话的评论,作者在书中对这种狂热的状态是不赞成的。
#wd 发表于2006-09-22 13:36:00  IP: 218.18.133.*
“如果你还没有对某个程序花费至少一个月的时间——一天工作16小时,其余8小时也睡得不安稳,老是梦到它,为解决‘最后错误’连熬几夜——你就算没有编过真正复杂的程序,你也不会感受到编程中激动人心的东西。 ——Edward Yourdon”

对于这段话作者是持否定的态度的!
#这个那个 发表于2006-09-25 08:43:00  IP: 59.44.102.*
“天工作16小时,其余8小时也睡得不安稳,老是梦到它”

呵呵,当年盖茨也是这么干的,这才有了Basic,DOS,以至后来的一切。

强烈的兴趣和稳定的工作方式,很多时候是矛盾的,潘老师推崇这段话,不过是说程序员对工作应该有种强烈的兴趣,忘我的投入罢了,只有这样忘我的投入的精神,才可能做好程序。

当然,如果你又能保持强烈的兴趣,又能稳定的工作,这就更好了,这表示你对自己有种更强的控制力。

但是呢,话说回来,真正做过程序的人,真正对程序有强烈兴趣的人,恐怕都有过那种忘我投入的时候,如果没有经过这种忘我投入的阶段,恐怕也达不到后面那种更高的工作境界。

#rickerliang 发表于2006-10-12 12:37:00  IP: 61.144.105.*
软件工程的确就是正确的做事方法,它与手工作坊有本质的区别
#POOR 发表于2006-10-26 13:05:00  IP: 61.48.16.*
我觉得像“潘老师”这种水平的人以后就不要出来显眼了,现在国内外技术交流频繁的大情况下,像你这种不思进取,懒于钻研的人,还是安安稳稳的区过你的小日子好了。
#浴室举茎 发表于2006-10-26 12:58:00  IP: 61.48.16.*
软件工程讲究的是一种方法论,软件工程纵横需求、设计、开发的方方面面,横贯管理方法、设计原则、编码技巧各点。软件工程思想的思想才是真正能体现“软件之美”的地方,这位号称“潘老师”的人不要一叶障目,被大学“瀑布法”的教程伤了心就大发牢骚。自己的信念是自己的事,但拿出来毁人就是制造罪孽,但愿中国少一些你这样的程序员多一些真正的软件大师。
#COM原理的读者 发表于2006-10-26 16:45:00  IP: 61.144.151.*
希望大力赞成软件工程的人,是有实际的项目的体验。既体会到软件工程的作用,也体会到它的局限。
#chensan 发表于2006-10-27 10:03:00  IP: 210.185.230.*
POOR 发表于2006-10-26 13:05:00 IP: 61.48.16.*
我觉得像“潘老师”这种水平的人以后就不要出来显眼了,现在国内外技术交流频繁的大情况下,像你这种不思进取,懒于钻研的人,还是安安稳稳的区过你的小日子好了.

---------------------POOR是白痴,pan多厉害你知道吗????
#LostInet 发表于2006-10-28 00:07:00  IP: 222.209.214.*
能体会潘的那句话具体含义,对于我们这辈从DOS过来的人,曾经全字符界面编程确实一种快感和享受,在中国现在这个大环境下,软件工程确实需要真正的本土化。现在的后代小生可不得了老,呵呵,软件技术也需要时间的积累,自信是好事,但是过了就是夜郎自大了,我好心提醒那些诸如POOR、kiki 的后生们,真正技术不是把几个专有名词挂在嘴边就行了,如果你们以后能够达到潘的成就,那你已经很不错了。
当然技术是无止境的,但是再最好把基础打牢靠。做点成绩出来,然后在过程中认真领悟,然后再来客观评价别人。
#abc 发表于2006-10-28 11:00:00  IP: 219.136.45.*
想起歌德的一句话:未尝和着泪水咽下面包的人,不足与之谈人生。
#大阳 发表于2006-10-28 23:21:00  IP: 210.72.212.*
我们应该客观地评价别人,这是作为一个成年人起码的常识,不知POOR、kiki 等是否真正有货,说话的口气倒像个高手
#aaaaa 发表于2006-11-04 16:45:00  IP: 61.144.230.*
aaaaaaaa
#C++ 发表于2006-11-06 16:07:00  IP: 58.60.105.*
中国的科技就靠你们了,
#C++ 发表于2006-11-06 16:08:00  IP: 58.60.105.*
中国的科技就靠你们了,
#ccccccc 发表于2006-11-06 16:20:00  IP: 58.60.105.*
//????
#C 发表于2006-11-06 16:30:00  IP: 58.60.105.*
带头大哥在《天龙八部》里被慕容博给利用了,可惜
#POOR 发表于2006-11-06 20:20:00  IP: 221.223.83.*
中国有学霸,还有LostInet、大阳这样的吹鼓手,我没有否认“潘老师”编程的能力,没有否认他在你们眼中的形象高大是错的。不过我更希望中国能多些像Robert,martin Fowler,Craig Larman这样的人,不但深谙软件之美的这个道,更能将这些道传授给那些好奇而渴求知识的人。你再看看你们,除过冷嘲热讽,还做过一件对别人有点意义的事么?你们把“潘老师”当作神,那是你们自己的事,我根本不愿理会,我只希望中国能多出些诲人不倦的大师,少些像你们这样的故作莫测状的人。看不懂我的意思是你们思想上的欠缺,看不懂还要上来咬,就是自讨没趣了。
#WO SHI SHUI 发表于2006-11-14 15:30:00  IP: 211.94.138.*
POOR ,バガ、あなたはすっほん
#yehou 发表于2006-11-14 19:46:00  IP: 61.141.150.*
事实上,潘某人已经搞臭了N多的书, 我只要见到潘翻译的书就会扔在一边.可惜了那些原著.
#yehou 发表于2006-11-14 19:49:00  IP: 61.141.150.*
看电视的时候也能看掉四分之一,,,小强,这么不负责任的人
#young40 发表于2006-11-18 04:43:00  IP: 221.237.54.*
国人,真牛。
什么事情都讨论的一塌糊涂。。。。。。。

技术之外的我们都喜欢。。。。
#KAKA 发表于2006-11-23 17:40:00  IP: 192.168.1.*
软件工程,这个词,是专家吹牛,教授混饭吃的。
所谓工程,先有一个概念,然后有设计,然后是实施,这些是可以分开的。如果和建筑工程作各类比,建筑图纸从设计院出来后,甲施工队和乙施工队造出来的东西应该是一样的。软件项目,目前做不到。

但是,软件开发是个过程,是有方法论的。Windows 这样的产品,上千个版本,几千万行代码,每天做build,没有一个过程,一套工具是搞不定的,这个过程在软件工程教科书里绝对找不到。小项目也一样,只不过是简化的过程,简单的工具,如此而已。

无论是RUP,XP,BUP,都是一种过程。
“人对代码的控制”,这是很新奇的说法,这里的人是指一个团队?如果是,那何止几十万行? 如果指个人,那他只不过是在自娱自乐而已。CODING其实也可以是一种娱乐。严肃的项目,都有时间进度等限制,不太可能几十万代码让一个人玩个一年两年的。


#wlcsdp 发表于2006-12-07 16:45:47  IP: 222.131.56.*
《代码大全》的作者Steve McConnell是Construx公司首席软件工程师,在公司里监督软件工程实施。他是软件工程知识体(SWEBOK) 项目构建知识领域的领导。Steve曾为微软公司、波音公司和西雅图地区的公司工作过。 Steve McConnell是以下著作的作者:1996年的《快速软件开发(Rapid Development)》、1998年的《软件项目长存之道(Software Project Survival Guide)》和2004年的《专业软件开发(Professional Software Development)》。他的书由于杰出,曾两度获得当年的《软件开发(Software Development)》杂志的优秀震撼大奖(Jolt Excellence award)。Steve还曾是SPC评估专业版的开发领袖,软件开发生产力大奖(Software Development Productivity award)的获得者。1998年《软件开发》读者推选Steve McConnell为软件行业最有影响力的三个人之一,与Bill Gates、Linus Torvalds齐名。 Steve从Whitman大学获学士学位,并从西雅图大学获软件工程硕士学位。 而Construx公司几乎所有的软件工程师都获得了CSDP认证!! www.csdp.com.cn
#ridrare 发表于2006-12-08 22:04:34  IP:
另外,潘老师这句话很认同: 若有一天你敢把自己的代码开放出去(指Open Source),那你的编程达到了一种境界。当然,如果你厚着脸皮把风格迥异的代码开放出去,那或许是另一种境界。 改一下送给 kiki 若有一天你敢把自己的看法放到别人的blog 文章下的评论里,那你的除了个人编程的技艺之外的对人生的看法的能力达到了一种境界。 当然,如果你厚着脸皮把你自认为有道理的东西发表出去,那或许是另一种境界,不能叫不知天高地厚,不能叫没有自知之明, 不能叫污染环境, 不能叫混淆视听,不能叫垃圾制造, 应该叫,应该叫 什么呢。
#jamermontane 发表于2006-12-13 13:50:23  IP: 218.247.216.*
<<代码大全>>些书确是不错.有着每一位希望心平静气做程序的程序员应该学习的东西. 看到如此过多的回贴,也比较惊奇,这毕竟是一点点感受,又何必兴师动众地你争我夺呢?
#yzss 发表于2007-01-05 23:57:40  IP:
技术讨论没问题,但是人身攻击就不对了,希望大家多讨论技术方面的问题,不要做无谓的口水之争
#xabcxabc 发表于2007-01-06 16:31:40  IP: 219.245.161.*
这个例子是 VC++ 高级编程技术与实例 宋哓宇 王永会 编著.中国水利水电出版社 2006年1月第一版 价格37. 第五章多线程的一个例子
1:
建立一个基于对话框的程序Test
2:
在对话框上放置一个按钮IDC_BT_START.和一个进度条控件IDC_PROGRESS1
并为IDC_PROGRESS1关联一个变量m_progress;
3:
在TestDlg.h文件中,定义一个结构体
struct threadInfo
{
CProgressCtrl * p_Progress;
CDialog * p_Dlg;
int second; //进度条暂停时

}
4:
在TestDlg.cpp文件中
#define USER_PROC_FINISHED WM_USER+1

threadInfo Info;
UINT ThreadProc(LPVOID pParam)
{
threadInfo * p=(threadInfo *)pParam;
for(int i=0;i<=100;i++)
{
p->p_Progress->SetPos(i);
::Sleep(p->second*10);


}
::PostMessage(p->p_Dlg->GetSafeHwnd(),USER_PROC_FINISHED,0,0);
return 0;
}
5:
在按钮IDC_BT_START的单击响应中:
void CTestDlg::OnBtStart()
{

Info.p_Progress=&m_progress;
Info.p_Dlg=this;
Info.second=1;
AfxBeginThread(ThreadProc,&Info);
}
6:
在TestDlg.h中声明消息函数

.........
//}}AFX_MSG
afx_msg void OnFinish();
7.
在TestDlg.cpp文件中
BEGIN_MESSAGE_MAP(CTestDlg, CDialog)
.......
ON_BN_CLICKED(IDC_BT_START, OnBtStart)
//}}AFX_MSG_MAP
ON_MESSAGE(USER_PROC_FINISHED,OnFinish)
END_MESSAGE_MAP()

void CTestDlg::OnFinish()
{
SetDlgItemText(IDC_BT_START,"线程结束请重新启动");
}




在候捷译的<Win32 多线程程序设计>书中p294中说:
1:<
#cloudwu 发表于2007-01-10 20:58:37  IP: 218.72.14.*
我也仔细读过了这本书(写了几千字的读书笔记可以从 google 到),并且非常喜欢。

Edward Yourdon的话当时我读的时候也觉得挺有共鸣的 :) 还真的去回忆自己到底有几次超过连续 16 小时的工作经历。

喜欢这本书,赞同书中的观点,跟喜欢这段话并不矛盾。
#zyh163_java 发表于2007-02-04 05:14:54  IP: 222.90.143.*
这么热闹啊~高手们在讨论一个很深奥的问题! 事实上你们上面讨论的我70%没看懂~ 我不懂什么软件工程 也不懂什么代码控制~更不懂重DOS过来的人今天是种什么样的感受~我只知道我现在用的和学的都是别人的,连看的书都是翻译别人的(E问看个大概 水平有限),可是我很梦想着有一天中国人(高手们)自己严法的东东让我用用 爽一下也好啊~ 那高手们写本什么书 翻译成E文让美国的(高手们)看看我也觉得爽啊~ 如果有了别忘了说一下,我会‘爽’一下的。
发表评论  


当前用户设置只有注册用户才能发表评论。如果你没有登录,请点击登录
Csdn Blog version 3.1a
Copyright © 潘爱民