在看某些语言文档或者某些框架的过程中,总会看到「另一种写法」。
达成的目的完全一样,只是写法不同。也不算是语法糖,因为二者(或者三者)复杂度一样。
这样的目的应该是方便使用其它语言或者另一种思维习惯。想让自身更具包容性。
可是这让我很困绕,我感觉很乱。我也不能只掌握一种写法。只要语言或框架本身给出了这种用法,那么肯定会有人用到,然后在看别人代码的时候就会看到各种写法。可是做一件事情的多种写法(不是解题的多种思路)一来浪费了我的(一点点)精力,二来让我心里觉得不舒服。
不知道会对这种情况心里感到不舒服的是否只有我。
1
julyclyde 2015-11-24 18:03:50 +08:00
同
|
2
lunaticus7 2015-11-24 18:15:42 +08:00 3
RUBY 中枪无数,已倒在楼主的加特林之下 [=.=]
|
3
jzfr 2015-11-24 18:16:59 +08:00
如果都只提供一种选择,又会有喷子不停的喷:“多个选择总是好的”!
即然叫多种不同的写法,总有他微小的区别,往往微小的细节带来的结果区别很大,不要轻易的说“其实一样,其实差不多” 这类结论。 如果你只喜欢一种写法,那你随便选个你看的顺眼的写法就可以了,忽略你不想要不想看的写法就可以了,你就当他只有一种写法就可以了。没人强迫你看第二种写法啊。 这就好象选女朋友,纵使你弱水三千只取一瓢而饮,但其他女人不是就不该存在吧,你有什么权利代替别人做出取舍,别人就喜欢很多女人给他挑,别说什么蒙上脸都是一样的生孩子。 |
4
FrankFang128 2015-11-24 18:17:28 +08:00 via Android
那你用 Java 就好了,只有 OOP
|
5
scarlex 2015-11-24 18:18:11 +08:00
@lunaticus7 JS 也是
|
6
dorentus 2015-11-24 18:19:49 +08:00 via iPhone
不知道某些事情(即便对某群人来说那是常识)是很正常的,拒绝了解自己不知道的事物才是不好的。所以没有必要记住所有的啊,用多见多的东西自然会记得,其它的有文档和搜索引擎。
|
7
lecher 2015-11-24 19:27:43 +08:00 via Android 3
代码写得少而想得太多。
在代码的世界里每一种解决思路都有优点和缺点,不可能存在一个通用模型去解决问题的。实际开发都是根据业务规模和交付时间去选型,可能用着用着架构就要大改,实际情况的制约多着呢。 在我看来这个行业最坑的是开发的时候要考虑人员平均开发水平,像我这样的半桶水太多导致很多高手开发的时候不得不考虑后续招人能力不足,而降低对 magic code 的使用,比如选择开发人员基数大的语言和版本,使用比较繁琐但易于理解的代码,放弃了很多生产力更先进的工具和开发模型。 |
8
SpicyCat 2015-11-24 19:29:09 +08:00
题主非常适合 Python ,别碰 Ruby
|
9
caixiexin 2015-11-24 19:42:58 +08:00 via Android 1
奥卡姆剃刀原则?
|
10
Phariel 2015-11-24 19:56:19 +08:00 via Android 1
哈哈 我第一反应就是 Ruby 一个团队几个人写的代码互相看不懂。。。
|
11
DingSoung 2015-11-24 20:06:08 +08:00
那谁说 茴香豆的“ hui ”有 3 种写法
|
12
ibigbug 2015-11-24 20:52:00 +08:00
两种写法肯定是有关联的,会一种,再学一种简直不费吹灰之力。
|
13
Comdex 2015-11-24 21:15:12 +08:00
在这方面 golang 应该做得比较好
|
14
magicdawn 2015-11-24 21:35:49 +08:00 1
Python, 呵呵哒~
urllib, urllib2, urllib3, .... |
15
linux40 2015-11-24 22:31:05 +08:00
举个例子,动态规划一般有两中算法,一种自下而上的方法,一种带备份的递归方法,你一般会用哪种呢?
比如我今天碰到第一个问题时,我用的第二种,因为第二种更直观,并且当时我实在是没想清楚怎么用一种写。 但是第二个问题,我用的第一种,虽然第二种更直观,但在一般情况下,循环比递归更高效,并且,我没过多久就想到了第一种写法。 所以「另一种写法」并非没有意义,那么没有意义的是没有意义地用多种写法吗?这个也不好说,比如关于这个循环你是用 for 还是 while 的问题。。。 |
16
bombless 2015-11-25 04:09:48 +08:00 via Android
来我大 Rust 阵营吧。最近有人提议加三目运算符,因为和 Rust 原有的 if-else 结构功能一样而被狠狠批评了一番
|
17
iugo OP |
19
C1ara 2015-11-25 12:20:55 +08:00
脾气真好 换成 Linus 大概就是[你这个代码写的 shit 一样还敢放出来安利!]
能看懂是一回事 怎么写又是另外一回事啦 强行安利是挺烦的 尤其对层主这种渣来说_(;3> |
20
robertlyc 2015-11-25 13:52:08 +08:00
适合独裁 不适合普世
|
21
ttph1oc 2015-11-25 14:01:00 +08:00 via Android
上班的话是必须得商量着规范一下、以直观和简单为最重要的参考的,毕竟因为代码上的沟通拖慢业务进展,会直接影响到雇主的赚钱效率,良心上有愧。自己玩的话就随便搞啦,尾递归生成器组合子怎么难懂怎么整。
|
22
Technetiumer 2015-11-25 16:41:55 +08:00 via Android
「听好儿子,要提出目标,但不可盲目追随它」
「我明白了爸爸,就像 Python 那样提出『只采用唯一正确的方法』那样的目标,实际上却存在 2 、 3 版本的不兼容」 「住口!」 「 urllib 和 urllib2 」 「住口!!!」 |