java之父偏爱函数式编程,称自己的代码风格被队友批评

程序员的店小二 程序员的店小二     2023-01-18     126

关键词:

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 的推进工作并处于其中的核心地位。总的来说,我对他们所做的事情感到非常满意。”

相关链接:https://www.youtube.com/watch?v=Ynu9QEJSGX8

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

点击关注公众号,Java干货及时送达推荐阅读:学习SpringCloud微服务的最佳姿势!SpringCloud2022正式发布!出品 |OSC开源社区(ID:oschina2013)JamesGosling,加拿大计算机科学家,完成了Java的原始设计,... 查看详情

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

...了Java最初版本的编译器和虚拟机,也是公认的“Java之父”。Gosling现在是AWS的工程师,在12月初的reClojure2022线上会议中发表了主题演讲。他分享了在技术行业工作数十年的经验,这些经验最终使他进入了云服务器领域... 查看详情

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

...了Java最初版本的编译器和虚拟机,也是公认的“Java之父”。Gosling现在是AWS的工程师,在12月初的reClojure2022线上会议中发表了主题演讲。他分享了在技术行业工作数十年的经验,这些经验最终使他进入了云服务器领域... 查看详情

结对编程队友的个人项目代码分析

...三十行完成,与我自己的代码相比,尤其是在生成题目的函数上,无疑更加精简并且算法巧妙,其函数只用一个n作为参数用来调控三种不同难度的题目转换,但精简的部分缺点就是生成题目方式比较单一,比如在括号的应用上... 查看详情

函数响应式编程(frp)思想-callback风格

...让你的代码像数学一样简洁,业务像流水一样清晰流畅。函数响应式编程响应式编程思想为体,函数式编程思想为用。 响应式编程例如,在命令式编程环境中,a:=b+c表示将表达式的结果赋给a,而之后改变b或c的值不会影响a... 查看详情

scala学习之函数式风格编程(代码片段)

...unctional-programming.htmlScala允许您以面向对象编程(OOP)风格、函数式编程(FP)风格甚至混合风格编写代码,结合使用这两种方法。本书假设您是从Java、C++或C#等OOP语言来到Scala的& 查看详情

java8的函数式编程怎么样?

使用函数式代码的好处:减少了可变量(ImmutableVariable)的声明能够更好的利用并行(Parallelism)代码更加简洁和可读函数式接口函数式接口就是仅声明了一个方法的接口,比如我们熟悉的Runnable,Callable,Comparable等都可以作为函数式... 查看详情

java之函数编程(代码片段)

...他需要的同学查阅。Lambda表达式简介    ①Java8引入的函数式编程风格;    ②可以理解为一种匿名函数的代替;    ③通过行为参数传递代码。Lambda表达式的形式        (parameters)-& 查看详情

函数式编程

在函数式编程中,函数被视为一等公民,这意味着它们可以绑定到名称(包括本地标识符),作为参数传递,并从其他函数返回,就像任何其他数据类型一样。这允许以声明性和可组合的风格编写程序,其中小功能以模块化方式... 查看详情

为啥要使用lambda表达式?原来如此,涨知识了

...直被程序员所诟病,好在随着JVM平台语言Scala的兴起以及函数式编程风格的风靡,让Oracle在Java的第8个系列版本中进行了革命性的变化,推出了一系列函数式编程风格的语法特性,比如Lambda表达式以及Stream。如果采用Lambda表达式... 查看详情

几种编程风格简介

面向对象,面向过程,函数式编程,声明式编程都是一种编程风格:一、函数式编程lisp就是一种抽象程度很高的编程范式,纯粹的函数式编程语言编写的函数没有变量,模拟数学上的函数,,任意一个函数,只要输入是确定的,输... 查看详情

混合面向对象和函数式编程

】混合面向对象和函数式编程【英文标题】:Mixingobject-orientedandfunctionalprogramming【发布时间】:2010-11-0404:13:18【问题描述】:有哪些语言可以同时促进面向对象和函数式编程?我知道任何支持一流函数的语言都可以被认为是函数... 查看详情

java自制简易函数式编程库初出炉

...出来的想法。是时候展现真正的技术了。。。一个简易的函数式编程库就这么诞生了。。。 作为函数式编程库,体现了以下特征:1、以函数为基本复用单元的编程风格2、用懒惰序列(对应于java中的Iterator)进行简单的数据交... 查看详情

什么是“无点”风格(在函数式编程中)?

】什么是“无点”风格(在函数式编程中)?【英文标题】:Whatis"pointfree"style(inFunctionalProgramming)?【发布时间】:2010-10-3023:24:42【问题描述】:我最近注意到的一个短语是“无点”风格的概念......首先,有this的问题,还... 查看详情

队友代码拜读(文末附福利呦)

根据结队编程要求:要读队友代码,然后找出代码的优缺点。队友代码为Java编程,Java为一门完全面向对象语言。首先说一下不规范性,同时也是给自己写代码时提醒(某国某程序员写代码不规范被枪杀)1、队友代码共有354行,... 查看详情

函数式编程

函数式编程(英语:functionalprogramming)或称函数程序设计、泛函编程,是一种编程范式,它将计算机运算视为函数运算,并且避免使用程序状态以及易变对象。其中,λ演算(lambdacalculus)为该语言最重要的基础。而且,&lamb... 查看详情

函数式编程的历史(代码片段)

@author chenyun草稿定义函数式编程(英语:functionalprogramming)或称函数程序设计,又称泛函编程,是一种编程范型,它将电脑运算视为数学上的函数计算,并且避免使用程序状态以及易变对象。函数编程语言最重要的基础是&lam... 查看详情

面向对象(代码片段)

面向对象个面向过程编程的理解:面向对象编程和函数式编程(面向过程编程)都是程序设计的方法,不过稍有区别。面向过程编程:1.导入各种外部库2.设计各种全局变量3.写一个函数完成某个功能4.写一个函数完成某个功能5.... 查看详情