@
hxndg #51
@
Suddoo #54
感觉谈的是同个方向两个角度的事情,
Suddoo 在#33 表明的是吹毛求疵的问题,或者说,某种程度上,用某些语法糖反而会产生更“拗口”的代码;
hxndg 在#37 表明的是,不同的用法,虽然看起来结果是一样,但实际上会产生后续迭代的问题;
这个点上,我是赞同双方的,对于 hxndg 说的,我觉得是更有趣的一个观点,很多时候,写代码的时候,就算同一个用法,后面你再去做的时候,会发现就是少了那么一点预见性。
后面楼层就感觉不是同一码事了。
但就代码而言,合适的地方做合适的事,这个还是对的。
三目也好,lambda 也好,one line 也好,用得好就是化腐朽,用得不好确实挺臭的。
但像楼层这样没有例子,直接批评语法来说,我还是觉得不是特别妥当。
像 unpacking 这种,能够一行搞定的事,肯定是又优雅,可读性也好(在特定语言中);
有时简单的判断,三目一笔带过,肯定比去写个 if...else... 漂亮;
这跟提高性能,牺牲可读性,感觉还是两码事。
反之,本来就复杂的代码,还要夹杂在各种 if...else...做单层处理,一拉就是几十行,那还是挺丑的。