作者unixxxx (皓皓)
看板Soft_Job
标题Re: [讨论] 写三元判断式code review被打枪
时间Sat Dec 17 03:51:38 2022
随着语法的进步
很多会写 code 的人都很少写判断式了
不管是三元还是 if else
写太多的判断式
如果….所以…否则…如果….则又…如果..
很不好阅读
很多Javascript 高手都是用 switch 取代
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 36.225.146.185 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Soft_Job/M.1671220300.A.3C9.html
1F:嘘 peter98: 你先确定如果可以全用switch 为什麽还有if-elseif-else12/17 04:07
为什麽不行??
if(a) ...elseif(b)... else...
等同 switch ...case(a) case(b) default...
简洁又直观
2F:嘘 GLaDOS1105: 反串要先说12/17 04:28
3F:嘘 SJSU5566: 这串有完没完12/17 05:31
4F:嘘 BlueBird5566: ???12/17 09:10
5F:嘘 Rukawa31: 听君一席话12/17 09:12
6F:→ nh60211as: 有没有code参考一下12/17 09:33
7F:嘘 robler: 废话连篇12/17 10:09
8F:→ justben: 我上次用openai写code也被打枪 好烦恼12/17 10:22
9F:嘘 hegemon: 还好现在一堆人都用嘴写code12/17 10:32
10F:推 chchwy: 又是你 刷废文吗?12/17 10:59
11F:嘘 hobnob: 哈哈哈哈12/17 12:43
12F:嘘 NikonD5: switch?12/17 14:11
13F:→ somefatguy: 我都用最潮的steamdeck12/17 14:44
14F:嘘 purrup: 优文唷12/17 15:05
15F:嘘 jeffreyup1: ..12/17 16:11
16F:→ viper9709: switch没办法完全取代if else吧...12/17 17:44
怎麽可能不行
※ 编辑: unixxxx (36.225.146.185 台湾), 12/17/2022 17:58:41
17F:→ s06yji3: python 3.10之前没有switch case,表示功能上是可以互换12/17 18:52
18F:→ s06yji3: 的。但是使用情境和可读性就见仁见智了。12/17 18:52
19F:→ s06yji3: 感觉JavaScript 有functional programming 的倾向,可以12/17 19:02
20F:→ s06yji3: 理解用switch case替代if-else12/17 19:02
有 switch 後就很少人用if else了, FP後更是
21F:→ kurtsgm: switch硬要搞的话一定可以取代if else啊 只是写起来很蠢12/17 20:33
22F:→ peter98: 看完你的回应 我觉得你真的满弱的...switch不是给你这样12/17 21:11
23F:→ peter98: 用的12/17 21:11
24F:→ peter98: 阿 我跟你认真了 爬了一下你的文 原来是提出"不会分析12/17 21:12
25F:→ peter98: 复杂度的演算法强者"这种观念的人啊...算了12/17 21:12
26F:→ peter98: 平行世界 不足与语12/17 21:12
你最强啦
27F:推 wulouise: 可是3.10有pattern matching...12/17 21:22
28F:推 Apache: Rust:12/17 21:38
29F:嘘 pttano: 厉害12/17 21:58
30F:嘘 peter98: 上一段推文没嘘 补嘘12/17 22:32
※ 编辑: unixxxx (36.225.146.185 台湾), 12/17/2022 22:52:27
31F:→ s06yji3: 呃...我也不觉得switch 能完全取代if-else。而且我认为12/17 23:55
32F:→ s06yji3: 很可能是ReactJs的设计理念让工程师使用switch,毕竟这12/17 23:56
33F:→ s06yji3: 样比较符合what to do的declarative programming。12/17 23:56
34F:→ s06yji3: 至於是不是用FP就是高手我就不予置评了12/18 00:01
react 就是因switch启发而来的
35F:推 CoNsTaR: if else 就是 boolean specialized 的 switch case 啊12/18 01:08
36F:→ CoNsTaR: 虽然可以用 if else 的地方一定可以用 switch case,但12/18 01:08
37F:→ CoNsTaR: 不代表什麽都用 switch case 比较好12/18 01:08
真的就说可以
※ 编辑: unixxxx (36.225.146.185 台湾), 12/18/2022 02:46:58
38F:→ s06yji3: …除非有reference,不然我不信react是由switch启发来的12/18 09:22
39F:嘘 kurtsgm: 等等 有switch以後就很少人用if-else是谁跟你说的?12/18 10:55
40F:→ kurtsgm: switch case从你出生前的远古时代就有了12/18 10:58
41F:嘘 chatnoir: React 就是 switch 启发而来的..你认真??????12/18 12:04
42F:嘘 leptoneta: 反串要先讲12/18 13:40
43F:嘘 alihue: 还好不是你同事12/18 14:11
44F:嘘 ku399999: 多说一点大师的理解 让大家学习学习12/18 14:25
45F:嘘 DarkIllusion: 好可怜12/18 15:40
46F:嘘 aoksc: 我先为你同事以及要接手你code的人默哀一分钟12/18 16:08
47F:嘘 SpursDynasty: 这个版的被嘘的文都好好笑12/19 12:41
48F:→ shooter555: 不行啦 一个condition的话 switch 比if要多打四个字12/20 11:48
49F:→ shooter555: 不对还有case: 要多打九个字12/20 11:49
50F:→ JavaScript: 蛤.12/20 13:33
51F:推 gisasy001: switch 没办法取代if else 就因为不能放布林啊12/21 23:13
52F:嘘 iceonly: switch本身就是个有名的anti-pattern;当然看场合用用没12/22 17:14
53F:→ iceonly: 问题,不过搞到推广八成都是错的12/22 17:14
54F:→ iceonly: 拆if else的方法有很多种,不过不包含用switch12/22 17:15
这麽厉害
※ 编辑: unixxxx (114.137.72.179 台湾), 12/22/2022 19:30:58
55F:→ fatb: 其实ifelse如果又臭又长改成switch也没好多少 12/23 16:28
56F:嘘 kattte: 还好不是你的同事XD 12/25 16:13
57F:→ lwecloud: 这位就是演算法不考虑复杂度的,大家都认真了 12/26 11:35
58F:嘘 indexcome: 写得太少 看得太少 12/29 22:40
59F:嘘 friends29: 我都直接关电脑改用Nitendo Switch 01/06 06:30