ToB企服应用市场:ToB评测及商务社交产业平台

标题: Tauri教程-底子篇-第二节 Tauri的核心概念上篇 [打印本页]

作者: 傲渊山岳    时间: 2025-1-11 11:35
标题: Tauri教程-底子篇-第二节 Tauri的核心概念上篇

   “假如结果不如你所愿,就在灰尘落定前奋力一搏。”——《夏目友人帐》
“有些事不是看到了希望才去对峙,而是由于对峙才会看到希望。”——《十宗罪》
“维持近况意味着空耗你的努力和生命。”——纪伯伦
    Tauri 技术教程 * 第四章 Tauri的底子教程  
  第二节 Tauri的核心概念(上篇)  前言

本章节阐述了Tauri技术中的核心概念内容,明白起来较为苦涩,但却为Taui应用的概念部分,相识这些概念后你将对Tauri的技术原理有一个较深的明白,为你后续开发应用和进行插件的开发奠定底子,初次明白较为困难,有肯定的编语言程底子,可较为轻松,本章节分为上下2个部分,分别阐述了Tauri的五个核心部分

上部分介绍了Tauri的骨架布局、进程模子、应用大小配置,下部分介绍了Tauri的ipc(通信模子)和安全相关的概念和配置。
学习和明白建议:咋一看,若隐若现,再回眸,两不相识,相逢时,原是弹丸之丘!
推荐

Koi技术教程-Tauri底子教程-第二节 Tauri的核心概念 下
Koi技术教程-Tauri-第二章 Tauri的业务架构
Koi技术教程-Tauri-第三章 Tauri的搭建情况
一. 概述

Tauri的核心概念是开发职员利用Tauri进行编程的核心,相识Tauri的核心概念不光有助于我们更好的明白它的运行原理,也为我们在实际的业务开发中使用它提供支持。它的核心概念体系包含一下五个部分:

官方文档:https://tauri.app/concept/
二. Architecture 布局

本章节我们将相识到Tauri的布局及生态体系。
Tauri 是一个多语言的通用工具包,它使得我们借助rust及webview来构建计算机步伐,它使用“wry”和“tao”来完成对操作体系进行体系调用的繁重工作,通过 js api和rust api来制作 WebView OS应用步伐。
1. Tauri 架构图


此图来自官方文档。
由图中内容,可以看到Tauri由2大内容构成“upstream crates” 和 “core ecosystem” 构成。下面我们来相识下它们的详细内容。
1. updtream crates

Tauri 应用的 updtream crates 主要包含2个构成部分,Tao 和 wry

2. core ecosystem

core 是Tauri的核心内容,它包含6个内容,分别如下:

其中 tauri-runtime、tauri-macros、tauri-utils 构成了 tauri。
tauri 是将全部的内容最后那个何在一起的主要包。它将运行时、宏、实用步伐和 API 整合到一个最终产物中。它tauri.conf.json在编译时读取文件以引入功能并进行应用步伐的实际配置,它在运行时处理脚本注入(用于 polyfill/原型修订),托管用于体系交互的 API,甚至管理更新过程。
3. 常用的工具库和插件

工具库

插件库:

4. 插件

Tauri 插件指南,这是重点,后续会专门说明
一般来说,插件是由第三方编写的(尽管可能有官方支持的插件)。插件通常做三件事:
三. Process Model 流程模子

1. 流程概述

在 GUI 应用步伐的早期,通常使用单个进程来执行计算、绘制界面并对用户输入做出反应。通常一个应用步伐组件的故障会导致整个应用步伐瓦解。多进程模子的设计使得应用步伐在不同的进程中运行不同的组件。这可以更好地利用当代多核 CPU,并创建更安全的应用步伐。一个组件的瓦解不再影响整个体系,由于组件被隔离在不同的进程中。假如某个进程进入无效状态,我们可以轻松地重新启动它。
别的,我们可以使用最小特权原则,来为每个进程分配最少的执行权限(刚好够它们完成工作)来限定潜在毛病的影响范围。
2. 核心流程


此图来自官网

3. WebView 进程

核心进程自己并不渲染实际的用户界面 (UI);它会启动 WebView 进程,利用操作体系提供的 WebView 库。WebView 是一个类似于浏览器的情况,可执行 HTML、CSS 和 JavaScript。
现在,Tauri 在 Windows 上使用Microsoft Edge WebView2,在macOS 上使用WKWebView ,在 Linux 上使用webkitgtk。↩
4. 应用启动后的进程


四. App size

您可以通过修改或者引入依赖库的方式调整您的应用步伐的二进制文件大小,如:cargo.toml 中
  1. [profile.dev]
  2. incremental = true # Compile your binary in smaller steps.
  3. [profile.release]
  4. codegen-units = 1 # Allows LLVM to perform better optimization.
  5. lto = true # Enables link-time-optimizations.
  6. opt-level = "s" # Prioritizes small binary size. Use `3` if you prefer speed.
  7. panic = "abort" # Higher performance by disabling panic handlers.
  8. strip = true # Ensures debug symbols are removed.
复制代码
以下是一些常用到的配置参考:

接读:Koi技术教程-Tauri底子教程-第二节 Tauri的核心概念 下

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。




欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) Powered by Discuz! X3.4