2007年8月3日星期五

《C++沉思录》阅读笔记(3)

1.Murphy's Law 墨菲法则,一件事只要有可能变糟,就一定会变糟。
2.通常我们不可能为特定的工具挑选合适的问题;而应该为特定的问题挑选合适的工具,但目前我们常常会在没有分析问题前就决定了工具,这常常是因为商业意义或其它原因。有时我会在第一次技术讨论会上,在一段5分钟的简短需求说明后,听到项目经理斩钉截铁地提出要采用J2EE+***或者ASP.NET+***等方案,然后兴致勃勃地讲述该技术平台的优越性,宛然他是某家技术提供商所雇用的推销员。
3.C++主要设计目的是可移植性和可并存性,其可移植性与跨平台不是一个概念。在Java以前就有许多包裹着不同层次系统的语言,很显然Java是其中最成功的一个,而其由于商业推广目的,并不会强调移植性与跨平台间的概念差异。虽然从计算机科学家的角度来看,这样的差异是如此之大,以至于许多专家认同"Java不是跨平台,Java自己就是平台"。但对于程序工人来说,这样的差异是细小的。而对于商人来说,这样的差异是产生"现金流"的风道。
4.C++的目的不是安全,而是自由。我想随着软件工业的发展,C++与Java会不断分化,科学家使用C++,而商业系统中的技术工人则采用Java(或者与之类似的C#等)。

0 评论: