看中文资料和英文资料的感觉就是不一样,英文资料的文法很清晰,而中文就不一样,要看很多遍。再说文言文,那个表达就更神了。在不同的地方使用不同的文法,编程也一样。
在大型项目中,在乎的不是绚丽的文法,设计模式之类,在乎于清晰的表达。往往我们在这类项目中从来都是用笨办法来解决问题,主要考虑到大局的因素。如果采用巧办法会给大局带来不稳定因素,我们宁愿多花点代价用笨办法实现。不知道我这样说有没有离题。因此,在大项目中往往采用相对笨拙的架构和静态语言来实现,不容易出现不可预见的东西,所有东西都是很清晰的摆在图纸上的。静态语言就像盖大楼的混凝土一样,很可靠。而动态语言就像新型建材。
不同的语言不同的表达能力,也有不同的清晰度,但是我们要表达的是什么,是逻辑。语言的表达能力由什么组成,是词汇和语法。语言最后通过执行完成了逻辑。所以静态语言只要嵌入合适的执行引擎,任何可能的表达都是可执行的(参见Buding Parse
by JAVA),说到思考与表达的关系,大部分人思考较大的问题时不会直接采用编程语言来直接表达,而是用一些逻辑图或词汇碎片。只有一些随手的东西会一边思考,一边编程,这时候往往用脚本。
节选:
http://www.iteye.com/topic/33971?page=7