V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
V2EX  ›  w741069229  ›  全部回复第 4 页 / 共 5 页
回复总数  83
1  2  3  4  5  
2022 年 4 月 8 日
回复了 w741069229 创建的主题 Java Java 项目该不该用 stream 流来编写代码?考虑 code viewer
感谢各位大佬的回复,我们就基于这个问题,站在`code review`的角度,和`debug`的角度,看下下面这段,

1. @TWorldIsNButThis 大佬说,`stream`的`filter`算子都是无状态的,这一点我同意,本质如下面这段代码,其实只有`map`和`flatmap`会引入时间的复杂度
2. 站在`review`的角度,如果我们要兼容向下的同学,那么这段代码是否存在复杂性的难度?
3. 站在`debug`的角度,我们是否引入了新的**断点**(就是`stream`是无状态的,导致断点其实有时候不太好懂)问题呢?譬如,`idea`可以使用`debug`中的计算器模式进行
4. 站在代码整个的观感角度,下面这段代码是否可以理解不具备代码简洁特性以及代码的整体都美感上
5. 站在代码的复用性上,我认为`steam`的代码其实是对业务有更高的要求,因为我觉得`stream`的复用性其实蛮低的,如果要改的话,就会牵一发而动全身.
6. 站在异常的处理上,我认为`stream`其实是在更严谨的要求一个编程人员对一段结果中产生异常的一个预判,我认为更能锻炼编码人员的功底吧

```java
Optional.ofNullable(search)
.map(SearchResponse::getHits)
.ifPresent(hits -> StreamSupport
.stream(hits.spliterator(), false)
.filter(Objects::nonNull)
.filter(SearchHit::hasSource)
.filter(this::filter)
.......会是 filter
.map(SearchHit::getSourceAsMap)
.filter(Objects::nonNull)
.map(Map::entrySet)
.flatMap(Collection::stream)
.filter(Objects::nonNull)
.map(this::map)
.forEach(.....)
);
```
以上是小弟对`stream`一点见解,希望大家能对我的看法进行批判和讨论吧
2022 年 4 月 2 日
回复了 w741069229 创建的主题 Java Java 项目该不该用 stream 流来编写代码?考虑 code viewer
@HanMeiM 理解难度吧,别人拿到代码不能直观的看出来,就比如 optional·ofNullbale 这个算子
2022 年 4 月 2 日
回复了 w741069229 创建的主题 Java Java 项目该不该用 stream 流来编写代码?考虑 code viewer
@anzu 非常同意,但是这样做的结果就是,要么要写一个 predicate,把所有的判断逻辑放进去,这种会增加一定的理解度,但是我认为会有一定的效率提升;要么就要不停的.flilter ,这种得对原生的 api 有一定的了解,我认为好处就是代码比较清晰明了吧。那么这就引申了一个问题,哪种写法更好?
2022 年 3 月 31 日
回复了 w741069229 创建的主题 Java Java 项目该不该用 stream 流来编写代码?考虑 code viewer
@EscYezi 哈哈哈哈哈。我一直在用
2022 年 3 月 30 日
回复了 w741069229 创建的主题 Java Java 项目该不该用 stream 流来编写代码?考虑 code viewer
2022 年 3 月 30 日
回复了 w741069229 创建的主题 Java Java 项目该不该用 stream 流来编写代码?考虑 code viewer
@gam2046 我是新接的,我之前都是梭哈 stream 流,通篇的那种,但是新公司入职后,就不让用了
2022 年 3 月 30 日
回复了 w741069229 创建的主题 Java Java 项目该不该用 stream 流来编写代码?考虑 code viewer
@pengtdyd 但是公司的大佬不让用 stream 和 optional 这些用法
2022 年 3 月 23 日
回复了 w741069229 创建的主题 iOS 大家有没有觉得 15.4 掉电速度变快了?
@riceathome 只能说明你没有注意过,我也是 13pm ,能直观感受的,还有卡顿问题,总感觉会变砖
2022 年 3 月 22 日
回复了 w741069229 创建的主题 iOS 大家有没有觉得 15.4 掉电速度变快了?
@witcherhope 还真不是,但是有很明显的感觉,15.4 之前可以带电一天,15.4 晚上必须要充电了
2022 年 3 月 18 日
回复了 w741069229 创建的主题 问与答 技术对应的薪酬的问题?
@paradoxs 对应的是北上广深吧
2022 年 3 月 18 日
回复了 w741069229 创建的主题 问与答 技术对应的薪酬的问题?
@anonymousar 并不是,不敢狂到说精通 es,只是目前在考虑证书对薪酬的提升有多大。
2022 年 3 月 18 日
回复了 w741069229 创建的主题 问与答 技术对应的薪酬的问题?
@knightdf 你说的年薪 10w ?不止吧
2022 年 3 月 18 日
回复了 w741069229 创建的主题 问与答 技术对应的薪酬的问题?
你说的年薪 10w ?
我的 64g,mac 版本感觉千万别搞这么高,鸡肋到不行,内存用高了风扇飞起来了,内存用不高,内心又不甘心,两难抉择
2021 年 6 月 7 日
回复了 szuwl 创建的主题 程序员 为什么很少听说有人用 kotlin 开发后端
用 kt 不如用 scala,写起来比 kt 优雅的多吧
2020 年 10 月 17 日
回复了 HighLight 创建的主题 问与答 预算 3500 左右,求手机推荐?
@kindjeff 一加这个拉跨的信号还是别推荐了,本人就是一加,地铁上看着苹果手机的人聊微信,很抽象
2020 年 10 月 16 日
回复了 LabJo 创建的主题 职场话题 六年 Java 一句 JS 代码都不会写,正常吗?
我就只会一些 Markdown 式的 html,是不是要被淘汰了😂
py 啊,scala 基础入门就要很久,ko 做安卓好一点吧,没接触过,groovy 好像不怎么吃香
2020 年 10 月 16 日
回复了 lynn0977 创建的主题 Android 这么多年过去了,一加的氢 OS 系统还拉跨吗
信号也挺垃圾的,入手一部,秒变路转黑
2020 年 10 月 15 日
回复了 Pierson 创建的主题 Apple macOS Big Sur beta10 发布
big sur 不适合办公
1  2  3  4  5  
About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   954 Online   Highest 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 21ms · UTC 19:31 · PVG 03:31 · LAX 12:31 · JFK 15:31
♥ Do have faith in what you're doing.