哪种语言编写的程序转成可执行文件比较方便(exe / binary file) ?

2023-07-04 00:23:01 +08:00
 aim467

想写一些小工具,主要是基于命令行上进行操作的工具,想问问大家哪个语言来写比较方便

13507 次点击
所在节点    程序员
159 条回复
pkoukk
2023-07-04 17:38:08 +08:00
go 最合适,编译简单,产物体积小,跨平台交叉编译很容易
beixiao
2023-07-04 17:41:03 +08:00
用下来还是 go 最方便
nikenidage1
2023-07-04 17:42:06 +08:00
我发现 V2EX 上大家对 .net / c# 的信息很滞后
.net / c# 现在完全可以做到跨平台、原生编译、无需运行时、冷启动快、占用内存低、单文件 exe 等等特性,且不需要什么特殊操作。

可以参考我之前实验性写的跨平台带 UI 的小软件
https://www.v2ex.com/t/952603
someonedeng
2023-07-04 17:46:23 +08:00
go , rust 学习成本高(已经会的话当我没说)
monkeyWie
2023-07-04 17:53:43 +08:00
必然是 go 啊,交叉编译体积又小
xz410236056
2023-07-04 18:22:38 +08:00
golang 官方自带工具,转各个平台的 app ,单个程序,运行不要任何环境
xz410236056
2023-07-04 18:25:36 +08:00
@someonedeng #104 go 有啥学习成本。。3 分钟入门
shyangs
2023-07-04 18:27:52 +08:00
tabtoy[1] 用 Golang 寫的,5MB.
fd[2] 用 Rust 寫的,1MB.
Locale Emulator[3] 用 C# 寫的,1MB.
NoClose[4] 用 AutoHotkey 寫的,500KB.
PageFileUsageMonitor[5] 用 VB6 寫的,60KB.


[1] https://github.com/davyxu/tabtoy
[2] https://github.com/sharkdp/fd
[3] https://github.com/xupefei/Locale-Emulator
[4] https://www.dcmembers.com/skrommel/download/noclose/
[5] http://www.standards.com/ThisAndThat/PageFileUsageMonitor.html
yanue
2023-07-04 19:02:00 +08:00
推荐 node 的没有运行环境怎么跑?
dw2693734d
2023-07-04 21:50:22 +08:00
go
tangtang369
2023-07-04 22:17:47 +08:00
go 肯定是最 ok 的 完全的跨平台 随便切换
chrawsl
2023-07-04 22:22:52 +08:00
c#大法好
SenLief
2023-07-04 22:24:21 +08:00
小型的脚本直接撸 python ,python 自己用写起来小工具是真的舒服,如果是打包分享的,可能还是 golang 更好一些。
RRRSSS
2023-07-04 22:28:30 +08:00
Go rust
ViriF
2023-07-04 22:35:46 +08:00
https://github.com/vercel/pkg ( Nodejs ,个人体会很好用)
https://pyinstaller.org/en/stable/ ( Python ,个人体会比较难受,尤其是涉及 Nvidia/LibTorch 等的库文件的时候,启动简直折磨,对硬盘空间也有要求)
lhbc
2023-07-04 23:13:12 +08:00
为什么没人提 php ?
lcj2class
2023-07-04 23:21:00 +08:00
H0H
2023-07-05 02:34:18 +08:00
@idealhs 你咋不直接说自己水平太差呢?做个 exe 小工具,就非要换个语言把现有提供各种库的生态完全抛弃?小工具写着写着要转成大工具持续维护了,此时需要各种功能时没有第三方库难道自己发明轮子? 99%的人真有能力发明轮子?

C++写 exe 的确最适合,为什么市场占有率一直上不去?要不你继续吹吹?

拿语言论高下的,不就是一个没入门的菜鸟嘛
H0H
2023-07-05 02:40:19 +08:00
@lujiaxing 我做的启动器是支持自动下载并安装特定版本的 JRE 的,这样 exe 程序本身就可以保持的很小,一般都小于 20M ,在大公司就可以通过邮件直接分享。winrar 自解压包怎样轻松实现这个功能?

更不用说,启动器还可以实现 Mutex 单进程运行功能,程序执行过程中被二次启动时可以直接拒绝运行,一般定时任务中很适合。还可以监控最大运行时间等等。
H0H
2023-07-05 02:43:10 +08:00
@c3de3f21 拿各种编程语言论高低的,不就是没入门的菜鸟嘛,怎么好意思求别人?要不你吹吹高大上的?是不是非要 C++写一下才显水平? Electron 这种 js 开发套个 Chrome 浏览器的,比 JRE 还低效,但迅雷用起来也没感觉有多么难以接受啊,要不你来批评批评?

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

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

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

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

© 2021 V2EX