James Gosling

1983年,Gosling获得了加州大学的计算机科学学士学位。1990年,他获得了卡内基梅隆大学的计算机科学博士学位,师从Bob Sproull。在攻读博士期间,他自己开发了一款emacs,叫Gosling Emacs(Gosmacs),在大学的这段时间,他还开发了一个多处理器版本的Unix,以及数个编译器和邮件系统,之后才加入Sun公司。

1984到2010年间,Gosling一直在Sun公司工作。他被公认为Java之父。

Oracle刚收购了Sun之后,在2010年4月2日,Gosling离开了Sun公司。当问及为何要离开时,Gosling认为,他的待遇,职级和决策权都受到了削减,同时角色也发生了转变,并面临道德上的压力。此后他在采访中一直对Oracle公司持批评态度,并指出”在Sun和Oracle的合并会议上,当我们正为Sun和Google的专利问题发愁,却看到Oracle的律师眼睛里都放着光"。随后,在Oracle和Google关于Andriod的诉讼中,他澄清了自己的立场:"Sun公司虽然没有专利诉讼的基因,这不意味着我们会任人宰割。虽然我与Oracle公司存在分歧,但在这个问题上我认为他们做的很对。Google把Sun压榨得太不像话了,我们大家都被惹怒了。这也包括Jonathan [Schwartz],他想唱红脸让这事就这么过去,这让原Sun公司的员工都很不爽。"

2011年3月28日,James Gosling在博客上宣布加入Google公司。但5个月后,他又加入了一家叫Liquid Robotics的初创公司。

Gosling同时还是TypeSafe公司的顾问,该公司成立于2011年,致力于Scala开发。了解更多

Joshua Bloch ——Collections框架

Joshua J. Bloch(出生于1961年8月28日)是一名软件工程师,曾就职于Google,同时还是一名技术类作家。他主导了Java平台很多特性的设计和实现,包括著名的Java Collections框架,java.math包,还有断言机制。他同时还是编程指南Effective Java的作者,该书一举夺得2001年的Jolt大奖,同时他还合作编写了另外两本Java相关的书籍:Java Puzzlers(2005),Java Concurrency In Practice(2006, Java并发编程实践)。

Bloch曾在Transarc担任高级系统设计师,随后又担任Sun公司的资深工程师。2004年6月,他离开Sun公司并加盟了Google,担任Java首席架构师。

2004年12月,Java开发者杂志将Bloch评为“全球40位杰出的软件人才“之一。

Bloch曾提议给Java增加两项新特性:简明实例创建方式(Concise Instance Creation Expressions)及自动化资源管理(Automatic Resource Management,ARM)。这两项成为Java支持闭包最早的三个提案之一。ARM已经在JDK7中引入了,Bloch至今还活跃在Java的闭包支持提议的讨论当中(译注:Java8中终于支持闭包了,Block功不可没啊)。

2012年8月3日,Bloch宣布离开Google。了解更多

Doug Lea —— 并发

倍受欢迎的java.util.concurrent包就是出自这位大师之手。Doug Lea是纽约州立大学Oswego分校的计算机教授,他主要研究的是并发编程以及并发数据结构的设计。他是JCP(Java Community Process)执行委员会委员,并主持编写了JSR 166(J.U.C的技术规范),把并发工具库引入到Java语言中。2010年10月22日,Doug Lea向JCP执行委员会表明自己将不再继续连任。2012年,Doug再次当选为OpenJDK理事会成员。

他著有Concurrent Programming in Java一书,这是最早关于并发编程的书籍之一。该书现在已经出版了第二版。了解更多

Gavin King - Hibernate

他是Java著名的对象/关系持久化存储方案Hibernate项目的创始人,同时也是Java EE 5应用程序框架Seam的创建者。不仅如此,他还为EJB3.0和JPA的设计做出了巨大的贡献。了解更多

Rod Johnson —— Spring创始人

他是Spring框架的创始人,同时也是SpringSource的联合创始人。Spring是面向切面编程(AOP)和控制反转(IoC)的容器框架。Rod的畅销书Expert One-on-One J2EE Design and Development(2002年出版)是迄今为止J2EE领域最具影响力的书之一。了解更多

