做 web 开发,如果要在 php,node.js ,python,Go 语言选一个,那么选谁呢? ( c#和 java 就不考虑了)
像我在乎的话,
第一是生态,
第二是开发效率,比如语法糖。例如函数式编程,不要像 java8 一样啰嗦,java8 的函数式编程相对 c#的委托和 js 是很啰嗦的,不能直接把变量当方法调用。
第三,是开发环境是否方便安装,比如像 jdk 和.net framework,点击安装文件,点击下一步按钮,等待安装完成就可以。ide 根据可视化界面部署,创建开发项目是否方便
第四是打包部署方便性,打包既可以用命令行,也能用 ide 方便打包项目。而部署像软件一样点击可执行文件部署,或者是把部署命令写成脚本文件与打包的文件放在一起,点击即可部署。
1
sleepm 2020-06-05 14:39:06 +08:00
go
|
2
Junjunya 2020-06-05 14:41:44 +08:00 4
PHP 或者 go 。非要选一个的话,推荐 PHP 天下第一
|
3
raincode 2020-06-05 14:42:27 +08:00 2
nodejs
|
4
rimutuyuan 2020-06-05 14:44:32 +08:00
自己做东西随便选,但你列的这四个三个动态语言一个静态,肯定是静态语言好安装部署,直接可执行文件了
|
6
agdhole 2020-06-05 14:49:34 +08:00
go node
|
7
Trim21 2020-06-05 14:50:51 +08:00 via Android
猜你用的 Windows
后面三个都能用 scoop 安装( PHP 不了解) |
8
iamverylovely 2020-06-05 14:52:44 +08:00
asp perl
|
9
musi 2020-06-05 14:52:59 +08:00 via iPhone 1
js 一把梭,不管你后端用啥前端 js 是没跑的。开发环境 vscode webstorm 看你喜欢用哪个,打包部署用 docker 问题不大
|
10
Jacky23333 2020-06-05 14:54:16 +08:00 via Android
go
|
11
namelosw 2020-06-05 14:55:56 +08:00 2
除了 PHP 都挺好
|
12
mitu9527 2020-06-05 14:56:23 +08:00 14
PHP 。现实就是 Web 开发服务端是 Java 和 PHP 的天下,如果不考虑 Java,那就剩 PHP 了。其他语言就算了,嚷嚷着多少年干掉 PHP 什么的,结果自己都不成气候。早有 Python,后有 NodeJS,最近又换成了 Go,结局都是一样的,再过两三年 Go 也会过了风口,你会发现 Web 开发服务端主流还是 Java 和 PHP 。
|
13
wangyanrui 2020-06-05 14:58:28 +08:00 1
PHP 和 Java 活了这么多年了,为什么没有被人搞掉,值得思考呀
|
14
starlion 2020-06-05 14:59:26 +08:00 2
第一当然是 PHP,做中小项目,快速,简单。如果以后业务扩展了,一部分可以转到 golang 或者 java,如果项目能够发展起来的话。
|
15
starlion 2020-06-05 15:01:54 +08:00
如果你想学习,golang 可以看看这个学习系列: https://github.com/jiujuan/go-collection - -!, 哈哈哈!
|
16
cmdOptionKana 2020-06-05 15:02:58 +08:00 1
小项目,这些都差不多,都能胜任,完全看个人经验和喜好。
大项目的主语言在 Go 、c#和 java 里面选,而 php,node.js ,python 可以拿来辅助,但不能用来做主导。 |
17
MarkLeeyun 2020-06-05 15:03:04 +08:00
@mitu9527 同意,适用领域不一样吧。。java 和 PHP 用来做 web 开发还是王者。大规模的用 java,小规模的用 php.
|
18
black11black 2020-06-05 15:07:42 +08:00 2
@mitu9527 有一说一,确实。个人计算机普及这么多年了,先是电脑,后是手机,说要干掉计算器,结果自己都不成气候,你看买菜大妈算账还是用计算器。可以得出结论计算器远优越于计算机,等过两年手机过了风口,你会发现卖菜大妈还是用计算器按账
|
19
black11black 2020-06-05 15:15:42 +08:00
另外认真评价楼主说这几点的话,关于第三四点,到都 0202 年了,你列出的所有语言都能满足。
第一点的生态方面我以为主要是开发过程中代码复用程度的多少,而非市场占有率的多少。node 和 python 前者主要依托前端程序员的生态,后者主要依赖....这个说不好,反正做什么工作或多或少都会用到点 python 就是了。go 在生态方面打输 第二点开发效率,语言描述能力方面 python 最强,这是社区形态导致的历史遗留产物,但运行速度 python 最慢,经过适当优化后勉强摸到 node 的背后,被 go 吊着打。你怎么取舍呢? 楼上一堆说小项目用 php 撸的,祝你们前程似锦。 |
20
mitu9527 2020-06-05 15:17:25 +08:00 2
@black11black 感觉你对 PHP 意见很大,是受过 PHP 的伤害么? PHP 语言和生态本身还可以,差的是圈子的整体水平,所以何来计算器一说。除了 Java 整体上还算不错,其他的那几门语言哪一门不都有自己的问题,Python 的性能问题,Js 的面向对象问题,而且 Js 后端这块自己天天都在折腾,最近不是一堆人要用 deno 换掉 node,Go 语言起步比较晚,但是生态上积累的还不够,这都是事实啊。
|
21
NCZkevin 2020-06-05 15:17:50 +08:00
go 开发部署都很方便,但是生态确实一般,个人开发小项目建议 python 或者 go 吧
|
22
q8164305 2020-06-05 15:19:08 +08:00 via Android 2
js 一把梭
|
24
fangdown 2020-06-05 16:05:43 +08:00 1
推荐 nodejs,pm2 部署方便
[深圳 /长沙] 腾讯云前端社招~~急招!!!联系我内推,微信同号 |
25
liuyibao 2020-06-05 16:06:34 +08:00
@black11black 你这个渣渣,没事又搞语言之争。
|
26
QlanQ 2020-06-05 16:07:42 +08:00
@black11black 计算器和手机的例子咋算的?功能都不一样,怎么存在谁取代谁?
PHP 的开发效率,人员成本 还是很有优势的,不能光考虑语言的,开发成本和时间对于公司很重要 为啥会对某一种语言意见这么大? |
27
ziyeziye 2020-06-05 16:08:00 +08:00
php, go
|
28
iminto 2020-06-05 16:12:59 +08:00
首先,排除一个最低分,PHP 出局。
|
29
wellsc 2020-06-05 16:15:57 +08:00
js 啊,啥都能干
|
30
linxb 2020-06-05 16:16:22 +08:00 1
PHP 用 laravel 框架,开发效率真不是盖的
|
31
runtu2019 2020-06-05 16:27:49 +08:00
首先排除 php,其他优缺点还好,弱类型真的是硬伤,涉及到计算严谨的地方一堆转换变量类型代码,要不然容易出莫名其妙的问题,使用框架应该会好点。
生态首推 java 和 php 开发效率和打包都要的话,最符合的应该是 netcore 了,打包贼方便全平台通用,可以打成独立包执行文件,运行环境什么的根本不需要 如果是开发 api 的话就 netcore,前端是网页的话还是 php 比较合适 |
32
HanMeiM 2020-06-05 16:37:56 +08:00
觉得 PHP 弱类型是硬伤的,可以开严格模式,必须自己手动转类型,再配合上参数类型声明,能解决大部分弱类型语言的问题
|
33
ben1024 2020-06-05 16:40:13 +08:00
推荐下 PHP,有 Composer 的管理的新版框架还是比较舒服,当前 PHP 性能还是很好的,长连接的场景弱一些。
|
34
silov 2020-06-05 16:46:28 +08:00
你是选自己的学习技术栈,还是给公司做技术选型?
|
35
Rekkles 2020-06-05 16:47:45 +08:00 1
PHP + Laravel + Laravel-s + 数不尽的 composer === 开发周期巨短,性能也不错。
|
36
ShundL 2020-06-05 16:47:55 +08:00 1
只要有 PHP 存在的话题,鄙视链就会开始工作,没办法,PHP 在鄙视链的底层,很 LOW 。
但它目前的占有量还是巨大的,web 开发方面尤其是网页开发,php 应该是上手最快的,几天的学习你就能开始写东西了,虽然可能 bug 满天飞,代码如屎。 php 的环境 win 上简单点儿直接安装个 phpstudy,自带 apache/nginx 、mysql 和 php 多个版本。linux 上安装个 lnmp 一键环境包,然后就可以撸了。 |
37
nextvay 2020-06-05 16:52:47 +08:00
体验生活?还是生存?
体验生活都无所谓 生存那就不一样了 PHP,高级工程师的话,面试几乎都是后台了且工作机会都很少 Go,目前好多公司都转 go 了,所以我是 PHP 跟着换工作转 Go 了,开发起来比 PHP 慢一些,比 Java 更慢一些 Java,生态很好,大公司都在用,霸主地位 Python,生态也还好,大数据、运维用的多一些,web 开发少一些吧 以目前的我来说,如果有 Go 给 30k,Java 给 25k 的 offer 的话,我选 Java,以后就业面更广 |
39
rioshikelong121 2020-06-05 16:55:52 +08:00 2
.NET core
|
40
annielong 2020-06-05 17:00:19 +08:00
web 开放没有 c#和 java,只能选 php,其它根本不用考虑。
|
41
wangyzj 2020-06-05 17:03:35 +08:00
你要看你的坐标来选择
|
43
qq7790586 2020-06-05 17:04:51 +08:00
看甲方,叫你用 asp 你也得用。
|
44
lepig 2020-06-05 17:05:18 +08:00
楼主前 3 点说的不就是 PHP 嘛, 老油条表示 第四点 也很 OK 哈哈哈哈
|
45
zzzmh 2020-06-05 17:05:52 +08:00
没有 java 猛男落泪
|
46
herozzm 2020-06-05 17:08:11 +08:00 via Android
go 做后端 php 做前端套模板啥的
|
47
qloog 2020-06-05 17:09:34 +08:00
go 吧
|
48
qW7bo2FbzbC0 2020-06-05 17:11:11 +08:00
小项目,python + bottle.py 尽量一个文件搞定
|
49
ShundL 2020-06-05 17:13:12 +08:00
就非得分出个一二三来吗? 楼主你自己都去看看这几门语言的语法,自己看喜欢哪种风格就用哪种,不存在用了这种就会走上人生巅峰用了那种就会吃不上饭。
可以都学 |
51
HENQIGUAI 2020-06-05 17:25:22 +08:00
大 Java 不香么
|
53
helionzzz 2020-06-05 17:40:18 +08:00
@ztxcccc 毕竟 laravel 帮 sy 精简了不少东西了,而且中文资料已经很丰富了。直接上 sy 学习曲线太陡了,现在好多了,sy2 的时候中文资料也就是个官方手册的部分汉译版
|
55
wzw 2020-06-05 17:57:50 +08:00 via iPhone
用了很久的 Python,但是我在用 go 了
|
56
dongisking 2020-06-05 17:59:02 +08:00
在吃 PHP 饭,以后打算吃 GO 的饭,Java 吃不下啊(太多人吃了,想吃但是没优势)
|
57
fiypig 2020-06-05 18:01:00 +08:00
不知道 go 跟这三比,是高兴呢 ,还是高兴呢
|
58
Seanfuck 2020-06-05 18:27:16 +08:00 via iPhone
做 web 开发的话,当然选 php 。不要听上面那些语言鄙视者的话(码农思维),所有语言都是个工具,谁能简单快速完成任务谁就是最好的!
|
59
abcbuzhiming 2020-06-06 07:20:28 +08:00 1
PHP,虽然我不喜欢这东西,但是这东西是为 web 而生的
1.生态,PHP 就是为 web 而生的,你要说在 web 这块的生态谁能和 PHP 较劲,那就只剩下 Java,其它都一边去,对,我说的就是 nodejs,go,python, 2.开发效率,你说的都满足,动态语言,不过你要小心重构火葬场问题 3 和 4 就不太满足了,基本上动态语言类都不太满足楼主的这两个要求 |
60
Roung 2020-06-06 07:32:55 +08:00 via Android
短期 PHP,长期 go
|
61
Hanggi 2020-06-06 08:15:57 +08:00
最好是都会一点,
go 用来写服务,nodejs 写前端和一些对性能要求不高的后端,python 作为工具语言写机器学习什么。 |
62
cmdOptionKana 2020-06-06 08:30:59 +08:00 via Android
如果只考虑楼主列举这几点的话,Ruby 无敌。
|
63
MrJing1992 2020-06-06 08:51:11 +08:00
前期,拼开发效率,认准 PHP + Laravel ;后期,拼稳定 /大规模协作,认准 Java + Spring 。
生态很重要生态很重要生态很重要 |
64
gejun123456 2020-06-06 08:55:17 +08:00 via iPhone
kotlin 啥都有 考虑下?
|
65
oahebky 2020-06-06 08:56:08 +08:00 via Android
个人觉得基本上看你开发的是什么样的 Web
比如说是电商类、公司网站、工具接口调用(翻译、OCR 、等等)、网页小游戏 or 在线工具(大部分能力由前端提供)、等等等 搞清楚了这些再选工具不是更合理吗? |
66
duan602728596 2020-06-06 09:06:04 +08:00 via iPhone
socket 的话直接 nodejs 吧,用 socket.io ,客户端(浏览器)内连兼容都给你搞好了
|
67
uxff 2020-06-06 09:22:33 +08:00
java 优先,从开发速度,包管理成熟度,代码规范,性能,生态,趋势及领域,就业机会,等等来说,都比其他语言有优势。
|
68
tanranran 2020-06-06 09:26:05 +08:00
kotlin 啥都有 考虑下?
|
69
uxff 2020-06-06 09:29:32 +08:00
从语言设计(语法,包管理,框架成熟度)上来说,java 和 c#都是挺好的语言。
比如包声明和管理,类声明和目录结构,等都规范性挺好。而 php 因为约束过松而被经常用坏。 c#只是应用平台限制在 win 平台。 |
70
SaigyoujiYuyuko 2020-06-06 09:49:40 +08:00
php + laravel + swoole / go / nodejs(没用过 打算试试看)
|
71
silvernoo 2020-06-06 10:11:44 +08:00
我选狗
|
73
jimyan 2020-06-06 10:15:03 +08:00
kotilin
|
74
cz5424 2020-06-06 13:54:19 +08:00
帮你排除 php,node.js
|
75
cz5424 2020-06-06 14:01:10 +08:00
排除 node.js 看这个 https://www.v2ex.com/t/678888#reply94
|
76
2kCS5c0b0ITXE5k2 2020-06-06 14:11:28 +08:00
考虑 websocket 那肯定排除 PHP 啊 那怕 PHP 用了 Swoole 写实现起来也很麻烦。不如用 Go 吧
|
78
p1gd0g 2020-06-06 14:50:07 +08:00
我们公司的事实就是 php 全部重构到 go 。。。
|
79
leohxj 2020-06-06 15:26:11 +08:00
|
80
xiaotianhu 2020-06-06 17:17:56 +08:00
只考虑个人不考虑团队的吗
|
81
Carlgao 2020-06-06 18:55:12 +08:00
觉得 PHP 只能做 Web 路有点窄,所以转 Go 中!!
|
82
MikeFeng 2020-06-06 21:25:58 +08:00
node>go>python>php
|
83
jss 2020-06-07 07:44:08 +08:00 via iPhone
你这就像 GTR(go) 跟电动车 自行车比一样,电动车插钥匙就开动,甚至,自行车钥匙都不要,它们能一样吗?
|
84
shellic 2020-06-07 07:49:05 +08:00 via Android
web 开发除了 Java 就是 PHP,别听别人瞎 JB 吹瞎 JB 黑;架构做不好用什么语言重构都得火葬场,代码是人写的,代码屎说明人屎不是语言屎;你去招聘网站看一下就知道一群吹这个黑那个的都是搁那打嘴炮;当然你如果不用 Java 又瞧不上 PHP 那选 Go 吧,至少这两年在吹 Go,招人应该不会太难,靠不靠谱就不知道了,毕竟很多都是半瓶子水从别的语言转过去的。
|
85
newtype0092 2020-06-07 11:18:38 +08:00
@p1gd0g 老哥多讲讲呗,因为什么问题重构,怎么规划的,重构完解决了多少,开发人员怎么安排的等等。。。
|
86
JaguarJack 2020-06-07 12:35:36 +08:00 via iPhone
PHP 。楼上很多都是扯犊子。php 写的💩的人写啥都是💩。和语言一点关系没有
|
87
p1gd0g 2020-06-08 09:05:27 +08:00
@newtype0092 主要还是性能问题,我们这边两条类似的业务线,php 用的机器多一倍,还竞猜告警。
规划就是先改一部分接口,逐步迁到 go 。目前就是 php 和 go 同时在跑着。开发要求 php 和 go 都会。 |