看到很多人说 Python 好学, 简单, 脚本语言, 如何如何几个小时就能撸代码, 我的问题是......

2017-06-27 15:33:57 +08:00
 eyp82

你们是认真的吗?

本人熟悉(不敢说精通) C/C++, Java, Python, Go, 了解一些 Ruby. 以我的感觉, 越是像 Python 这种动态语言, 其实越难以驾驭, 各种在静态语言看来类似黑魔法的东西层出不穷(Ruby 元编程之类更甚), 一不小心就掉坑里. 我可以放心的让学了很短时间的工程师动手写 Java, 却不太敢让他们马上就写 Python. 至少静态语言编译器可以阻止大部分低级错误.

感觉 Python 对开发人员的要求比静态语言要高, 更加适合牛人单打独斗, 或者组成三两个人的敏捷小项目组, 每个人都是独当一面可以控制全局那种, 一般的水一点的程序员用 Python 很容易就掉坑里爬不出来.

所以, 我心里有个大大的问号, 那些说 Python 如何简单如何脚本语言一两天就能学会的, 你们是真的用它开发过严肃的项目, 还是只是自己没事写了个 shell script 就能搞定的小脚本?

没有喷谁的意思, 只是好奇.

10331 次点击
所在节点    程序员
46 条回复
airqj
2017-06-27 15:38:14 +08:00
python 要是不容易上手易用
现在数据挖掘,神经网络之类的都不会用 python 了
regicide
2017-06-27 15:39:03 +08:00
上手快易理解和开发项目是两码事啊哥们
大部分人拿 python 也就做个脚本
eyp82
2017-06-27 15:46:04 +08:00
@airqj 开发那些库的人更多是看中它的抽象能力更高,不用跟语法细节搏斗,而不是容易入门吧,都是些 CS 的博士科学家之类,他们会觉得哪个语言他们不好上手吗
lovedebug
2017-06-27 15:47:41 +08:00
上手容易一般也就精通困难,之前看过 Python 的学习曲线,后期陡升。
halfcoder
2017-06-27 15:49:25 +08:00
动态语言一时爽,______________。
cashew
2017-06-27 15:51:53 +08:00
和 JavaScript 比,Python 好多了。不黑。
ipwx
2017-06-27 15:55:12 +08:00
喜欢 Python 的人,应用场景和 Java 派系完全不一样好吧…… 无论是 Data Scientist,还是一对开源小项目,哪个符合软件工程的流程了?
jmc891205
2017-06-27 15:55:31 +08:00
你刚学会 C++、Java 语法的时候就能开发严肃的项目了吗?
哦对了 Java 应该可以哈哈
vicalloy
2017-06-27 15:56:23 +08:00
初级程序员依葫芦画瓢就可以了,那些黑魔法他们不知道也写不出来。
缺少类型检查是各类动态语言普遍存在的问题,这点确实“不方便”。
Python 3.4 之后开始加入类型注解了。
lightening
2017-06-27 15:58:50 +08:00
主用 Ruby。静态类型检查确实可以防止一些低级错误,但也仅仅是一些低级错误而已了。C++的黑魔法才真是黑……
levn
2017-06-27 15:59:06 +08:00
项目是有多严肃啊
SuperMild
2017-06-27 15:59:07 +08:00
大概意思是容易使用别人写好的库,py 和 js 一样,一知半解也可以用各种库完成一些任务
mengzhuo
2017-06-27 16:00:41 +08:00
1. 游戏、web 正式项目都用 Python 写过(十分严肃,有 UT,回归,冒烟)。后来离职后有人想用 Java 重写一遍,结果代码量实在是太大(叫你们不用元编程哈哈哈)放弃了。
2. 脚本趁手的也可以

利益不相关,现在在写 Go
xiaxiaocao
2017-06-27 16:03:09 +08:00
@vicalloy Python 3.0 加了 function annotation, 3.5 增加了 type hints, 3.6 增加了 variable annotations,都跟 3.4 没关系
SuperMild
2017-06-27 16:07:26 +08:00
事实上 Python 是一个非常“庞大”的语言,语言特性非常多,而且还不断做加法,加入各种新特性,把 Python 本身的全部特性学一遍都要花很多时间。

相对来说,Golang 反而是难得一见做减法的语言,Golang 本身非常小,特性少,语言本身更容易学,但是用起来就需要一定编程经验了,比如对一个字符串进行 sort 操作(例如把“ dbca ”排列成“ abcd ”)都没有现成函数,要自己想办法解决。
airqj
2017-06-27 16:07:53 +08:00
@eyp82 你认为搞数据挖掘神经网络的都是科学家吗……
还有不少非 cs 出身的
BingoXuan
2017-06-27 16:09:50 +08:00
开发项目和掌握语言是两回事。Python 当脚本确实蛮好用,真正做项目其实和其他语言没差别。
kanchi240
2017-06-27 16:10:19 +08:00
管他是 script 还是严肃的项目,撸了给我钱就行。。纠结个毛线
vicalloy
2017-06-27 16:26:25 +08:00
@xiaxiaocao 不好意思,记错了。 把 Type Hints 记成 3.4 了。
zjsxwc
2017-06-27 16:27:59 +08:00
编码一时爽,重构火葬场。。。233333

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

https://www.v2ex.com/t/371412

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

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

© 2021 V2EX