写点什么

大家谈 18 岁的 Java——朱鸿:开过跑车后再去开大巴车总是有点不爽的

  • 2013-06-11
  • 本文字数:1508 字

    阅读完需:约 5 分钟

2013 年,已经进入第 18 个年头的 Java 仍然是 InfoQ 上最受欢迎的话题,最近的《详细分析Java 中断机制》、《关于Java 性能的9 个谬论》、《深入理解Java 内存模型》等系列文章,一直占据InfoQ 阅读热榜的首位。同时,今年7 月的 JavaOne 购票入口)再次选择了中国,7 月22-25 日将在上海世博中心举行连续4 天的会议,话题涵盖核心Java 平台、JavaFX 与用户体验、Java EE 和Web 服务/ 云,以及Java ME/Java Embedded/Java Card 等技术领域。

2013 年,在云计算、大数据、移动互联网等话题占据了人们所有的注意力的时候,Java 的状态到底如何?近期,InfoQ 中文站将对业内几位资深 Java 项目作者与书籍作者进行采访,了解他们眼中 Java 的现状,以及他们对 Java 未来的看法。

今天受邀参与采访的嘉宾是淘宝的资深架构师朱鸿( @hugozhu ),花名一粟。朱鸿在 Java 方面有大量开发经验。最近,他在关注树莓派(Raspberry Pi)和 Go 语言。他的个人网站是 http://hugozhu.myalert.info

InfoQ:Java 语言给留下的最初印象是什么?您最初的 Java 项目是什么样的?

朱鸿:Java 的最初印象是成熟,强大,功能全面。最早是在 2000 年使用 Java 开发 Web 应用。

InfoQ:您现在接触的 Java 项目跟那时相比,有怎样的变化?

朱鸿:实际上变化并不是很大,多了可支持并发的集合,Servlet 3.0 以及 NIO 的使用。还有就是以前的 Java Swing 项目到现在的 Android 项目转变。

InfoQ:您是否会推荐在 Java 项目中的年轻程序员去掌握其他编程语言?您的首选推荐语言是什么?

朱鸿:我会推荐他去掌握其他编程语言:至少一门适合快速完成任务的脚本语言,可以是 JVM 之上的 Groovy,Clojure,Scala 等,也可以是 Python,Ruby,PHP 或 Perl。如果非要我只推荐一个,我觉得会是 Go 语言。

InfoQ:对于一些从新锐编程语言开始入行的年轻程序员,比如 Ruby 程序员,您是否会推荐他们了解 Java?为什么?

朱鸿:我感觉不太需要了,除非他们想去开发 Android 客户端 App 了。开过跑车后再去开大巴车总是有点不爽的,虽然视野更广了。

InfoQ:过去一年,Java 平台在安全性方面面临较多争议。当您收到 Java 平台被曝出漏洞的消息之后,会进行什么防范措施吗?

朱鸿:我主要是做服务器端的 Java 开发,在服务器端 Java 的安全性问题还好,不用每天盯着看。

InfoQ:不少传统的 Java 应用开发者最近都开始尝试 Scala、Node.js 等新的编程语言,编写出来的应用在编写效率、资源消耗等方面相比 Java 有很多优势。毫无疑问,新技术大量出现,老技术的适用范围会被部分替代。您认为 Java 的应用场景有哪些适合被替代,哪些不适合被替代?

朱鸿:Scala,Node.js 或 Ruby 在资源消耗上其实和 Java 相比应该没有优势,主要的优势还是体现在开发效率上,这方面有待 Java 8 去改进了,大家都知道这大概是 1、2 年以后的事了。移动客户端的 Android 开发,服务端的大数据处理如 Hadoop 和 Storm 等还是 Java 展现其活力的增量市场;我觉得 Web 前端应用层的开发会被更轻量级的技术替代,但服务层,中间件等还是 Java 的优势所在。

InfoQ:JVM 下多语言协作开发是否能够最大化地发挥 Java 自身的优势?

朱鸿:得看具体项目了,不建议同时用太多语言,2 个语言互补一下比较好。

InfoQ:您觉得 Java 语言自身存在的挑战是什么?

朱鸿:语言改进牵涉面比较多,进展很缓慢。

InfoQ:一旦 Java 8 走向成熟,是否可以支持现有系统向 Java 8 的成熟迁移?

朱鸿:这个应该可以有。

InfoQ:能否谈谈目前 Java 开源社区的一些变化?开源社区对 Java 发展起到了哪些推动?

朱鸿:Java 开源社区目前还是比较活跃的,开源社区显然对 Java 的发展有巨大的作用,有非常多优秀的开源 Java 程序应用在我们的项目中。

2013-06-11 01:195615

评论

发布
暂无评论
发现更多内容

GetX — Flutter 开发的百宝箱

岛上码农

flutter ios 跨平台 安卓 6月月更

读《Software Systems Architecture》(07)—— The Architecture Definition Process

术子米德

架构师成长笔记

DDD是个何许人也

卢卡多多

DDD 领域建模 6月月更

【Java Web 系列】Session的工作流程与基本使用

倔强的牛角

Java javaWeb session 6月月更

Thread 源码分析

zarmnosaj

6月月更

leetcode 70. Climbing Stairs 爬楼梯(简单)

okokabcd

LeetCode 动态规划 数据结构与算法

JS学习笔记之异同点

北洋

Andriod 6月月更

读《Software Systems Architecture》(05)—— The Role of the Software Architect

术子米德

架构师成长笔记

29岁转行软件测试靠谱吗?一个过来人的心路历程送给迷茫的你

伤心的辣条

Python 程序员 程序人生 软件测试 自动化测试

读《Software Systems Architecture》(04)—— Architectural Perspectives

术子米德

架构师成长笔记

读《Software Systems Architecture》(06)—— Introduction to the Software Architecture Process

术子米德

架构师成长笔记

3个月软件测试培训出来后的感悟-写给正在迷茫是否去学软件测试

伤心的辣条

Python 程序员 程序人生 软件测试 自动化测试

盘点攻防演练中红队的主要工具(上)

穿过生命散发芬芳

工具 6月月更 攻防演练

【LeetCode】 计算应缴税款总额 Java题解

Albert

LeetCode 6月月更

为什么一定要参与开源项目?

源字节1号

开源 软件开发

前端uni-app框架之实战主要技术栈day_3

恒山其若陋兮

6月月更

百里带你一文读懂selenium自动化测试(基于Python)

伤心的辣条

Python 程序人生 软件测试 自动化测试

从昇腾AI助力富士康产线升级,看中国智造的未来之路

脑极体

读《Software Systems Architecture》(02)—— Software Architecture Concepts

术子米德

架构师成长笔记

读《Software Systems Architecture》(08)—— Concerns,Principles,and Decisions

术子米德

架构师成长笔记

详解MOVE PROTOCOL的测试版,让健康运动如影随形

BlockChain先知

浅谈微服务框架选型

阿泽🧸

微服务 6月月更

linux之我常用的20条命令(之一)

入门小站

Linux

读《Software Systems Architecture》(09)—— Identifying and Engaging Stakeholders

术子米德

架构师成长笔记

读《Software Systems Architecture》(03)—— Viewpoints and Views

术子米德

架构师成长笔记

读《Software Systems Architecture》(10)—— Identifying and Using Scenarios

术子米德

架构师成长笔记

在线文本字符串转十六进制工具

入门小站

工具

flutter系列之:flutter中常用的Stack layout详解

程序那些事

flutter 程序那些事 6月月更

在线JSON转Excel工具

入门小站

工具

读《Software Systems Architecture》(01)—— Introduction

术子米德

架构师成长笔记

大家谈18岁的Java——朱鸿:开过跑车后再去开大巴车总是有点不爽的_Java_sai_InfoQ精选文章