Flutter學習 簡單了解基本原理

2021-09-11 15:15:29 字數 770 閱讀 7451

flutter是谷歌的移動ui框架,可以快速在ios和android上構建高質量的原生使用者介面。與react native不同,flutter重寫了一套跨平台ui框架,開發語言使用dart,渲染引擎採用谷歌的skia跨平台圖形庫實現,在最大程度上保持不同平台的一致性體驗,使用dart語言執行效率也比js高。

flutter還提供了material(android) & cupertino(ios) 兩套ui元件以適應不同平台的ui需求。

一般編譯模式分為aot(程式執行前編譯),jit(程式執行時編譯)。

flutter

在debug模式中,使用kernel snapshot,對應jit模式,將dart**生成標記化的源**,執行時編譯,解釋執行,並且支援亞秒級的熱過載;

斷點除錯可以發現在/flutter/packages/flutter_tools/lib/src/run_hot.dart中呼叫restart方法,restart方法中呼叫_reloadsources方法

future_reloadsources()
參考:

flutter架構主要分三層,framework(框架),engine(引擎),embedder(嵌入器)

注:參考flutter官方文件

Flutter學習 基本型別 修飾

const 編譯時常量,在編譯時確定,不能修改,類中只有靜態成員才能用const修飾 final final常量只能被初始化一次,這個值可以在執行時確定 當final修飾的是乙個引用時,只是引用的值不能被改變,而引用指向的物件的屬性如果不是常量的話是可以被任意改變的 final值必須被初始化,但是這...

Flutter學習 初識 Flutter

需要注意的資料夾 資料夾用途 android android 平台相關 iosios 平台相關 libflutter 相關 存放原始碼的地方 test 用於存放測試 pubspec.yaml 配置檔案,一般存放一些第三方庫 也可以簡寫 scaffold 是 material design 布局結構的...

Flutter 基本布局

本篇部落格大致介紹了通過flutter實現一些簡單的頁面布局,官方的參考文件 首先,專案的入口如下,後面的所有操作都是對container變數進行更改 import package flutter material.dart class override widget build buildcont...