Java开发领域的大牛有哪些

Java开发领域的大牛有哪些

  1、James Gosling

  在他12岁的时候,他已能设计电子游戏机,帮忙邻居修理收割机。大学时期在天文系担任程式开发工读生,1977年获得了加拿大卡尔加里大学计算机科学学士学位,1983年获得了美国卡内基梅隆大学计算机科学博士学位,博士论文的题目是:"The Algebraic Manipulation of Constraints"。毕业后到IBM工作,设计IBM第一代工作站NeWS系统,但不受重视。后来转至Sun公司。1990年,与Patrick Naughton和Mike Sheridan等人合作“绿色计划”,后来发展一套语言叫做“Oak”,后改名为Java。1994年底,James Gosling在硅谷召开的“技术、教育和设计大会”上展示Java程式。2000年,Java成为世界上最流行的电脑语言。

  2009年四月,Sun被甲骨文公司并购。高斯林于2010年四月时宣布从甲骨文公司离职。

  2011年3月29日,高斯林在个人博客上宣布将加入Google[3]。

  2011年8月30日,仅仅加入Google数月之后的高斯林就在个人博客上宣布离开Google,加盟一家从事海洋机器人研究的创业公司Liquid Robotics[1],担任首席软件架构师。

  在2011年5月建立的Scala公司Typesafe Inc., 高斯林被聘请为公司顾问。

  2、Joshua Bloch ——Collections 框架

  早在1996年,适逢Java刚刚崭露头角。先是1月份发布JDK1.0,然后是5月底在旧金山召开首届JavaOne大会,年末又是JDK1.1紧跟其后。正是在Java技术如火如荼、大展拳脚的背景之下,JoshuaBloch来到了Sun。2004 年7月初,就在J2SE5.0发布在即,Jusha Bloch刚刚荣获Sun“杰出工程师(Distinguished Engineer)”的称号之时,他突然离开Sun而去了正值发展态势迅猛的Google,成为了Google的Java首席架构师。

  在Bloch来到Sun之后,很快他被从安全组调入核心平台组,从事底层API设计。至此以后,每逢JDK的重大版本发布,总能在其中见到Joshua的“妙笔”。JDK1.1中的java.math、1.4中的assertions,还有大家所熟识的Collections Framework皆是Joshua一手打造。其中的Collections Framework还获得了当年的Jolt大奖。到了J2SE5.0研发阶段,身为平台组构架师的Joshua接掌了Tiger大旗,其核心地位已然无人可以替代。

  作为Tiger的代言人和领路人,没有谁比Joshua更清楚Tiger.相信大家一定还记得Joshua当年仿效英国诗人William Blake所做的咏Tiger诗八首,优雅的笔调,透出大师深厚底蕴的同时,也道出了Tiger的几大重要特性,这些特性是自JDK1.1引入Inner Class以来,Java最大的语法改进。Java风雨十年,从JDK 1.1到J2SE 5.0,Joshua实在功不可没。难怪有人戏言,假如将JamesGosling比作Java之父,那么Joshua就是一手将Java“哺育”成人的Java之母。

  Joshua对Java的贡献还不止于JDK,提起他的大作《Effective Java》(AddisonWesley, 2001),相信Java粉丝们一定耳熟能详。该书荣膺2002年度Jolt大奖,且备受JamesGosling推崇。书中57条颇具实用价值的经验规则,来自Joshua多年来在JDK开发工作中,尤其是Collections Framework设计中的实践心得,各个有理有据,剖析深入,也足见其深厚功力。该书对Java社群的影响,犹如C++社群中的《EffectiveC++》。Joshua对JCP的贡献也不小。他是JSR201和JSR175的领导者,前者包含了Tiger四大语言特性,后者则为Java提供了元数据支持。此外,他还是JSR166的发起人之一(该JSR由Doug Lea领导),并且是许多其他JSR的参与者。Joshua目前是JCP为数不多的几个执行委员会成员之一。

  Joshua Bloch给人的印象是谦逊平和,行事低调而不喜抛头露面,一个典型的技术人员和实干家。不过即便如此,也丝毫不会减弱他对Java技术的卓越贡献和对Java社区的绝对影响力。有人说,如果他能更彰显一些,就很有可能成为Java开发者中的领军人物,就有如Don Box之于微软社群。

  2004年7月初,就在Tiger发布在即之时,就在Jusha Bloch刚刚荣获Sun“杰出工程师(Distinguished Engineer)”的称号之时,他突然离开Sun而去了正值发展态势迅猛的Google.当他离开Sun的消息在TSS发布之后,众多拥趸表达了怀念与 不舍之情。

  3、Doug Lea —— 并发

  如果IT的历史,是以人为主体串接起来的话,那么肯定少不了Doug Lea。这个鼻梁挂着眼镜,留着德王威廉二世的胡子,脸上永远挂着谦逊腼腆笑容,服务于纽约州立大学Oswego分校计算机科学系的老大爷。

  说他是这个世界上对Java影响力最大的个人,一点也不为过。因为两次Java历史上的大变革,他都间接或直接的扮演了举足轻重的角色。一次是由JDK 1.1到JDK 1.2,JDK1.2很重要的一项新创举就是Collections,其Collections的概念可以说承袭自Doug Lea于1995年发布的第一个被广泛应用的collections;一次是2004年所推出的Tiger。Tiger广纳了15项JSRs(Java Specification Requests)的语法及标准,其中一项便是JSR-166。JSR-166是来自于Doug编写的util.concurrent包。

  值得一提的是: Doug Lea也是JCP (Java社区项目)中的一员。

  Doug是一个无私的人,他深知分享知识和分享苹果是不一样的,苹果会越分越少,而自己的知识并不会因为给了别人就减少了,知识的分享更能激荡出不一样的火花。《Effective JAVA》这本Java经典之作的作者Joshua Bloch便在书中特别感谢Doug Lea是此书中许多构想的共鸣板,感谢Doug Lea大方分享丰富而又宝贵的知识。

  以上就是小编给大家简单分享的Java开发领域的大牛们,希望对小伙伴们有所帮助。

 为了让学习变得轻松、高效,今天给大家免费分享一套Java教学资源。帮助大家在成为Java架构师的道路上披荆斩棘。需要资料的欢迎加入学习交流群:9285,05736

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/503074.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

