荷兰 Gov 根据要求公开身份验证 App 的源代码

2023-01-18 16:06:07 +08:00
 alexkuang

代码出处: https://github.com/MinBZK/woo-besluit-broncode-digid-app/blob/master/Source/DigiD.iOS/Services/NFCService.cs

8271 次点击
所在节点    分享发现
78 条回复
Jimmyisme
2023-01-19 15:21:00 +08:00
@lysS 自带输入法 bug 很多(很多游戏里不能打中文)😂已经习惯搜狗+双拼了
Lighfer
2023-01-19 15:28:17 +08:00
在能满足现有需求的前提下这代码没什么可挑剔的。
至于有些人说产品经理之后要改成显示更精确的进度,这段代码改起来也很轻松,无论是什么人来改都没问题。
在我看来,一个项目不必在每一个如此小的功能点都要设计得很复杂,所谓的可扩展应该是针对整个项目的局部,但不是局部到如此细节,更多的情况下是这段代码可能这辈子都不会动它了。
最后,每个人的品味都不一样,单单这段代码我个人认为并不存在可挑剔的地方,更上升不到人身攻击的程度。
叠个盾牌: 仅针对这段代码及这个帖子内容发言,不要拿我没看过项目中的其他代码说事,因为我真的没看。
netabare
2023-01-19 16:07:47 +08:00
这哪里最佳实践了,扯性能,10 个 if 也不是没有代价的,说可读性,写代码的人一般情况下都懂小学数学,这种代码没有任何优势,而且一堆小于大于号粗心写错的可能性也不是没有。

而且,如果传入的是负数怎么办?
ramondoo
2023-01-19 16:15:56 +08:00
代码还是有些问题的
( 1 )参数小于 0 的情况处理不当
( 2 ) double 类型的参数与零比较方式有问题
revlis7
2023-01-19 16:39:22 +08:00
哪儿呢么多废话,就问一句,你就说这结果对不对吧!
Genshin2020
2023-01-19 16:50:21 +08:00
说一个冷知识点,蓝色字符长度为 2 ,白色字符长度为 1

好了,继续讨论
k9982874
2023-01-19 16:54:18 +08:00
发现楼上有个看不懂 10 取模的程序员
Genshin2020
2023-01-19 16:56:16 +08:00
@netabare 我不知道多少人尝试自己优化一下,我尝试以后发现这样的办法也许真的是比较高效的方法。

但是那些说这个代码好的,我怀疑他们没有自己去实现,单纯因为是洋人写的

比如,蓝色字符长度为 2 ,白色字符长度为 1 ,这个关键点都没有人点出来
Genshin2020
2023-01-19 17:01:21 +08:00
console.log('🔵 ===>','🔵'.length)
console.log('⚪ ===>', '⚪'.length)

可以自己在控制台打印一下
westoy
2023-01-19 17:46:24 +08:00
@Genshin2020

也不一定, 🔵的 unicode 码是 128309

支持 UCS4 的语言实现里是 1 个字长, 比如 python 、ruby 、haskell 、rust 、go(utf8.RuneCountInString)等等

只支持 UCS2 的语言里是 2 个, 像 jvm 系、c#、node 等等
moioooo
2023-01-19 17:54:45 +08:00
js 里我也这么写的。
一开始想着等逻辑理清楚,代码完成之后再吧打印改的简洁点
后来回头看,感觉挺适合 review ,就留着了
ccraohng
2023-01-19 17:57:36 +08:00
b.repeat(y ,b) + w.repeat(10 - y, 'w')
在我这是一坨大便
Genshin2020
2023-01-19 20:31:21 +08:00
@westoy 原来如此,受教了,十分感谢。

我是前端,JS 回家的路上想到解决方案,但是按照之前的答主,写出来也是对阅读不友好的方案。

#35 的改版,只是计算公式符合我说的这种情况
iikebug
2023-01-19 20:48:54 +08:00
这样的代码都有人吹易读性的吗?
adoal
2023-01-19 21:22:38 +08:00
当代程序员价值观众生相😃
hhjswf
2023-01-19 21:23:13 +08:00
有内味了,把贾浅浅的屎屁尿放进高考阅读理解,想必各位大佬也能品出一番风味。别问,问就是蠢人欢迎对号入座
lengyuqu
2023-01-20 07:46:45 +08:00
国外的屎都是可以吹的😃
zhlxsh
2023-01-20 13:17:15 +08:00
看了下原文的推特机翻的标题:荷兰 gov 被迫发布其 DigiD 数字身份验证 iOS 应用程序的源代码。它是用 C# 编写的。

我记得高中 pascal 写的字母塔也是用 for 循环

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

https://ex.noerr.eu.org/t/909731

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

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

© 2021 V2EX