Sou um usuário front-end antigo. Como o projeto requer o desenvolvimento de programas Windows, pesquisei tecnologias relacionadas. A lista é a seguinte, apenas para referência:
elétron
就写html就行了,可直接在html的script里调用nodejs的api,没错!
- Desenvolvido usando JavaScript, HTML e CSS, o limite é baixo
- Existem muitos produtos desenvolvidos com essa tecnologia, que são relativamente maduros e possuem interfaces bonitas. Como as páginas da web podem não ser bonitas?
- Electron é baseado em Chromium e Node.js. Devido ao mecanismo js incorporado, o volume do pacote é grande, cerca de 100m+
- Produtos representativos GitHub Desktop, Vs Code, WhatsApp, Postman
- Após o empacotamento, ele é empacotado em um diretório que pode ser executado diretamente sem instalação e um grande arquivo exe.
- Ele suporta o sistema win7 +. Se você quiser oferecer suporte ao Windows XP, não funcionará.
Dificuldade
核心是rust代码
- O núcleo é escrito em Rust e o tamanho do pacote é relativamente pequeno.
- Mas você precisa do WebView2, que vem com o Windows 11. Outros precisam ser instalados por você mesmo. Acabei de desistir deste.
- Para Windows, ele será empacotado em um arquivo de instalação msi.
- A versão 1.x acaba de ser lançada e parece menos madura que o elétron.
Reagir nativo para Windows
react-native写windows程序
- O mesmo conjunto de código pode ser executado em n plataformas
- Sistema React-nativo, sintaxe react, baixo custo para quem desenvolveu rn, o diretório do projeto possui diretório windows além de ios e android.
- Experiência nativa, você pode usar C# para escrever funções nativas e chamadas JS, assim como escrever terminais móveis
- Suporte oficial da Microsoft
- Suporta apenas win11 e win10
- Em resumo, sinto que não é muito prático, a menos que seja um conjunto de códigos RN e os requisitos de compatibilidade não sejam elevados.
python - cuidado
BeeWare是一套工具和库,它们可以协同工作,编写跨平台的本地GUI Python应用程序
- A linguagem de desenvolvimento é python, e python é uma linguagem com limite baixo.
- O volume da embalagem também não é grande
- A interface não é muito bonita
- Não é muito usado, parece
- Resumo, adequado para usuários de python desenvolverem
java-javaFX
适合java开发,开发桌面应用
- O desempenho é bom e a interface é aceitável
- A compatibilidade também é boa, afinal java é multiplataforma
- javaFX possui css e interface próprios ( muito diferentes do css geral ), que requer aprendizado, alto custo e não é adequado para desenvolvimento rápido.
- Esta tecnologia, na verdade, não é muito prática, abandonada
Desenvolvimento nativo - winform
这就是最原始的开发windows程序的方法,装好vs之后,就可以开发了,语言选c#。
- O limite é baixo. A sintaxe do C# é muito semelhante à do Java. É relativamente simples. Você pode arrastar diretamente elementos como texto e caixas de entrada para a interface.
Embora eu nunca tenha feito isso antes, você poderá começar depois de tomar um olhar. - A compatibilidade mais forte, quase todas as janelas funcionarão
- O tamanho do pacote de código é o menor, dezenas de K, ou seja, claro, não há código.
- A interface não é muito bonita, afinal é uma tecnologia antiga.
- Se a IU funcional não for complexa e se concentrar na camada inferior, você poderá escolher
Desenvolvimento Nativo-WPF
也是原生开发windows程序的,升级版,即windows presentation foundation,windows呈现基础,属于.net framework3.0,
是微软推出取代winform的产品,能做到分离界面设计人员与开发人员的工作。
- Interface bonita e funções poderosas
- O limite é um pouco mais alto, por isso não é adequado para as pessoas começarem diretamente.
- A maior diferença entre WPF e winform é que o WPF usa DirectX na camada inferior, enquanto o
winform usa GDI+ na camada inferior, então o WPF é superior em termos de interface gráfica.