天天看點

Flutter 基礎(一)入門

介紹

flutter 應用是使用dart語言開發的,作為一個跨平台架構,flutter非常像React Native ,

(1)比如flutter支援響應式程式設計和聲明式程式設計。但是和React Native不同的是,flutter不需要JavaScript橋接,打打提升了整個應用的性能和應用啟動時間,Dart是通過AOT技術取得了上述表現。

(2)另一方面,擁有JIT的Flutter 支援在開發期間,不需要從頭建構整個應用就可以重新整理ui,提高開發效率。

(3)flutter架構是建立在元件思想之上的,一切皆元件。在flutter中組建不單單指應用視圖,而是整個界面甚至是整個應用。

特點

跨平台性:Liunx Android IOS Fuchsia

原生使用者界面:它是原生的,體驗跟性能更好

flutter是完全免費、開源的

flutter具有120fps的超高性能,因為我們原生的渲染一般使用的是CPU渲染而flutter使用的是GPU渲染,也就是說flutter有可能比原生app渲染的更快。

這裡簡單說下flutter與React Native的對比,Reat Native是将ui通過RN自己的虛拟機DOM轉換為原生的ui,這樣的轉換對性能是有一定影響的,這也就是RN在list清單相關顯示方面的缺陷,但RN總體上性能還是可以的,而flutter在渲染技術上選擇了自己實作(GDI),flutter使用Skia 2D渲染引擎直接在GDI層面繪制頁面和控件,對系統的依賴降低到最低,提供更好的跨平台相容性和更高的性能。

環境搭建

參考:​​https://flutter.dev/docs/get-started/install​​

第一個應用

import 'package:flutter/material.dart'; //導入flutter推薦的ui元件,material樣式

void main() => runApp(MyApp());

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    // TODO: implement build
    return MaterialApp(
      title: "Hello flutter",
      home: Scaffold(
        appBar: AppBar(
          title: Text("hello world"),
        ),
        body: Center(
          child: Text("hello world"),
        ),
      ),
    );
  }
}
      

補充

繼續閱讀