Craig Mcclanahan —— Struts创始人

Craig R. Mcclanahan是一名程序员,同时也是Apache Struts项目的创始人,Struts是一款非常流行的用于构建JavaWEB应用的开源MVC框架。他是servlet2.2,2.3,JSP1.1规范制定专家组的成员之一。同时他也是Tomcat的servlet容器Catalina的架构师。了解更多

Andy Rubin —— Android

Andrew E. Rubin是Dangert和Android公司的联合创始人及前CEO。2013年之前,他曾担任Google移动及数字内容的高级副总裁,负责研发一款开源的智能手机操作系统——Android。Rubin名下拥有四项发明专利,据说他的身家价值上亿美金。

2013年3月13,Larry Page在博客中透露,Andy Rubin将调离Android事业部,去负责Google的一些新项目。Sundar Pichai将接替他的工作,同时仍旧兼任Google Chrome事业部的老大。了解更多

James Duncan Davidson ——Tomcat和Ant

James Duncan Davidson(1970年7月29日出生于得克萨斯州的卢博克市)是美国的一个摄影师,曾经是一名软件工程师。他在担任Sun公司软件工程师期间(1997-2001),开发出了Java的web服务器Tomcat以及构建工具Ant。 在2005到2006年间,Duncan开发的兴趣和注意力转向了Ruby on Rails。他和Rails领域的著名大师Mike Clark一起合作,Davidson设计及开发了一些相当复杂且健壮性佳的Rails应用。

2005年开始, Duncan把摄影作为了自己的副业。他现在是几个知名科技会议的首席摄影师。

他现在是波兰一个叫Luma Labs的小公司的联合创始人及所有者,专注于生产高质量的相机配件。了解更多

Marc Fleury —— JBoss

Marc Fleury在2011年创建了一个名为JBoss的开源Java应用服务器项目,这个可以说是Java WEB应用部署的事实标准。

Marc研究的兴趣主要集中在中间件开发,他于1999年启动了JBoss项目。2001年,他在亚特兰大成立了JBoss Group有限责任公司,JBoss正式成为公司的名字则是在2004年。

把公司卖给Red Hat后,Fleury成为JBoss部门的高级副总裁和总经理。然而从2007年1月开始Fleury休起了陪产假,计划至同年的3月15日结束,但此时有谣言称他可能将离开Red Hat。2007年2月,Red Hat公司正式公布他离职的消息,并称他“决定离开Red Hat以便追求一些别的个人爱好,比如教书,进行生物研究,玩音乐,陪伴家人”。了解更多

Kent Beck——JUnit创始人

Kent Beck率先提出了极限编程和测试驱动开发的概念,这个也被称为敏捷式开发。Beck是一名来自美国的软件工程师,他是2001年最早签名发起敏捷宣言的17人之一。

1979年至1987年,Beck在大学进修,获得了计算机科学的学士和硕士学位。他是软件设计模式的先驱,倡导测试驱动开发的模式,并率先使用Smalltalk来开发商业应用。他和Ward Cunningham一道推广了CRC建模的方法,并和Erich Gamma共同创建了JUnit测试框架。了解更多

原文出处:Java开发的10位牛人

本文链接:http://www.cnblogs.com/oooweb/p/top-10-java-people-you-should-know.html

