nbndco

nbndco

V2EX 第 32154 号会员,加入于 2013-01-11 17:47:03 +08:00
今日活跃度排名 11361
根据 nbndco 的设置,主题列表被隐藏
二手交易 相关的信息,包括已关闭的交易,不会被隐藏
nbndco 最近回复了
10 天前
回复了 coderstory 创建的主题 Java Java 8 的 stream 常规操作导致线程卡死
每当这个时候我就特别能理解为什么说千万不要用新特性,没事不要修改不要更新不要升级了。这水平要是写 for 可能这代码还跑的快一点,至少不用 collect 这么多次。可读性本来就没有,所以也无所谓了。
@yiqiao 为什么开源就是 KPI 项目? Google 内的 perf ,帮助整个公司 migrate off C++肯定比开源个没啥人用的语言要有 impact 的多的多的多的多。只是文化上 Google 就是很喜欢开放,能开源的东西基本都开源了。

但是明显这个只是顺带开源,没想着要有人用,也没人靠这种东西拿 OKR (可能万一做大了会有几个 developer advocate 的 role 吧)。Google 都已经说的这么明白了,我这东西是为了取代 C++,请大家去用 rust ,不要没事用这个项目,想拿 KPI 的人会说这个话么?
@junkun 因为目标就是 migrate off C++,兼容是过程,目标是干掉 C++。就如同 swift 可以调用 objective-c 并不是因为 apple 太爱 objective-c 一样。
Google 的内部项目顺带开源了而已,有没有人用根本无所谓,Google 自己把自己的那堆内部的 C++慢慢替换掉就行了。和 hack 一样。
@Tussik 线下必然能复现这个问题啊,就几行 lua 代码,我现在也能复现,不然如何定位到问题?但是能复现和可测试之间是没有任何关联的。

因为你不知道应该怎么测,测什么。

首先 unit test 是没有任何意义的,这个就不用说了。可能的基本只能是 integration test 或者 smoke test 。对于这类完全不 predictable 的 edge case ,smoke test 也基本没有任何意义。那么就只能做 integration test 。

integration test 这个天坑我也不想多说,做过的都明白,最后只能 test 基本的 case ,确保模块间正常可用,甚至不能测试真实日常场景,更不可能测试 edge case 。别的不说,你就想想一般 unit test 里都经常只测 happy path ,好一点的也一般只有 utility 才 coverage 100%,很多逻辑都无法测试。很多时候为了 coverage mock 来 mock 去最后基本都只是在测试 mock 写对了没有,业务逻辑都 mock 光了。现在你来说 integration test 还要测这么复杂的 edge case ?不可能的啊。
@eason1874 用更容易出错的方法来解决一个不太容易出错的问题么。这不是把小坑挖成地道了么。
@Tussik 测试什么呢?参数是系统外传入的,你根本就不知道外部会传入什么。
测试在这里其实是基本没啥用的,这也是为啥大公司的 RPC 都是强类型的,因为没有强类型这种问题完全无解。

在动态语言中,根本不可能对每一个方法都做大量 runtime 的类型检查,唯一能做的就是确保参数进来的时候就不会错。
@heyjei 对于这个问题好像没啥意义吧
33 天前
回复了 cloudsigma2022 创建的主题 宽带症候群 google.cn 还活着吗
google.cn 永远不可能显示 nginx 404 。Google 就不用 nginx 。
关于   ·   帮助文档   ·   API   ·   FAQ   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   1397 人在线   最高记录 5497   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 10ms · UTC 18:11 · PVG 02:11 · LAX 11:11 · JFK 14:11
Developed with CodeLauncher
♥ Do have faith in what you're doing.