为什么没有一种万能且通用的编程语言呢?

2021-10-21 16:23:33 +08:00
 onice

Web 开发用 PHP,Java,Node.js

基础设施用 C/C++

网页设计用 HTML,JS,CSS

数据库用 SQL 。

为什么不发明一种万能的编程语言,我只需要学一门语言就能做所有的事情。

这可能吗?

目前 Python 有这种趋势,但还是无法全面覆盖,比如移动端的 App 开发。

17093 次点击
所在节点    程序员
166 条回复
PureWhiteWu
2021-10-21 16:25:34 +08:00
为什么没有一个万能且通用的人,什么都能做到最好呢?
ZHenJ
2021-10-21 16:25:44 +08:00
没有银弹
LokiSharp
2021-10-21 16:26:40 +08:00
有了啊 C# 啊
Chad0000
2021-10-21 16:27:15 +08:00
你应该说目前 C#有这种趋势,都已经包括了移动端 APP 啦。
Chad0000
2021-10-21 16:31:44 +08:00
dotnet.microsoft.com ,看看官方说法:A developer platform for building all your apps 。
imkerberos
2021-10-21 16:32:02 +08:00
有啊, 汇编.
AoEiuV020
2021-10-21 16:36:23 +08:00
很多东西不是好和坏能够概括的,
同样一个特点,有人觉得是优点,有人觉得是缺点,
觉得是缺点的人就可能选择不用这门语言,另外开发一门语言解决这个“痛点”,
其他有同样看法的程序员就跟上了也用新语言,
程序员割裂了直接导致不同语言的生态不一样了,自然就能划分出哪些语言擅长什么,实际上是这门语言的主流用户擅长什么,
hongweiliuruige
2021-10-21 16:37:01 +08:00
这不就是 js 吗,,atwood 定律:所有能被 js 实现的应用终将被 js 实现,,
kop1989
2021-10-21 16:38:56 +08:00
其实现在哪个语言都差不多是“万能”的,只是在某个产品领域是否被认可,是否流行的区别而已。
qiayue
2021-10-21 16:44:23 +08:00
有万能的语言,文字就是,你用文字把你的需求描述清楚,别人能帮你开发产品。
masterclock
2021-10-21 16:45:23 +08:00
定义一门语言 Ring,把过去、现在、未来一切语言都作为祂的 DSL 。
onice
2021-10-21 16:46:41 +08:00
@Chad0000 问下.NET 是像 Java 那样是免费的吗?看了下官网,跟 Java 差不多,也有自己的 Runtime 。
是不是上了微软的.NET ,全套都得用微软的东西了,操作系统,数据库,云。
simple233
2021-10-21 16:50:36 +08:00
突然想到了 js...
dajj
2021-10-21 16:53:29 +08:00
如果不够抽象,就封装一层。 既然不能有万能的语言,那么找好几个程序员,楼主主要对程序员下命令就行。
轻松扩展支持更多语言,岂不美哉
yixiang
2021-10-21 16:53:57 +08:00
haxe 了解一下?可以编译成 JavaScript, C++, C#, Java, Python, Lua, PHP 。

死亡细胞就是这玩意写的。
Vegetable
2021-10-21 16:56:06 +08:00
实际上你说的中国话就是。

严格来说,所有人们使用的编程语言都是自然语言的子集。

你觉得没有只是因为你抽象的层次不够。当然这么说就有点抬杠的意思了,你实际上想问的,我觉得是:「传统编程语言为什么难以做到适应所有的场景」

这是因为不同场景的需求不同,语言作为一个工具,必然有其擅长工作,比如菜刀可以切菜,也可以切水果,但是人们还是发明了水果刀。瑞士军刀能切菜也能切水果,但是没有谁家厨房或者果盘里放的是瑞士军刀对吧?

工具的功能存在取舍,一味的加特性,去适配更多的场景,损失的就是易用性。同时,当一个工具的功能足够多时,可能会出现另一个情况:不同人群都使用的其中的部分功能,大家互相没有交集,vb 和 c#都属于 dotnet,那你说他们还算一种编程语言吗
roundgis
2021-10-21 16:57:44 +08:00
@onice .net 現在是.net foundations 在打理
signalas1
2021-10-21 16:59:40 +08:00
javacript
Chad0000
2021-10-21 16:59:52 +08:00
@onice 是啊完全免费,而且是 MIT 协议,免费得比较彻底。现在 .net 已经真正跨平台了,不用依赖于微软自家的产品,我这边一般都部署在 Docker 中然后跑在 linux 上了。也不一定非要在 Windows 下开发。而且 C#除了 APP 还有手游还有 WebAssemply,貌似是其他语言不大好 Cover 的方向,哈哈。
signalas1
2021-10-21 16:59:55 +08:00
javascript

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

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

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

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

© 2021 V2EX