学习使用SwiftUI开发MacOS 应用-前言

前言

已经很久没有在CSDN上写文章了。
最近在做一个 MacOS App 的项目,在选用开发语言的时候尝试了很多方案,其中包括 (1)Electron  ,(2)JavaFX 及 (3)AvaloniaUI 方案. (因为我是没有系统学过obj-c的)
1)最开始的时候我选择 Electron,它的开发效率确实不错,也能基本完成开发任务,而 Electron 的缺点也比较明显,安装包过大(100M+),也因为非原生,所以在很多界面操作上有相应的限制,包括窗口打开等会有卡顿,而且软件启动慢,且运行的时候会启动很多个 chromium 进程,是一个选择但是不是最佳选择。
2)后来我又尝试使用 JavaFX 进行开发,JavaFX 这些年的发展,基本上想要什么效果都能实现,当然痛点也是需要客户安装java运行时(java11后还需要安装 javaFX的运行时),也可以通过javapackager 打包运行到安装包中,不过如果是写一些比较小的软件,这个安装包也会显得比较大(40M+),JavaFX 还有一个问题,会启动运行时,这运行时已启动也是200M内存以上,JavaFX 还可以使用GaalVM 编译成本机镜像运行不过也只是提升启动速度,安装包也没依然很大(60M+)。
3)最后我还是用了AvaloniaUI来尝试做了一个 demo , 在MacOS安装 .net core 的情况下,这个deme生成的应用程序并不大(5M+),但是尝试做AOT本地编译没有成功,所以我也不能要求用户在使用软件前先安装 .net core。

当然之前的项目我已经 JavaFX 交差了,不过我作为一个苦逼程序员对项目完美度的追求,所以就有了后面决定学习学习SwiftUI的这些过程,Swift这们语言我在很早的时候就有学过,而且学习这门语言其实也不难,和 js 有相似的语法结构。所以这里我就不去说这个语言本身了。
在使用 SwiftUI 之前我也简单尝试过 XIB StoryBoard, 不过最后还是选择学习 SwiftUI ,可能也是因为它也是一个趋势。无奈在学习SwiftUI 的过程中,发现 大多数教程都是如何开发IOS 的,而 MacOS App 的开发教程就比较少了 网络上开发MacOS 的教程多半都是 Obj-C 的,且官方的开发文档也非常不友好,不过好在大多数IOS的教程和MacOS是可以通用的,不同的可能也是使用的库不同。在缺乏各种教程的情况下,不断的碰壁和摸索,于是有一个想法,开一个专栏以记录整个学习过程。

我不是一个专业的MacOS App 开发人员,所以我也是从头开始学习如何去开发MacOS App 的应用,所以在这里可能会有很多概念上的理解可能会有些出入,在学习的过程中如果什么出入这纯属正常现象,希望大家包涵。
在很多官方的教程,或者其他第三方教程中其实有也有很多相应的学习资料,但是很多资料都没法达到产品预期的那种程度,我这里主要会通过一些比较常见的实例来展开学习,比如如何去使用及美化各种控件,排版布局,如果去使用资源,自定义控件,系统托盘等等相关的实现,至于 SwiftUI 的原理我这里就不会过多的阐述,我只会从一些项目产品中经常碰到的效果实现去学习。

如果有兴趣的朋友也可以和我一起讨论和学习。

先写一个 前言... 
后面不定时继续更新.....

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值