在Linux下开发桌面程序

群里有人聊这个话题。俺就回忆了俺之前的一次开发。2018年左右,有个项目的终端是运行在centos下的。项目其实是 一个 云pacs。用了centos的一个很小的机器,作为终端进行dicom文件上传。项目的要求是这个centos的 有 web的管理工具,也要有桌面的管理工具。桌面的管理工具功能要多一些。当时就用了Lazarus进行Linux下的桌面程序开发。其实没啥特别的 ,控件还是那些控件 ,代码还是那些代码,和在windows下用delphi 开发桌面程序差不多。

以下是‌Delphi、Lazarus、CodeTyphon、QFLazarus、deepin-IDE‌五个开发工具的全方位对比表格:

表格

对比维度 Delphi Lazarus CodeTyphon QFLazarus deepin-IDE
‌开发主体‌ Embarcadero(美国商业公司) 开源社区国际团队 基于Lazarus二次开发(国内推广适配) 国内开发者(秋风)定制 统信软件(国内深度团队)自研
‌授权方式‌ 商业付费,社区版免费(有商业使用限制) 完全开源免费(GPL/LGPL,无商业限制) 开源免费,预打包组件商业/非商业均可使用 完全开源免费(无限制) 完全开源免费(GPLv3)
‌核心语言‌ Object Pascal Object Pascal/Free Pascal Object Pascal/Free Pascal Object Pascal/Free Pascal 原生支持多语言,需插件扩展Pascal
‌默认组件库‌ VCL(Windows)+FMX(跨平台) LCL(原生跨平台组件库) LCL+预集成上千第三方组件 LCL(针对信创优化) 无原生Pascal组件库,需依托LCL
‌信创适配‌ 原生支持国产Linux,但未专门针对国产CPU做优化 开源原生支持国产架构,但存在中文乱码/编译异常等bug 国内团队针对信创深度适配,支持全国产CPU+国产OS 专门针对信创开发,支持全国产CPU+国产OS,修复所有国产环境bug 全原生信创适配,支持所有国产架构与操作系统,自主可控
‌核心特点‌ 成熟稳定,IDE功能强大,编译速度快,商业组件生态丰富 开源轻量,兼容Delphi语法,原生跨平台编译 开箱即用,预配置全平台编译环境与海量组件,无需额外配置 专门修复Lazarus在国产环境问题,支持中文标识符,优化国内下载源 全栈多语言IDE,内置代码迁移工具,支持AI插件扩展
‌编译性能‌ 高度优化的原生编译器,编译速度极快,生成二进制文件效率高 Free Pascal编译器,优化能力略逊于Delphi,支持更多CPU架构 基于Free Pascal,和Lazarus编译性能一致 基于Free Pascal,针对国产架构做编译优化,性能略优于原生Lazarus 依赖外部Free Pascal编译器,编译性能和Lazarus一致
‌组件生态‌ 丰富商业组件库(TMS、DevExpress等),生态成熟 依赖社区维护免费组件,资源丰富但商业支持弱 预打包海量社区组件,开箱即用,不用手动找组件 保留Lazarus全组件生态,额外增加国内常用组件一键安装 支持Lazarus生态组件,需手动配置
‌中文支持‌ 官方英文,第三方中文汉化,不支持中文标识符 原生中文界面,但不支持中文标识符,存在部分乱码问题 原生中文界面,兼容中文标识符,部分优化 原生完美支持中文标识符、中文调试,解决所有中文乱码问题 原生完美中文支持,适配国内输入法
‌适用场景‌ 商业企业级快速开发,Windows平台桌面应用,对开发效率要求高的项目 开源项目,预算有限的跨平台Pascal开发,个人开发者项目 需要快速搭建全平台开发环境,依赖大量第三方组件的项目 信创环境下Pascal项目开发、原有Delphi/Lazarus项目迁移 全场景多语言信创开发,需要混合多语言的项目
‌信创合规性‌ 非国产自主可控,不符合核心领域信创合规要求 开源但非国内定制,部分场景可通过合规审核 开源国内适配,基本符合信创合规要求 完全开源国内维护,符合信创合规要求 完全自主国产可控,完全符合信创合规要求

补充说明

  1. ‌QFLazarus‌本质是Lazarus针对国内信创环境的定制发行版,核心功能和Lazarus完全一致,只针对信创做了bug修复和体验优化。
  2. ‌CodeTyphon‌是Lazarus的预打包增强发行版,核心基于Lazarus生态,主要优势是开箱即用,不用手动配置组件和编译环境。
  3. ‌deepin-IDE‌本身不是专门的Pascal IDE,是通用全栈信创IDE,需要通过插件才能支持Pascal开发,适合需要同时开发多语言的信创项目^原规划内容^。
相关推荐
牛马工作号3 小时前
Mosquitto + ACME:从 Docker Compose 部署到 TLS 证书自动续期与加载
运维·docker·容器
强哥聊算力6 小时前
《算力江湖·英伟达传奇》第七集:ChatGPT出现前夜,英伟达发生了什么?
服务器·人工智能·算法·ai·chatgpt·gpu算力
Initialize-le6 小时前
Nginx 504 超时、499 一堆?网关排查法
运维·nginx
砚凝霜8 小时前
【软考信息安全】第二十二章 Web服务器安全分析与增强——Apache与IIS
服务器·前端·安全
Android系统攻城狮8 小时前
Linux Gstreamer深度解析之gst_audio_ring_buffer_delay调用流程与实战(七十二)
linux·运维·服务器·gstreamer音视频·音视频进阶
快乐的韭菜根根9 小时前
ubuntu 安装slurm并配置
linux·运维·ubuntu
数字新视界9 小时前
机房动环监控提升运维效率
大数据·服务器·数据库·动环监控系统·动力与环境监控系统
U-Mail邮件系统10 小时前
自建邮箱服务器有哪些软件?三款主流邮件服务器软件推荐
运维·服务器
倒头就睡的小比特11 小时前
Linux基础指令3
linux·服务器
Smoothcloud润云11 小时前
PyTorch推理服务模型热切换与失败回滚实战:降低版本更新中断
服务器·人工智能·pytorch·python·深度学习·gpu