转自jdon的小文章:
来自Infoworld的一篇纪念Java诞生20周年的文章。主要讲述了一些在今天习以为常但是在20年前却难以想象的情况。
请记住,在1995年那时的编程不是一件很容易的事情,面向对象概念已经接受,但是很难实践,那时没有多少真正的面向对象语言,最多是将C代码粉饰一下,比如用class替代struct等,用这些技术编写的程序经常由于指针错误或内存泄漏崩溃,源代码仅仅能够在Unix不同版本之间移植,使用同样二进制代码运行在不同处理器和操作系统上简直是疯狂的笑谈。
Java改变了这一切,第一次我们使用一种跨平台 垃圾回收和面向对象的编程语言进行产品化的编码,紧跟着Java的语言,比如最引人注目的C#,将Java创建的生产力提高到一个新高度。
Java开天辟地实现其他语言没有的异常检测,Java也是第一个在原生字符类型和源代码中使用Unicode。
java的核心力量是它为做好工作建立一套实践性的工具,它从早期语言导入好的主意,然后以让熟悉的格式包装它们,尽管,Java不是一个严格的C的超集合(C++和Objective-C是),移除了一些东西以后,Java变得更简单,更易于学习。
Java并没有structs, unions, typedefs, 和header ,这是一个新的面向对象编程语言,没有被要求能够运行遗留老的代码,Java明智地忽略了一些在其他语言被尝试然后发现不足的一些特点,比如多重继承 指针运算和operator overloading,这种好的风格一直在Java中保持到现在。
正如Martin Fowler所说:在软件开发领域从来没有一种语言被这么多人次和这么多行代码使用,这种语言就是Java。
二十年以后,Java不再是新贵,它已经成为其他语言“造反”的对象,更轻量语言如Ruby和Python(banq注:还有Go语言与Rust语言的呢个)已经大举进入Java领土,特别是追求开发速度的创业工作。
当然,Java也不是静止不动,也正在不断添加新的语言特点,比如函数语言的Lambda表达式等,这些新的编程方式还是Java领域新的概念。
尽管还有很多程序员不知道Java,但是无论他们知道与否,今天每一个程序员已经受到它的影响。
Java at 20: How it changed programming forever | I
点评:Java对每个程序员的影响可能还要首推Android安卓开发,因为后端开发语言选择越来越多,而前端客户端因为资源等影响,包括安卓的普及度,随着智能终端的发展和万物联网,借助安卓平台,Java可能会实现当初Java applet的梦想。
博主自己的看法:
1、Java是C和C++的继承者和延伸
2、Java所谓的跨平台根本是个伪概念
3、Java的异常机制一方面带来好处,一方面也带来恶心
4、Java越做越难用了
5、现在Java应当分裂
相关推荐
Java并发编程:volatile关键字解析
Java并发编程:设计原则与模式(第二版).pdf
Java高手真经 编程基础卷:Java核心编程技术
Java编程宝典:十年典藏版 4
Java编程宝典:十年典藏版6
《Java高手真经(编程基础卷):Java核心编程技术》详细讲解了Java语言基础开发中的各种技术,主要内容包括如下。Java开发入门:JDK、JVM、Eclipse、Linux。Java语法基础:类、抽象类、接口、内部类、匿名类、异常、...
Java程序设计:基础、编程抽象与算法策略 斯坦福大学Java课程教材,深入浅出,培养编程思维和编程能力 埃里克·S·罗伯茨(Eric S.Roberts) 著;陈昊鹏 译
JAVA网络编程: 编写的端口扫描器, 可以扫描本机和指定IP的端口
常见的java面试题,包括: JAVA面试题集基础篇.pdf JAVA面试题集编程篇.pdf JAVA面试题集高级篇.pdf 就业面试题库(数据库).pdf 数据库.pdf
《Java网络编程实例:Java网络编程实例》一书的光盘资源,包括各章的源代码实例,需要学习的朋友看看
中文名: 编程实践:Java进阶100例 原名: 编程实践:Java进阶100例 别名: Java 作者: 李相国等. 译者: 李相国等. 图书分类: 软件 资源格式: PDF 版本: 影印版 出版社: 李相国等. 书号: 9787111372370. 发行...
Java编程新手自学手册:Java编程新手自学手册,里面有PPT,源代码
java编程200例(附:JAVA文档完全解读中文版)。针对java编程核心思想;以实例代码的形式剖析java技术;实用性强;内附JAVA文档中文版;可以边编程边参考文档。一举两得啊。极力推荐。
Brain Goetz是一位拥有二十年行业经验的软件咨询师,发表过超过75篇关于。Java开发的文章。Tim Peierls是现代多处理器的权威,在BoxPop.biz、唱片艺术和戏剧表演上也造诣颇深。Joseph Bowbeer是一位Java ME专家,他...
● 为何需要lambda,它将如何改变Java编程 ● lambda表达式语法 ● 流与管道的基本操作 ● 使用收集器与汇聚来终止管道 ● 创建流 ● 分割迭代器、fork/join框架与异常 ● 使用微基准测试检查流的性能 ● ...
JAVA的核心技术:面向对象编程 JAVA的核心技术:面向对象编程
java编程:最短代码实现小型计算器java编程: 最短代码实现小型计算器
《精通Lambda表达式:Java多核编程》
java编程问题: 就是在你登陆的时候忘记了密码,需要找回你所在本网址注册的账户和密码
JAVA进行UDP编程 JAVA进行UDP编程 JAVA进行UDP编程