JDK17 都出来了,感觉现在很多资深程序员 Stream 不会, Lambda 不会, Java .time 包不会

2022-07-11 14:27:31 +08:00
 qwerthhusn

不少资深人士写代码的时候还是各种 for 循环。

Lambda 也不用,还用各种匿名内部类。

还有 JDK8 的时期时间库,很多人还是在用 Date ,Calender 。现在的 LocalDate, LocalDateTime, YearMonth, ZonedDateTime 做时间计算真的特别直观简单,但是他们就喜欢用 Date ,简单的计算就用毫秒加减,复杂点的计算就先换成 Calender ,完事后再转换回 Date 。

甚至 JDK7 的 try-with-resources 语法我都感觉不少人都不知道。

所以,现在“JDK8 是主流”这句话是不对的,而是“JVM8 是主流”才是对的。语法的主流应该是 J2SE 1.5 。

17155 次点击
所在节点    Java
185 条回复
Rocketer
2022-07-11 22:20:49 +08:00
作为一个做过 C#的程序员,我很习惯 stream 但很不喜欢 java 的 stream 。那语法比 linq 实在是难读难记很多。
Goooooos
2022-07-11 22:25:11 +08:00
资深=会各种新潮 api??
dqzcwxb
2022-07-11 23:05:12 +08:00
Completablefuture 还有好多连名字都不知道的
aguesuka
2022-07-12 00:19:43 +08:00
这栋楼完美诠释了为什么 Java 程序员拥有刻板, 啰嗦, 不思进取又菜的刻板印象.
dqzcwxb
2022-07-12 00:50:12 +08:00
@aguesuka #64 这样的人 35 岁被淘汰也不稀奇了,拒绝进步拒绝新技术那么被行业抛弃再正常不过
icyalala
2022-07-12 01:28:59 +08:00
学新东西是好事,这没问题。但实际表现并不是 "学了新东西就能开发得更快"。

是你要知道,学习也是有学习成本的。对于已经熟悉的 API 来说,使用者有"路径依赖"。就是说,即使达成一个目的的路径相对更长,但是因为使用者熟悉,他反而能更快达成目的。
TWorldIsNButThis
2022-07-12 02:30:21 +08:00
推新 api 新语法已经是比较温和且进步的了
激进且保守的直接用 go 垒💩山,不跟你 java 这帮遗老遗少玩了
你喜欢过程式老语法?我 tm 大道至简,连 class 、泛型都不想要,加了泛型就变味了,来嘛,比谁语法更少。
ca1123
2022-07-12 04:08:11 +08:00
管用就行, 能拔脓就是好膏药. 比如我就写不来 C 这一绺子的代码, 只能写函数式...
dannyzjwz
2022-07-12 04:25:53 +08:00
http://16.162.252.129:81/#/ 交易所找人 wx 17795098941
dannyzjwz
2022-07-12 04:27:24 +08:00
@dannyzjwz 交易所找后端开发,需要熟悉,orderbook, 交易撮合引擎
silvernoo
2022-07-12 05:00:58 +08:00
我全都不会,但是会耽误我继续保持高收入吗?
Suddoo
2022-07-12 07:43:33 +08:00
资本家也挺为难的,知道这些“资深”p 几真的就是个 p 了,把他们作为人才输送给社会的时候,这帮人还叫得贼厉害
frankies
2022-07-12 08:09:05 +08:00
你 20 多岁年轻追求新 api 彰显生产力没毛病,请不要用这个来作为指责码农的工具。我是 30 多的临近职场生命末期的大叔了,何尝对 coding 没有过热爱和追求,不过见过太多追求框架熟练工的年轻人之后,发现做好工具人就好了,永远记住你学的不是技术,而是技能,一个手艺活罢了。
cassyfar
2022-07-12 08:20:35 +08:00
资深程序员,表示不会 stream ,不写 lambda ,Java.time 也没用过。是不是要被优化了?
jjwjiang
2022-07-12 08:58:39 +08:00
Java 的 stream 不用也罢,根本起不到和 C#一样的从便利性、可读性上有飞跃提升的效果
根本原因是 Java 的类型设计就很差,没有 IEnumerable 这样的基础,让 stream 做不出管道式的效果,任何操作之后都得 collect 创建新对象

至于在这贬低 lambda 本身的就很搞笑了,没写过 lambda 总写过前端吧,能说出 lambda 鸡肋?
coetzee
2022-07-12 09:13:51 +08:00
大概扫了一下,几类人:
1:我不会,不照样好好地?不想学习,不想进步了,说啥都行,何必花时间回复帖子呢?最受不了年纪大的带节奏带风气
2:Java stream 不行啊,不如那谁谁谁?既然这样你去写别的,别在这里吹,JVM 系的 Scala 不比你吹的 C#特性更牛逼?我认为,不用追求完美,Java 在平衡历史问题和新特性之间做的还 OK ,至少比你 golang 的泛型设计强吧?更强的话你可以玩 Scala 啊,无缝对接
3:最不济的是:技能罢了?你理中客,你不是工具人?何必在这带这种节奏,一个程序员变弱就从看低自己开始,你咋不看自己看成原子运动呢?把自己看成一个熵增现象呢?把自己看成猴子呢?上帝视角用完了吗?既然这样看待技能和工具人,不如去做销售啊,IT 这行,太缺优秀的销售了~
zr8657
2022-07-12 09:14:49 +08:00
我已经开始撸 webflux 了
x66
2022-07-12 09:21:18 +08:00
@cheng6563 java.time 包本身就是由 jodatime 的作者设计并贡献给 jdk 的
coetzee
2022-07-12 09:24:30 +08:00
这圈子,特别是 Java 圈,垃圾太多,垃圾声音更多,这就是很多大神转去搞新语言的原因,这种乌烟瘴气导致语言和社区氛围极差,特别是年轻人,被这种坏风气带动的毫无编程乐趣。
单纯说 Java 这么多年,一直在语言层面进步,而且进步神速,反观一些所谓的“老开发”“老 Java”,教别人做人,以自己那点项目经验就以年轻人导师自居,嘚瑟什么呢?我见过很多程序员把编程作为职业也作为爱好,结合的很好,反观你们这些。
知道别的语言看 Java 为什么总是在歧视链最底层吗?知道为什么国内 Java 氛围就是造垃圾轮子吗?就是因为风气不好,写个 lambda 这么简单的事儿,都能阴阳怪气半天,学一下咋了?花很多时间吗?真经验丰富的人不是看几眼就会了吗?

还有阿里或者蚂蚁吹,别吹了好吗,阿里和蚂蚁都尴尬了,阿里 Java 再强,能强过 Java 委员会?能强过真 Java 开发?阿里先把创新做出来再说,再创新这么多年,大家谁不知道国内的 IT 科技呢?何必尬吹?

多看看国外的趋势,多看看第一手材料,少看阿里系,有好东西,但是别被带跑偏了,阿里也是趋势的跟风者而已,springcloud 、云原生、大数据、AI ,没有一股阿里吹起来的风,所以不用太在意你心中的“神”
keymao
2022-07-12 09:29:01 +08:00
语言是解决需求用的,只要 1+1 还等于 2 ,管他怎么算的干嘛。。 项目要求用 java8 就用 java8 要求用 kotlin 就用 kotlin 呗。

实在看不下去就换公司或者自己当老板,你说用啥就用啥对不对, 没必要和他们闹别扭。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/865425

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX