V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  lmshl  ›  全部回复第 4 页 / 共 24 页
回复总数  471
1  2  3  4  5  6  7  8  9  10 ... 24  
2023-01-09 12:08:51 +08:00
回复了 Ranni 创建的主题 程序员 JSON 数据中,要将 value 转成特定的值,如何优雅的转换
@Vaspike kotlin 版随手写的,其实不安全,没有错误处理。按照生产级代码规范,应该多加 5 行的 data class 定义,做严格 ser/deser 。
同样的逻辑用 Scala 写会安全很多,Option/Either 签名的方法都是默认实现了,flatMap/getOrElse 过去就好。
2023-01-08 20:06:57 +08:00
回复了 Aaron7Amelia 创建的主题 程序员 对与设计模式始终都没有什么感觉
上大学时候我也曾迷信设计模式,还专门买了几本书学这个。结果每本书都没看过一半
现在工作十年了,对设计模式的需求几乎降到 0 了,反正没什么是现代函数式语言做不到的,硬套设计模式反而让代码变得难以维护。
2023-01-08 15:38:40 +08:00
回复了 Ranni 创建的主题 程序员 JSON 数据中,要将 value 转成特定的值,如何优雅的转换
2023-01-05 16:17:31 +08:00
回复了 MorningStar0 创建的主题 程序员 写了一些在 JS 里实践函数式编程的经验
建议理论部分可以参考《 SICP 》,实战部分多写点 RxJS 之类的。
以及不要讲 Monad ,就像现在这样

再就是拿实际业务举例,怎么用 map/filter/reduce 等替换掉 loop 部分,我觉得就足够了。
https://www.zhihu.com/question/570165038/answer/2784350974
2022-12-30 13:01:12 +08:00
回复了 VeryZero 创建的主题 程序员 Spring Cloud Stream 如何用函数式的方法处理下游返回的消息?
Promise 模式
任务开始时创建 Promise 和标识句柄,收到来自下游的任务结束,根据句柄找到 Promise 并标记为 Resolve/Completed
这样业务里看到 Promise 状态变更时,自动进入 then 逻辑继续后面的处理
2022-12-19 16:24:39 +08:00
回复了 aoxg2019 创建的主题 程序员 数据增量同步检验问题
我觉得业务层还是需要按照业务层的思路去解决,这和基础设施取舍不同。
比如按照做基础设施的思路来搞,那应该每一步都不可以出错,如果出错了就应该停在当前位置无限重试下去,以保证数据最终一致性。
但按照业务思路来做,因为一条数据出错而导致整个系统数据同步停机是不可接受的。

所以必然是以业务行( row )为单位,多次重试后记录错误并跳过,ES 也仅供搜索,业务事务依然由 RDBMS 保证,如此则需要引入就死信队列( DLQ )与纠错机制。

DLQ 能弥补一部分错误,但无法处理某些内部错误被当作正确处理跳过的场景。例如上游有 BUG ,请求账户积分失败时返回了 0 ,虽然锅是上游的,但修数据依然是下游要处理的。

所以还是需要有一种纠错机制来保证数据的最终一致性。我最近在考虑哈希树( merkle tree )不错,它是区块链用于校准的数据结构,可以快速对比不一致的数据块。
https://i.imgur.com/b4ccaPd.png

比如我们可以定时在闲暇对数据库做全量或部份 merkel tree 计算并对比两侧结果,最近数据多算,历史数据少算。这样对比出的不一致结果再通知给开发,找一下是哪里出的问题,以及手工对数据做补偿等等。
2022-12-18 15:42:31 +08:00
回复了 closedevice 创建的主题 程序员 [求助] 我好像再也没学会另外一门编程语言!
@FrankHB
大佬的建议给我的感觉就像是......😂
学霸:“真的很建议大家考清华大学”
专家:“真的很建议大家全款买房”

楼主这个阶段和水平的人,我觉得离着大佬说的“改语言”和“造语言”还远得很
2022-12-18 12:25:11 +08:00
回复了 yazinnnn 创建的主题 Java 2022 年冬月, Java 后端工程师拒绝使用 kotlin 的技术原因有哪些?
@NCE 我发现我工作十年了,Java 0 基础,但并不妨碍我写了 5 年多 Scala ,最近两年还写了万把行 Kotlin 。
Java 锁、多线程、设计模式、GC 和 Spring 八股文一句都没背过,不影响我写 JVM 上的语言......
2022-12-18 11:50:23 +08:00
回复了 JinTianYi456 创建的主题 Java Java .util.stream api 在这些情况会有遍历优化吗?
这东西看源码没用,最后还是要以 JIT 为准,JIT 会把能 inline 的都 inline 掉,减少函数调用开销
2022-12-16 17:14:45 +08:00
回复了 kyrre 创建的主题 程序员 白嫖的 XShell 被公司禁掉,大家有啥推荐的没?
windows terminal + wsl2
还装了 oh-my-zsh

---并行版本---
macos 也装了 oh-my-zsh ,记忆 ssh 不需要额外客户端

---上一个版本---
把公司电脑装成了 fedora ,原生 ssh 继续用

---初版---
XShell + SecureCRT + 虚拟机 linux
2022-12-14 10:54:54 +08:00
回复了 yurong3333333333 创建的主题 程序员 大家在什么业务场景使用对象作为 HashMap 的 key?
挺常见的吧,比如有些场景下我会用 java.time.LocalDate 做 key
2022-12-09 18:42:02 +08:00
回复了 Guidoo 创建的主题 JavaScript 关于 js 的一个奇怪的问题
我举个简单例子,题主能不能理解到就看悟性了😏
(提示:console.log 在浏览器中被魔改增强过,不只是简单的输出字符串
https://i.imgur.com/h8wYP0H.png
7-8 年前我大约处于你这个阶段,(专科+培训班 ≈ 本科+非科班?)然后我去学了《 SICP 》和《组合数学》,现在已经是 CTO 了。
不过时代变了,不敢保证今天学完这两本书的人,还能不能收入翻几倍。
2022-12-05 13:54:46 +08:00
回复了 witcat 创建的主题 JavaScript 在学习函数式编程, Ramda 的一些疑问
不辣的
```javascript
if (!shouldFill(row.length)) return row

const arr = brickSample()
return prepend(row, arr)
```
2022-12-05 13:35:10 +08:00
回复了 witcat 创建的主题 JavaScript 在学习函数式编程, Ramda 的一些疑问
楼主的用法真的是辣眼睛。

关于 JS 函数式编程,前两天我写了个知乎回答,贴过来 https://www.zhihu.com/question/570165038/answer/2784350974

https://i.imgur.com/ZctV5GY.png
2022-12-04 15:41:06 +08:00
回复了 serialt 创建的主题 Android iPhone 弃坑
@18k 啊说错了,是 11 Pro
2022-11-30 14:25:53 +08:00
回复了 hackingwu 创建的主题 程序员 以下那种方式处理全量数据性能更佳呢?
我都是用第二个语句,但是不加 limit 直接用 jdbc stream ,控制好每个 fetch size 就行。
如果需要从崩溃恢复,再加 updateTime > [最后处理的时间]
2022-11-22 14:26:08 +08:00
回复了 serialt 创建的主题 Android iPhone 弃坑
我的 13 Pro 信号也不太行,电池也衰减到 76% 了,64G 存储装不下几个应用。
2022-11-21 17:11:49 +08:00
回复了 TaoLoading 创建的主题 程序员 前端学习后端,语言选择
我是从 node.ts 转到 Scala 的,如果想学点别的我比较建议 kotlin + ktor ,或者 rust 。
不推荐 go 是因为如果你学得会 rust 或者 ktor(kotlin) 的话,转 go 不过是 1 周的事。但反过来却不成立
2022-11-15 15:20:42 +08:00
回复了 winchang 创建的主题 程序员 这里有没有对 category theory 信心十足的程序员?
我自封我为比较懂纯函数式 Scala 的开发者,但我想说犯愁论真不是必须的,学函数式编码和学犯愁论相比,可以说是南辕北辙了。
在 Haskell 将 Monad 概念引入之前,《 SICP 》中教授的知识也足以应付所有编码场景了。
https://i.imgur.com/NBqp8vT.png
https://i.imgur.com/2366hjU.png
1  2  3  4  5  6  7  8  9  10 ... 24  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   1037 人在线   最高记录 6543   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 29ms · UTC 22:36 · PVG 06:36 · LAX 15:36 · JFK 18:36
Developed with CodeLauncher
♥ Do have faith in what you're doing.