共阴极数码管编码表_数码管循环点亮的PLC控制——基本逻辑指令的应用

数码管循环点亮的PLC控制,我们运用日本三菱FX2N-48MR-001(FX2N-48MR-001是日本三菱公司的可编程控制器(PLC),继电器输出及输入24点,输出24点.FX2N是FX系列中功能最强、速度最高的微型PLC,内置用户存储器8Kb,可扩展到16K步,最大可扩…

高效Java第六条消除过期的对象引用无意识的对象保持

问题的引出 这段程序有一个“内存泄露”,随着GC活动的增加,或者由于内存占用的不断增加,程序性能降低会逐渐表现出来。在极端的情况下,这种内存泄露会导致磁盘交换,甚至导致程序失败(OutOfMemoryError),但是…

gentos 执行sh文件_linux定时自动清理日志文件

现有一个应用系统,应用日志记录的内容很多,经常造成存储空间不够,需要手工去删除早期的日志文件来释放空间。应用的日志文件命名如下,固定前后缀加上日期和小时:为了避免手工删除日志,考虑通过写shell脚本来…

java编程思想泛型对混入的详细探讨

混入的概念 把多个类的能力混合在一起产生一个能代表所有混入类的类型的类。 the fundamental concept is that of mixing in capabilities from multiple classes in order to produce a resulting class that represents all the types of the mixins. 混入就是把存在的多…

linux rm 命令删除文件恢复_linux文件处理命令之rm常用方法介绍

命令名称:rm命令英文原意:remove命令所在路径:/bin/rm执行权限:所有用户语法:rm -r [文件或目录] -r 删除目录功能描述:删除文件mv是删除文件的命令,使用时可以指定文件(包括觉得路径/相对路径)的存放位置1…

python中math模块函数_Python常用的一些内建函数和math模块函数

一:Python内建函数 1 #abs取绝对值 2 num -10 3 print(abs(num))4 5 #max 求最大值 6 print(max(6, 9, 2, 12, 8))7 8 #min求最小值 9 print(min(-1, 2, 5, 0, 7))10 11 print(min([1, 3, 7, 0, 2]))12 13 #round 计算一个数值的四舍五入的 14 15 pi 3.14 16 prin…

大家对Java的一些误解

1. System.exit(0)会跳过finally块的执行 System.setSecurityManager(new SecurityManager() { Override public void checkExit(int status) { throw new ThreadDeath(); } }); try { System.exit(0); } finally { System.out.println("In the finally block"); } 这…

python用turtle画皮卡丘_用Python的turtle作画(2)——皮卡丘

from turtle import * # 绘制皮卡丘头部 # 画脸 def face(x, y): begin_fill() penup() # 将海龟移动到指定的坐标 goto(x, y) pendown() # 设置海龟的方向 setheading(40) circle(-150, 69) fillcolor("#FBD624") # 将海龟移动到指定的坐标 penup() goto(53.14, 113…

Java 即将迎来转折点?

嵌入式 Java 我并没有看到这个领域有什么变化。Oracle 完全放弃了在该领域的开发,已经不再提供支持非常流行的 ARM 架构的嵌入式应用程序的二进制文件了。 但是,我预测今年嵌入式应用程序中的 Java 应用将会增长。主要原因有三个: Java ME…

html调用接口_Spring 自调用事务失效,你是怎么解决的?

前言" 相信大家都遇到一种事务失效场景,那就是 Spring 自调用,就是在 Service 方法内,调用另一个加 Transactional 注解的方法,发现事务失效,这时候你是怎么解决的呢? "1 事情回顾那是一个我忘了…

Java中AJAX工作原理是什么

AJAX 指异步JavaScript 及XML(Asynchronous JavaScript And XML)。 传统的Web应用允许用户填写表单(form),当提交表单时就向Web服务器发送一个请求。服务器接收并处理传来的表单,然后返回一个新的网页。这个做法浪费了许多带宽,因为在前后两个…

unity vscode没有智能提示_GAMES101课程环境搭建(Win10+VSCode)

最近B站上看到一个不错的图形学教程,复习下图形学知识挺好的。教程地址:GAMES101-现代计算机图形学入门-闫令琪_哔哩哔哩 (゜-゜)つロ 干杯~-bilibili课程主页:GAMES101: 现代计算机图形学入门作业地址:往期作业汇总帖 - 计算机图…

Java中的变量、数据类型和运算符

1. java语言是一种强类型的语言,对各种数据类型都有明确的区分,而计算机使用内存来记忆大量运算时需要使用的数据,而当声明一个变量时,即在内存中划分一块空间存储数据,而变量类型决定划分内存空间的大小。 2.基本数…

python列表逐行写入excel_python表格数据到excel-想问下python3怎么将列表数据逐行写入excel表格呢?...

如何用python将数据写入excel表格 简介绍一下这两个库,先说xlrd,这个Excel比较,各种方法使用起来方便: bk xlrd.open_workbook(your.xls) sh bk.sheets()[-1] 上面两句就可以打开Excel表格中的一个sheet,sheets得到的…

10大最高效的Java库盘点

1. Java 标准库 不用怀疑,我说的就是Java标准库,很多人都低估了或者没有完全了解Java标准库,并且不知道如何在编程的时候使用它,有些人甚至都不用它,下面说一些Java标准库的简要说明 ● java.lang:总是默…

js 加入debug后可以进入controller_写给前端的 Nest.js 教程——10分钟上手后端接口开发

前言沉默了很久,一直都没发文章,有些惭愧。最近实习结束之后回了学校,提前开始做毕业设计了。对,就是毕业设计。近两个月把 React Native、Vue 3.0 和 Nest.js 都摸了一下,大概都摸懂了。鉴于掘金已经很多优秀的 Vue 3…

java new一个对象的过程中发生了什么

java在new一个对象的时候,会先查看对象所属的类有没有被加载到内存,如果没有的话,就会先通过类的全限定名来加载。加载并初始化类完成后,再进行对象的创建工作。 我们先假设是第一次使用该类,这样的话new一个对象就可…

2019年GitHub上最热门的Java开源项目

1JavaGuide https://github.com/Snailclimb/JavaGuide Star 22668 【Java学习面试指南】 一份涵盖大部分Java程序员所需要掌握的核心知识。 2advanced-java https://github.com/doocs/advanced-java Star 7752 本系列知识出自中华石杉,可以作为互联网 Java 工程…

ecplice中class.forname一直报错_A6v5.1升级A6v7.0报错:调用Java代码

一 背景在升级7.0过程中,针对以前SQL2000数据库(主要是以前U3升级上来的账套)会出现java调用失败的情况,导致老版本的账套无法正常升级到最新的版本。错误提示:【com.aisino.a6.update.plugin.ViewsUpdatePlugin】升级业务数据出错升级报错图…

理解 Java 核心基础精髓

1、字符串不变性 下面这张图展示了这段代码做了什么 String s "abcd"; s s.concat("ef"); 2、equals() 方法与 hashCode() 方法的区别 HashCode 被设计用来提高性能。equals() 方法与 hashCode() 方法的区别在于: 如果两个对象相等(equa…