读书动机:在就业迷茫期,不知道是该选择java开发还是C++开发,后台还是安卓等。所以就想先拓展自己的知识广度(忽视深度),科普性质。
这本书能带来的收获:
1.学习一门新语言时事半功倍,从这本书里可以学习到程序开发语言应该具备的逻辑层面的特性,而非具体实现语句,所以可以轻松的迁移至任何一门新语言。
2.以更高的视角看来俯瞰每一门程序开发语言的发展脉络(而不仅仅是在某一门具体语言的深沟迷径中挣扎前行)
3.站在语言设计者的角度看待你所使用的语言,知其所以然
4.不同语言在解决不同问题时效果不同,做出语言选择时更有把握
5.了解一些陌生的语言特性,了解别人才能更了解自己,这些特性或者能加强代码的可读性,或者能更好的抽象问题,你也可以尝试在自己的语言中模拟它们
目录:
第一章介绍语言设计的入门知识:包括程序设计语言分类,评价语言的标准等
第二章是程序开发语言的发展历史
第三、四章介绍语言的语法、语义层次的设计问题
之后每一章是一个具体的语言特性在不同语言中的实现方式,如子程序(过程、函数、方法)、异常处理、数据类型、控制语句、表达式、并法等
最后介绍来函数式以及逻辑式编程语言