·

java8 真的要弃用了,语法太啰嗦,整个屏幕都是声明代码,比如:

DaoAuthenticationProvider provider = new DaoAuthenticationProvider();
provider.setUserDetailsService(uds);
PasswordEncoder passwordEncoder = getBeanOrNull(PasswordEncoder.class);

用 var 类型推断写成:

var provider = new DaoAuthenticationProvider();
provider.setUserDetailsService(uds);
var passwordEncoder = getBeanOrNull(PasswordEncoder.class);

还有 switch、instance 语法可以简化很多代码,17 就挺好的,spring boot 已经支持 java17 很久了,后面的 spring boot3 要求最低 java 版本是 17,会强制切换

Replies
3

因为语法简单所以表达啰嗦,但是对看代码是友好的,当你看着满屏幕的 var 看不出来一个方法返回了啥类型的时候就该骂娘了。

真正工作了其实看别人代码比自己写代码时间多得多

var 类型推断其实是很好的技术,java 上的晚了,C#、C++、Typescript 都有类似的实现,我觉得代码量多的时候阅读还是明显容易一点,如果要看类型,ctrl 点进去就可以 relaxed

Ctrl 能点进去要先编译把,得配个 IDE 吧,先不说大项目里乱七八糟依赖让人头疼,跳进跳出的数量少还行,超过十个八个的就容易让人遗忘了