十年之后 Java技术的新方向-Java基础-Java-编程开发

《淘宝技术这十年》 阅读详情
<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script>

Java技术自问世时光已经过去了9个年头。作为一名一直关注其成长的记者,曾经一段时间有过这样的想法:“Java技术已经成熟,是不是发展速度该放慢一些了呢”。然而,这种想法错了。近来Java技术的进化相当显著。Java技术正在迎来“又一次革命”的风暴。这就是本文的结论。

“又一次”指的是什么?“革命”指的又是什么?光看结论的话肯定是一头雾水。其实,笔者要讲的并不是变化这样一个事实,而是“促进变化的原动力”。是什么让Java技术发生变化?让我们从这一角度出发,先看一下Java的变化历程。

Java正处于转变期

回顾Java技术的发展历程,人们一定会感慨:2004年到2005年发生的变化如此之大,可以说“现在”正是Java技术的转换期。Java技术由编程语言(Java语言)、运行环境(JVM:Java虚拟机)、框架(JavaAPI群)组成,目前在每一个层面上都发生着巨大的变化。

(1)编程语言的变化

Java语言标准出现明显变化。在2004年9月发布的正式版本J2SE5.0(J2SE:Java2Platform,StandardEdition,Java技术的核心运行环境)中,对Java语言标准中的Generics与元数据进行了大幅扩展。出现了被认为是“自Java问世以来的最大一次语言标准变化”(美国SunMicrosystems)。这次语言标准的变化给许多JavaAPI带来了影响。许多企业API的新版本都引入了基于元数据的注解(程序中记录的附加信息),以较短的编码记述更多的信息。

(2)Java运行环境的变化

