例如 提到 Python 就必定是爬虫 /大数据处理 /深度学习,反之亦然。
前一段时间在某个物联网项目开发群窥屏的时候更是出现了“学 Go 以后就可以研究区块链,所以我们选 Go 作为后端语言”。
这种感觉很别扭,为什么爬虫一定得是 Py,NodeJS 不行吗。为什么提到 Py 就是深度学习,C/C++它不能做吗?你想做的话都可以啊。有人可能会说到编写效率的问题,这点上确实某些编程语言会快点,但是我觉得没必要认为就一定要是这个语言做啊。
个人认为不应该将某一种方法归为某一种语言最优,对于计算机程序而言,语言没有优劣之分,只有最后写出来的成品有。
P.S.这只是我个人的观点而已,可能有些极端。
感谢各位的批评与指教,再和朋友讨论之后我也明白了我自己对于这方面的认识还不够。
但是内心还有一个疑惑,为什么会有一些人认为某个语言只能做某种特定的事情?就比如说铺天盖地的Python学习广告一样,说得好像Python只能做深度学习/爬虫,我的一部分同学也是这样认为的(计算机系)
1
rogwan 2020-04-12 05:57:12 +08:00 via iPhone 9
语言只是核心,语言都有生态。开发者选择某个语言是作为完成项目的工具,当然要看工具的配套生态,你一定要说家轿能不能去越野?肯定可以。你还可以自己改装。那为什么不直接选越野车呢?
|
2
learningman 2020-04-12 08:45:51 +08:00 via Android
那你可以自己强行去写嘛,你用 c 写爬虫,从 socket 开始写吧
都这么说,是因为这些语言各自有擅长的地方,形成了各自的生态。你自己非要强行,也没人拦着你不是。 |
3
raymanr 2020-04-12 08:59:55 +08:00
还有就是有了相对固定的语言和接口的话,便于互相交流啊
比如统计学相关的,非得用 C 去写的话,同行可能看不懂啊 就像非要用 R 去写服务端脚本一样,其他后端的看了 R 写的后端脚本可能只有一个想法。。。 还有就是 js 这种,只有它才是所有浏览器都能跑 |
4
zhazi 2020-04-12 09:12:57 +08:00 via Android
要不怎么说国内软件开发领域比较弱呢,天天争论这个语言好那个语言好的无意义话题,不务实,facebook 也拿 php 做 web 这么多年也没说比 java 差多少。java 爬虫也未必比 python 差。
讨论语言的都是很可怜,没有格局,成不了气候。 |
5
yeshang 2020-04-12 09:30:45 +08:00
Python 就必定是爬虫 /大数据处理 /深度学习, 资源丰富
你可以试试 php 去开发深度学习 |
6
snnn 2020-04-12 09:33:47 +08:00 via Android
能用 c++以外的语言写 machine learning 的 engine 吗?不能。
我 06 年开始做爬虫,用的是 c++和 Perl |
7
stimw 2020-04-12 09:40:59 +08:00 via Android 3
说到朗朗,你第一时间不是想到钢琴家,难不成是 nba 运动员?...人家就是擅长弹钢琴,你非要他唱跳 rap 篮球都上,并不是不能做,而是做的没有坤坤好,为什么不让他专注弹钢琴呢?
|
8
wangxiaoaer 2020-04-12 10:12:00 +08:00 via Android
吃饭为什么要用碗,用盆装也行啊。
装水为什么要用水壶,用夜壶也行啊。 你是来抬杠的吧。 |
9
lscexpress 2020-04-12 10:22:19 +08:00
听出来了,楼主应该是一个计算机系的学生。为什么总有人,因为这些人就是这么做的。你去做啊,你用 c 去写爬虫啊(你要是有本事用汇编写去写啊)。别光说这个也可以做,那个也可以做,光说不做假把式。
|
10
charlie21 2020-04-12 11:56:04 +08:00 via iPhone
如果 99% 的当代网络爬虫使用者都用的 C 语言,那么 当代如果你要搞爬虫 你就会用 C 语言
因为当代搞这些领域的人们之中的大多数人就是用的这个语言。 如果你是用库,那么 大多数人用的库或者人数很多的人用的库,一定是 库很好用 / 很实用 / 保持更新 等优点,吸引 API caller 去用。 这些都是前人踩过的坑。 归根到底,就你一个聪明人,别人都是傻子,那么你可以用 php 搞大数据。“就你一个聪明人,别人都是傻子” 的领域,的确有,要么是科学家,要么是搞算法,绝对不会是 选什么编程语言这种入门级领域。 ---- 如果是搞科研,那么就不一样了。科研就要标新立异。归根到底,还是 API caller 的水,太浅,浅到不值得去标新立异,浅到不值得不从众 |
11
reedthink 2020-04-12 12:15:08 +08:00
因为为了站在巨人的肩膀上
|
12
jinsongzhao 2020-04-12 12:17:08 +08:00 via Android
这个问题和成长阶段有关。其实 c 语言可以做所有事情,为什么你不只学一个 c 语言呢?当你语言会得少时,你还没有剩余精力通过广泛涉猎来提高效率,这是打基础阶段。随着年龄大了,基础语言很熟悉了,又因为工作需要,会的语言多了,发现调用现有的开源库实现更快,而不同的语言里都有做得特别好的库,有了这些库,可以事半功倍,然后就会开始产生你遇到的质疑。到了后期阶段,又多了各种语言系统整合经验后,你可能哪个快速就用哪个了。最后终极阶段,你就想发明一种通吃各种领域的语言,创造你喜欢的生态,来困惑和磨练新人了。
|
13
Liyiw 2020-04-12 13:08:12 +08:00
说明楼主不是调包侠( dog
|
14
james122333 2020-04-12 13:59:14 +08:00
有没有人做决定了应用派的选择 有人做语言性质又相近自然选择不只一种 我也很不爽搞派别
但有人执意要其他人搬砖有什么办法 这样来看不要帮助他们让人搬砖是个好选择 只是楼主还是得透过应用证明自己 |
15
linvon 2020-04-12 14:59:25 +08:00
去纽约就一定要坐飞机吗? 坐火车不行吗?
|
16
penguinWWY 2020-04-12 15:38:15 +08:00
说的好,建议楼主拿 C++做一遍爬虫,或者拿 Node 写游戏引擎,看好你
|
17
JerryCha 2020-04-12 16:18:44 +08:00
楼主牛逼!
|
18
kios 2020-04-12 16:23:40 +08:00
@wangxiaoaer 话糙理不糙,哈哈哈
|
19
as9567585 2020-04-12 17:00:15 +08:00
因为很多语言在设计之初的时候,是面向特定领域的
|
20
23571113 2020-04-12 21:29:01 +08:00
你只在学校做过玩具吧
|