java语言的核心设计目标
程序设计的的本质
程序设计其实是对复杂性的管理,待解决问题的复杂性,以及解决问题所用工具的复杂性。而这也是导致多数项目失败的原因。
让我们看一下其他语言的做法
- 比如所c++选择向后兼容c,以便吸引c程序员,以及具备c一样的高效率,这俩点都是非常有益的设计目标,而这也促成了c++的成功,然而他们却暴露出更多的复杂性问题,这使得很多项目不得善终。
- 例如vb选择与basic绑在一起,而basic并未被设计为具备可扩展性的程序语言,导致了建立在vb之上的所有扩展都是无法维护的语法
在设计c++、vb、perl以及smalltalk之类的的程序设计语言时,设计师也都为解决复杂性问题做了某种程度的工作,并且,正是解决某类特定问题的能力,成就了他们的成功。
java语言设计的核心目的,想必大家也都猜到了,就是为程序员减少复杂性。
与c++相比开发相同的程序,使用java可以减少一半甚至更少的时间。并且在多线程和网络编程方面,java提供了方便的工具库,并以此为语言特性纳入java,成功的简化了此类应用的开发。
最终,java解决了一些相当大的复杂性问题,比如跨平台特性、动态代码修改、甚至是安全性的问题,可见正是由于java实现了他的设计目标,使得java成为世界上用户最多的语言。