在J2SE5.0中,大幅度强化了JVM的管理功能与实用性,换句话说就是具备了Java执行OS(操作系统)的特征。例如,原来在J2EE(Java2Platform,EnterpriseEdition,构筑企业系统的Java技术)领域,标准配备有作为管理功能的应用软件管理框架JMX。不仅如此,还配备有JVM自身监控功能((JSR174:MonitoringandManagementSpecificationfortheJavaVirtualMachine)。在标准功能架构中可以实时监视JVM运行时的状态,也就是内存使用量、线程状态等。

J2SE5.0中新追加的功能中包括并行处理实用程序(JSR166),其基础是纽约州立大学DougLea提供的程序库。也就是说,标准规格中采用了来自民间的程序库。

(3)框架的变化

服务器端的Java框架也发生了巨大变化。企业级Java技术--J2EE的“使用方法”说明文件“J2EEBlueprint”中,提出了将应用软件分为Web层、EJB层(EnterpriseJavaBeans,将包括事务处理在内的业务进程模块化的框架)来构筑的思路。这两种层次都迎来了架构更替时期。Web层的新框架为JSF(JavaServerFaces,将模块组合起来构筑Web应用程序的框架),EJB层为标准方案中刚刚公布的下一代EJB规格“EJB3.0”。

值得注意的是,促成框架发生变化的正是来自民间的源码开放软件。

对JSF产生影响的是作为源码开放的Web层框架得到普及的ApacheStruts。JSF是对Struts的思路进行改进的产物,JSF的SpecLead(规格制定领袖)之一CraigR.McClanahan就是Struts的作者。

对EJB3.0造成影响的也是民间源码开放软件。EJB3.0引入了DI(DependencyInjection,依赖注入)容器类(Container)与POJO(PlainOldJavaObject)持久类这些新功能,大大减轻了编程的复杂性。这些概念因PicoContainer、Spring等源码开放软件的导入而引人注目。

其背景在于用户对“目前的EJB过于复杂”的批评。原本由EJB反对派提出的设计思想与源码开放软件,却变成了EJB3.0的中心概念,显出了巨大的影响力。

(4)脚本语言

在Java技术标准中新增加了编程语言Groovy(JSR241)。这是一种可与Java语言无缝连接的脚本语言,有望以极短的程序完成相关处理。“在Java技术中添加Java以外的语言”,这听起来也许有些别扭,其实以前就有这样的呼声,希望将可以充分利用Java技术资源的脚本作为语言使用。Groovy本来是源码开放软件,最终得到认可,被采纳为标准规格。

由上述可以看出,Java技术的构成要素正在发生巨大变化。就在不久以前,一提起服务器Java,“Servlet、JSP、EJB是重要的API”这样的说明还占主流,但现在基于JSF和EJB3.0的应用程序已经变成了“面目全非”的程序。而在运行短程序或测试时,甚至还出现了不仅是Java语言,连脚本语言都开始调用Java框架的情况。

这些变化从大的方面来看的话,可以说是进一步发挥了Java面向对象的优势。当然,也包括提高开发效率、提高运行稳定性、简化运行管理等业务上的优势。

开发者团体是真正的“变革推动者”

那么,这些变化的原动力来自哪里呢?为什么说“目前”正面临着“又一次变革”呢?理由如下:

在Java技术的发展过程中,1999年到2000年是一个大的转折点。J2EE概念于1999年出现。J2EE也在随后2~3年内得到普及,但这一技术体系早在5年前就已经确立。在我们眼前,新一代Java技术的轮廓正逐渐显现出来。

JCP(JavaCommunityProcess)2.0于2000年问世。以会员制的组织形式推进Java技术的规格制订、总体发展方向则以委员会的方式决定。从而形成了不依赖特定企业的规格制订流程。这一组织形式历经近5年的时间,逐渐发展成“变革的推动者”。

J2EE此前一直饱受批评,认为“Web层与EJB层的差距太大”、“EJB过于复杂”,但这也是因为这是一项实际使用的技术。JCP同样也遇到很多批评,称其“没有完全公开”、“制定的技术标准却不可思议地让Sun拥有知识产权”,但JCP却作为一个团体不断发展壮大。

直接推动Java技术变化的当事者为5年前形成的基于团体的标准制订流程--JCP,但真正将讨论与技术纳入JCP的却是包括Java技术批评者在内的众多Java开发者团体。他们也是早期开展Java技术变革的先行者。由此诞生的下一代技术将会在2~3年后逐渐波及主流企业用户。

Java技术的“变革推动者”为开发者团体。不受制于特定企业,通过众多需要Java的开发者的建议,Java技术正在不断发展进步。

【UGUI】二、Text(TMP) 文本 Text(TMP)、导入中文字库 阅读详情

相关推荐

从GAN生成失败案例出发:为什么你的AI画不准位置?CoordConv保姆级解决方案

本文深入探讨了GAN生成图像时位置偏移问题的根源,并提供了CoordConv的保姆级解决方案。通过分析传统CNN在空间坐标建模上的缺陷,详细介绍了CoordConv的原理、实现步骤及在StyleGAN2等模型中的实战应用,显著提升了医学图像生成等任务的定位精度。

pp12345的博客 205

2024年Java最新技术趋势及应用

无论是通过Java 21的新功能提高开发效率,还是通过云原生框架如Spring Boot、Quarkus和Micronaut构建高效的微服务系统,Java依然是现代企业级开发的中坚力量。Java作为一门拥有广泛应用基础的语言,在未来的技术趋势中,仍然将保持强劲的生命力。2024年,Java与云原生的深度结合进一步加强,特别是在微服务架构、容器化和Serverless领域,Java展现了出色的适应性和性能。2024年,Java中的人工智能框架和工具得到了显著的发展,特别是在大规模生产环境中的应用更加广泛。

dragon 9748

大开眼界的十大开源人工智能项目

这是一个强大的开源工具,能让你在不同框架之间自由切换,无需重写代码。它是一个开源工具,能用简单的SQL语言同时处理数据和AI模型,让一切变得有序而高效。Rasa是我开发智能聊天机器人时的首选,它让你轻松掌控机器人对话的每个细节。我经常用它快速验证模型在不同框架下的表现,省去了大量烦躁的调试过程。最近发现的Vapi是一个以API方式提供的语音AI工具,开发者友好程度超乎想象。KNIME是一个以拖拽方式构建数据分析流程的开源工具,仿佛是数据界的乐高积木。它像个忠诚的守门员,确保你的模型始终健康运行。

wjianwei666的专栏 1106

Java的现代应用与未来趋势:全面解析2024年技术生态

本篇博客深入探讨了Java语言的历史演变及其在现代技术中的应用。自1995年发布以来,Java凭借其“Write Once, Run Anywhere”的设计理念,成为全球最流行的编程语言之一。随着技术的不断进步,Java不仅在企业级应用中占据重要地位,还在云计算、大数据、人工智能等领域展现出强大的生命力。本文详细分析了Java 8至Java 17的关键特性、Java在微服务和大数据中的应用,以及未来Java在高并发和分布式系统中的发展趋势。

DeL的博客 3797

模块学习(一)——编码电机

编码电机测速

qq_51406846的博客 7911

RK3568-Linux-麒麟系统---更新制作麒麟rootfs

RK3568 Linux系统 麒麟国产麒麟镜像

qiuzw2003的博客 5360

2026年Java新方向:AI大模型应用开发薪资翻倍,高德、腾讯等大厂抢着要!

Java在AI时代迎来新机遇,大模型应用开发成为2026年新方向。高德、小红书、腾讯、百度等大厂Java岗位需求旺盛,薪资达50K+。选择AI企业应关注业务场景、技术深度和稳定性。传统Java开发者可通过专业培训转型AI应用开发,把握这一高薪风口。

Trb201013的博客 1015

新英格兰10机39节点matlab建模,ieee10机39节点系统数据

【实例简介】ieee10机39节点系统数据,主要是BPA数据!【实例截图】【核心代码】ne_039_bus└── ne_039_bus├── 039readme.doc├── bpa│ ├── 039bpa.dat│ ├── 039bpa.swi│ ├── LFerr.LIS│ ├── OneNote 目录.onetoc2│ └── STERR.LIS├── eurostag│...

weixin_39851809的博客 3274

Java研发方向

很多同学在学完Java基本语法后不知道后面要学些什么,也不知道要到底参加哪些的科技竞赛。在这里为大家分析一下Java开发方向到底要学哪些课程。 1、面向对象编程语言Java Java开发方向那么Java语言是必要不可少的一部分,JavaSE(Java Standard Edition),Java 标准版,包括Java语言中最基本的类,比如:数据库连接,接口定义,数据结构,输入输出等。一般我们在学校最开始学习的就是JavaSE的内容。 除了JavaSE,还有JavaEE(Java Platform,En

dghehe的博客 1808

Ansys Lumerical 启动时出现 Error: Could not connect to Ansys license server specified at 1055@ 的另一种解决办法

昨天在关闭了中之后 就能正常打开 FDTD 了,结果今天想开启出现了同样的报错:我猜测昨天能启动的原因在于关闭之后要重启电脑,并且在重启之后我第一时间打开 lumerical 测试因此端口没有被占用,今天是在电脑启动之后一段时间才打开所以又遇到了端口占用的问题。

qq_51404184的博客 9557

V-rep机器人仿真(Win10):UR5+RG2+Kinect+YOLOV3+DDPG+Pytorch(第四部分:YOLOV3图像识别)

这是一个V-rep机器人仿真实验,较为简单,适合初学者在入门图像识别、机器学习、机器人学的内容时进行学习与训练。 实验涉及的内容有:V-rep机器人仿真,YOLOV3图像识别,强化学习DDPG,UR5机械臂及RG2机械手,Kinect摄像头。 使用环境:Win10,Pytorch0.4,V-rep 整个实验一共由多篇文章组成,本文是第四部分。 第四部分:YOLOV3图像识别 文章目录第四部分:YO...

weixin_42158966的博客 5838

两个月拿到阿里的 Offer,经验分享!

阅读文本大概需要 9 分钟。作者:小匠去年的这个时候小编通过两个月的复习拿到了阿里巴巴的 offer,有一些运气,也有一些心得,借着跳槽季来临特此分享出来。简单梳理一下我...

公众号:Java后端 1900

win2012没有远程桌面授权服务器可以提供许可证 如何远程

如果远程windows服务器时,提示“没有远程桌面授权服务器可以提供许可证 如何远程”,先通过以下方式进行强制登录,然后在对服务器进行设置即可,延期使用。 强制登录服务器方式; 1、运行—输入:mstsc /admin /v ip:端口 回车即可 2、进入远程桌面,输入 ip:端口 /admin 例如:mstsc /admin /v 192.168.0.131:23568 进入服务器以后,按照以下步骤进行设置即可: ...

蜗牛快爬 1万+

我的技术十年

十年一瞬,2014 年毕业至今,刚好十年。《异类》一书曾提到“一万小时定律”,要成为某个领域的专家,需要 10000 小时,按比例计算就是:如果你每天工作八小时,一天工作五天,那么成为一个领域的专家至少需要五年。而我在这个行业摸爬滚打十年,至今我仍觉得自己还差得远,更不敢说自己是某个领域的专家。十年是一个很好的节点,因为基本上也从“菜鸟”变成职场上的“老手”,有了一定自己的想法和经历,写技术十年就当做一次审视自己,复盘过去的成与败的契机。一些经验思考。

巫山老妖 4万+

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

十年编程路,一生踏征途

十年编程路,一生踏征途,不知不觉间,我已经在程序开发这条道路上走过了整整十年。从最初的求学,到如今成为一名较为资深的职业开发者,这一路充满了挑战、学习、成长与感动。在这1024程序员节的特殊时刻,我想借此机会分享一下我的这段旅程。

踏雨歌青春,诗酒趁年华 3万+

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

十年Java编程开发生涯,回头来只剩下这些了!

无论是哪家公司,都很重视高并发高可用的技术,重视基础,重视JVM。面试是一个双向选择的过程,不要抱着畏惧的心态去面试,不利于自己的发挥。同时看中的应该不止薪资,还要看你是不是真的喜欢这家公司,是不是能真的得到锻炼。其实我写了这么多,只是我自己的总结,并不一定适用于所有人,相信经过一些面试,大家都会有这些感触。最后我整理了一些面试真题资料,技术知识点剖析教程,还有和广大同仁一起交流学习共同进步,还有一些职业经验的分享。《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》

2401_84049023的博客 640

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

十年 Java 路漫漫,24 岁的 Java 和使用 Java 十年的我

这是 2019 年 Java 诞生 24 周年时参加活动所写的一篇文章,中间不知道经历了什么将它设置为私密博客了。最近整理旧文发现了它,认为它还是有一些分享价值的,于是就放开了权限。奈何这个平台有缺陷,私密文章重新公开后,发布时间就变成当前时间了。事实上,这是两年前的文章,有评论区的评论为证!

本博客纯属个人网络笔记,如对阁下有用,甚喜;否则,关掉即可,不喜勿喷。专心写代码,不做键盘侠! 2277

十年Java后端开发技术能力体系

摘要:十年Java后端开发需构建T型能力模型,涵盖JVM底层原理、并发编程、Spring生态、分布式系统及性能优化等核心技术。要求深度掌握Java语言特性、框架源码及生产级调优,同时具备MySQL索引优化、Redis缓存设计、消息队列选型等分布式架构能力。工程实践需包含CI/CD流程、监控告警体系及容器化部署,形成从编码到运维的完整技术闭环。(149字)

瘦到被风吹走的博客 959

编程十年

岁月不居,时节如流,转眼间到了2020年。自2010年至今已然十年,编程亦十年了。

李迟的专栏 1437

Java开发者的成长轨迹:从入门到权威的二十年征程

在Java开发的漫长征途中,流传着一句耳熟能详的话:“三年入门,五年入行,十年精英,十五年专家,二十年权威”。这句话不仅是对Java开发者职业生涯的高度概括,更是对技术成长路径的一种深刻洞察。它揭示了软件开发领域内,尤其是Java这一强大而广泛应用的编程语言中,技能与经验积累的渐进过程。

科技互联网领域深度探索者,乐于分享与写作。 1561

Java:三十年演进,永续创新的编程传奇

截至2025年,全球运行Java的设备超过680亿台,GitHub Java项目数量突破2000万,TIOBE指数连续12年稳居前三。这种持久生命力源于其持续的技术革命与生态协同进化。本文将以技术架构变革为脉络,深度剖析Java的底层演进逻辑。

卖蘑菇滴小男孩得博客 963

十年编程的感悟

马尔科姆·格拉德威尔的“一万小时定律”指出,持续投入一万小时的努力,足以使人在某个领域达到专家水平。按照每周20小时的练习量计算,每天大约需要投入3小时,十年左右才能达成这一目标。从我写下第一行C代码算起,至今已超过十年。期间,我编写了超过三十万行代码,其中一部分在微信写的代码,曾服务过超过一亿的用户。尽管写了这么多代码,我仍不敢自诩为专家。但多年的“打工”生涯,日复一日地敲代码,也让我积累了不少感悟。“工多艺熟”,这些感悟既是对编程技术的思考,更是对职场人生的体味。

IT_1024_的博客 1116

十年码农的编程心得分享

RD280U的设计理念是为了解决开发者在编程工作中遇到的痛点。它采用了4K超高清分辨率并搭配适配编码场景的专业色彩模式,确保代码的清晰度和可读性,让每一行代码都能清晰呈现。此外,抗反射面板的设计有效减少了光线干扰,提升了在各种环境下的使用体验。

不迁怒,不贰过。小知识,大智慧。 2032

十年编程路,这些观点我变了又没变

在软件开发这个瞬息万变的领域,十年时光足以让一个开发者历经无数项目,积累丰富经验,也会让最初的观点发生诸多改变。今天,就让我们一同走进一位资深开发者的十年,看看他在软件开发的世界里,哪些观念发生了转变,又有哪些始终坚守。

敖行客 Allthinker的博客 1070

十年之后 Java技术的新方向

http://tech.163.com 2006-03-21 15:32:40 来源: csdn(北京)  网友评论0 条 论坛 Java技术自问世时光已经过去了9个年头。作为一名一直关注其成长的记者,曾经一段时间有过这样的想法:“Java技术已经成熟,是不是发展速度该放慢一些了呢”。然而,这种想法错了。近来Java技术的进化相当显著。Java技术正在迎来“又一次革命”的风暴。这就是本

饮马流花河 904

开发十年,只剩下这套Java开发体系了

蓦然回首自己做开发已经十年了,这十年中我获得了很多,技术能力、培训、出国、大公司的经历,还有很多很好的朋友。但再仔细一想,这 十年中我至少浪费了五年时间,这五年可以足够让自己成长为一个优秀的程序员,可惜我错过了,我用这五年时间和很多程序员一样 在困惑和迷茫中找不到出路! 路其实一直都在那里,只是我们看不到而已! 以前我一直被公司和技术牵着走,并不是自己在选择技术,而是不自觉地被推到了这个位置上...

u014344668的专栏 317
上一篇: 探讨与比较Java和.NET的事件处理框架-Java基础-Java-编程开发
下一篇: 全面分析Java的垃圾回收机制-Java基础-Java-编程开发
java169
博客等级 码龄18年 27粉丝 2568原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值