Java 之父偏爱函数式编程,反而被队友讨厌:编码风格简直像疯子!

简介: Java 之父偏爱函数式编程,反而被队友讨厌:编码风格简直像疯子!


来源:OSC开源社区(ID:oschina2013)


James Gosling,加拿大计算机科学家,完成了 Java 的原始设计,并实现了 Java 最初版本的编译器和虚拟机,也是公认的 “Java 之父”。

Gosling 现在是 AWS 的工程师,在 12 月初的 reClojure 2022 线上会议中发表了主题演讲。

他分享了在技术行业工作数十年的经验,这些经验最终使他进入了云服务器领域,这次演讲内容涉及的主题也很广泛,涵盖了从编程语言如何演变到项目如何失败的方方面面。

Gosling 谈到了 Java 对于 AWS 的重要性。据他介绍,AWS 许多核心功能都采用 Java 实现,而且它拥有相当庞大的 Java 工程师团队 —— 一切都是为了性能,其中负责优化 GC 性能 的工程师组成了他们最大的团队。

Gosling 在欣赏 Clojure 对函数式编程的高度重视时,也分享了他自己的一个怪癖。Gosling 透露,他自己对函数式编程的偏爱导致一些人讨厌他的编码风格,比如他更喜欢使用递归而不是数组。 他介绍道:“在我最近交付的项目中,当我完成自己负责的那部分工作后,队友直言我的简直像是疯子。

在被问到 “为什么许多研究和实验并不总能转化为人们最终实际使用的东西时”,Gosling 指出最大的问题是工程师通常不知道如何解释他们在做什么。

他回忆了 Java 的早期阶段,当时 Gosling 妻子督促他和经营企业的负责人联系,并向他们解释 Java 如何让他们的生活更美好。

因此,Gosling 写了十几个不同类型公司的场景,他们可能会尝试做什么,以及为什么 Java 会让事情变得更好。Gosling 表示,这个举动帮了很大的忙。

Gosling 还分享了对 Java 现状的一些看法:“Brian Getz 和 Oracle 公司,他们正在从事 Java 的推进工作并处于其中的核心地位。总的来说,我对他们所做的事情感到非常满意。”



相关文章
|
7月前
|
消息中间件 人工智能 Java
面试了一个前阿里P7,Java八股文与架构核心知识简直背得炉火纯青
前几天,跟个老朋友吃饭,他最近想跳槽去大厂,觉得压力很大,问我能不能分享些所谓的经验套路。 每次有这类请求,都觉得有些有趣,不知道你发现没有大家身边真的有很多人不知道怎么面试,也不知道怎么准备面试,哪怕是一些工龄比较长的“老开发”: 有的人明知道有些问题肯定会被问,面试前还不好好准备,结果要么回答得模棱两可,要么答非所问; 有的人则是不知道怎么包装自己的项目经历,结果明明还不错的项目却看上去平平无奇,过后就被面试官忘了; 更有甚者,简历写得花里胡哨,结果一问三不知,简历和经历完全对不上。
159 0
|
13天前
|
安全 Java API
函数式编程在Java中的应用
【4月更文挑战第18天】本文介绍了函数式编程的核心概念,包括不可变性、纯函数、高阶函数和函数组合,并展示了Java 8如何通过Lambda表达式、Stream API、Optional类和函数式接口支持函数式编程。通过实际应用案例,阐述了函数式编程在集合处理、并发编程和错误处理中的应用。结论指出,函数式编程能提升Java代码的质量和可维护性,随着Java语言的演进,函数式特性将更加丰富。
|
21天前
|
Java API 开发者
Java 8新特性之函数式编程实战
【4月更文挑战第9天】本文将深入探讨Java 8的新特性之一——函数式编程,通过实例演示如何运用Lambda表达式、Stream API等技术,提高代码的简洁性和执行效率。
|
2月前
|
Java API
Java中的Lambda表达式和函数式编程
传统的Java编程方式在处理一些简单的逻辑时显得繁琐,而Lambda表达式的引入为我们提供了一种更加简洁、灵活的编程方式。本文将介绍Lambda表达式和函数式编程在Java中的应用以及其与传统编程方式的对比,帮助读者更好地理解并运用这一特性。
8 0
|
2月前
|
JavaScript Java 程序员
Java 8新特性解析:Lambda表达式与函数式编程
【2月更文挑战第12天】 本文深入探讨Java 8引入的两大革命性特性:Lambda表达式和函数式编程接口,旨在为Java开发者提供一个清晰的指南,帮助他们理解和应用这些新特性以提升代码的简洁性和效率。通过对Lambda表达式的基本概念、语法及其与函数式接口的结合使用进行详细分析,本文展示了如何利用这些新特性来编写更加简洁、易读且易于维护的代码。同时,文章还将通过实例探讨Lambda表达式在实际开发中的应用,包括在集合处理、事件监听和并发编程等方面的具体使用场景,以期让读者能够充分理解并有效利用Java 8的这些新工具,从而在日常开发工作中提高效率。
|
3月前
|
Java 编译器
如何在Java中使用Lambda表达式实现函数式编程
Lambda表达式是Java 8中引入的一种新的语法,它可以使我们以更简洁的方式编写函数式代码。本文将介绍如何在Java中使用Lambda表达式实现函数式编程,并通过实例展示其优点。
19 3
|
4月前
|
Java 编译器 API
【Java】lambda表达式,Stream API,函数式编程接口
【Java】lambda表达式,Stream API,函数式编程接口
32 0
|
4月前
|
设计模式 Java 编译器
Java 设计模式最佳实践:一、从面向对象到函数式编程
Java 设计模式最佳实践:一、从面向对象到函数式编程
62 0
|
4月前
|
安全 Java API
Java 编程问题:九、函数式编程——深入研究5
Java 编程问题:九、函数式编程——深入研究
19 1
|
4月前
|
存储 Java 数据库
Java 编程问题:九、函数式编程——深入研究4
Java 编程问题:九、函数式编程——深入研究
29 0