你知道吗?Java开发的10位牛人的更多相关文章

  1. 转:java开发的10位牛人

    文章来自于:http://it.deepinmind.com/java/2014/04/10/top-10-java-people-you-should-know.html James Gosling ...

  2. Java获取项目中的路径 分类: Java Game 2014-08-14 10:17 122人阅读 评论(0) 收藏

    在项目中经常需要获取某个文件的路径: 在这里提供一些获取路径的方法.. 1.此种方式获取的路径,是当前类所在的路径: UserDAOTest.class.getResource("UserD ...

  3. 阿里巴巴 Java 开发手册 1.4.0

    一.编程规约(一) 命名风格1. [强制]代码中的命名均不能以下划线或美元符号开始,也不能以下划线或美元符号结束.反例: _name / __name / $name / name_ / name$ ...

  4. 电脑小白和ta的小白电脑——JAVA开发环境

    JAVA开发环境的搭建有一点点复杂,不过一步一步来一般不会出错. (一)下载JDK 首先我们需要下载java开发工具包JDK,可以通过官网下载:http://www.oracle.com/techne ...

  5. 微信公众平台接口获取时间戳为10位,java开发需转为13位

    问题1:为什么会生成13位的时间戳,13位的时间戳和10时间戳分别是怎么来的 ? java的date默认精度是毫秒,也就是说生成的时间戳就是13位的,而像c++或者php生成的时间戳默认就是10位的, ...

  6. 成为杰出Java开发人员的10个步骤

    在优锐课的学习分享中,讨论了如果你是Java开发人员并且对技术充满热情,则可以按照以下十个步骤进行操作,这可以使你成为杰出的Java开发人员. 1.具有扎实的基础和对OO原理的理解 对于Java开发人 ...

  7. Java开发人员最常犯的10个错误

    这个列表总结了10个Java开发人员最常犯的错误. Array转ArrayList 当需要把Array转成ArrayList的时候,开发人员经常这样做: List<String> list ...

  8. 10 位顶级 PHP 大师的开发原则

    10 位顶级 PHP 大师的开发原则 ruby_chen 发布于: 2013年03月28日 (61评) 分享到:    收藏 +139 #深圳# 6月10日 亚马逊AWSome Day云计算免费培训报 ...

  9. 在 Ubuntu 13.10 中搭建Java开发环境 - 懒人版

    本文记录我在Ubuntu 13.10中搭建Java开发环境. 本文环境: Ubuntu 13.10 x64运行在Win7下的VMware Workstation 10中. 1. 安装JDK与JRE s ...

随机推荐

  1. Maven基本理解

    转 maven(一) maven到底是个啥玩意~ 我记得在搞懂maven之前看了几次重复的maven的教学视频.不知道是自己悟性太低还是怎么滴,就是搞不清楚,现在弄清楚了,基本上入门了.写该篇博文,就 ...

  2. 【Leetcode】445. Add Two Numbers II

    You are given two non-empty linked lists representing two non-negative integers. The most significan ...

  3. 【leetcode】300.Longest Increasing Subsequence

    Given an unsorted array of integers, find the length of longest increasing subsequence. For example, ...

  4. paoding rose controller包及文件名命名规则

    1.包命名规则:xxx.xxx.controllers(否则扫描不到)

  5. (转)Linux 命令--查看物理CPU个数、核数、逻辑CPU个数

    # 总核数 = 物理CPU个数 X 每颗物理CPU的核数 # 总逻辑CPU数 = 物理CPU个数 X 每颗物理CPU的核数 X 超线程数 # 查看物理CPU个数 cat /proc/cpuinfo| ...

  6. linux的一些机制Signal, Fork,

    signal(SIGCHLD, SignalHandler); 注册软中断,对应的api close(socket); ret=fork(): 父进程,返回子进程的pid. 子进程返回0, 出错返回& ...

  7. 第112天:javascript中函数预解析和执行阶段

    关于javascript中的函数:  1.预解析:把所有的函数定义提前,所有的变量声明提前,变量的赋值不提前  2.执行 :从上到下执行,但有例外(setTimeout,setInterval,aja ...

  8. [十七]SpringBoot 之 使用自定义的properties

    Springboot使用application.properties默认了很多配置.但需要自己添加一些配置的时候,我们应该怎么做呢. 如果继续在application.properties中添加 如: ...

  9. 【刷题】洛谷 P3806【模板】点分治1

    题目背景 感谢hzwer的点分治互测. 题目描述 给定一棵有n个点的树 询问树上距离为k的点对是否存在. 输入输出格式 输入格式: n,m 接下来n-1条边a,b,c描述a到b有一条长度为c的路径 接 ...

  10. IO多路复用之epoll(二)

    前一篇介绍了epoll的LT模式,LT模式注意epollout事件在数据全部写成功后需要取消关注, 或者更改为EPOLLIN. 而这次epoll的ET模式,要注意的是在读和写的过程中要在循环中写完或者 ...