Discuz! Board

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 733|回复: 0
打印 上一主题 下一主题

windows应用程序开发技术对比

[复制链接]

1228

主题

1996

帖子

7570

积分

认证用户组

Rank: 5Rank: 5

积分
7570
跳转到指定楼层
楼主
发表于 2023-1-6 18:58:45 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
https://log.csdn.net/qq_29334605/article/details/127208463

本人老前端一枚,因项目需要开发windows程序,所以调研了一下相关的技术,列表如下,仅供参考:

electron
就写html就行了,可直接在html的script里调用nodejs的api,没错!
1
官网

使用JavaScript、HTML 和 CSS 开发,门槛低
使用此技术开发的产品多,相对来说成熟,界面漂亮,网页能不漂亮么
Electron 基于 Chromium 和 Node.js,因为内嵌js引擎,打包体积大,大约100m+
代表产品 GitHub Desktop、Vs Code、WhatsApp、Postman
打包后打包为直接运行免安装的目录和一个大的exe文件
支持 win7+的系统,如果要支持 windows XP,就不行了
Tauri
核心是rust代码
1
官网

核心是Rust写的,打包的体积也比较小
但是需要 WebView2,windows11自带,别的需要自行安装,就这一条,我就直接放弃了
对windows来说,会打包成msi的安装文件
刚发布1.x版本,感觉没有electron成熟
React Native for Windows
react-native写windows程序
1
官网

同一套代码,可以跑在n个平台
react-native体系,react语法,开发过rn的入手成本低,项目目录除了ios、android多了一个windows目录
原生的体验,可以用c#写原生功能,js调用,和写移动端一样
微软官方支持
只支持 win11和win10
总结,感觉不太实用,除非是 rn一套代码,而且兼容性要求也不高的
python - beeware
BeeWare是一套工具和库,它们可以协同工作,编写跨平台的本地GUI Python应用程序
1
官网

开发语言是pyhton,python这个语言门槛低
打包体积也不大
界面不是很美观
用的不多,感觉
总结,适合python使用者开发
java - javaFX
适合java开发,开发桌面应用
1
性能不错,界面也尚可
兼容性也好,毕竟java跨平台
javaFX 有自己的css和接口(和一般的css差的挺多的),需要学习,成本高,不适合快速开发
这个技术,其实用的不是很多,弃了
原生开发 - winform
这就是最原始的开发windows程序的方法,装好vs之后,就可以开发了,语言选c#。
1
门槛低,C#语法和java很像,比较简单,可以直接拖拽元素比如文本、输入框到界面上,
虽然之前没做过,但是看看应该就可以上手
兼容性最强,几乎啥windows都行
代码包体积最小,几十K,也就是,当然没啥代码的情况下
界面嘛,不太好看,毕竟是老技术嘛
如果功能UI不复杂,而注重底层,可以选择
原生开发 -WPF
也是原生开发windows程序的,升级版,即windows presentation foundation,windows呈现基础,属于.net framework3.0,
是微软推出取代winform的产品,能做到分离界面设计人员与开发人员的工作。
1
2
界面漂亮,功能强大
门槛就高一些了,不适合直接上手的
WPF和winform最大的区别在于WPF底层使用的DirectX,
winform底层使用的是GDI+,所以WPF的图形界面上更胜一筹
————————————————
版权声明:本文为CSDN博主「胖虎6688」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_29334605/article/details/127208463

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|firemail ( 粤ICP备15085507号-1 )

GMT+8, 2024-4-20 19:45 , Processed in 0.065609 second(s), 19 queries .

Powered by Discuz! X3

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表