Skip to content

Commit 56d6846

Browse files
committed
flutter
1 parent 895de01 commit 56d6846

File tree

2 files changed

+30
-1
lines changed

2 files changed

+30
-1
lines changed

SUMMARY.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@
3434

3535
* [Reveal(UI调试神器)](https://revealapp.com)
3636

37-
## [flutter(真香)](https://github.com/BinaryParadise/FlutterDemo)
37+
## [flutter](advanced/flutter.md)
3838

3939
## TODO
4040

advanced/flutter.md

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
# Flutter
2+
3+
[Demo](https://github.com/BinaryParadise/FlutterDemo)
4+
5+
## 基础知识
6+
7+
### 与其它跨平台的区别
8+
9+
`flutter`重写了一整套包括底层渲染逻辑和上层开发语言的完整解决方案;这样不仅可以保证视图渲染在Android和iOS上的高度一致性,在代码执行效率和渲染性能上也可以匹配原生App的体验。
10+
11+
### 热重载原理
12+
13+
flutter热重载主要继续State, 也就是常用setState方法,修改属性后会执行相应的build方法
14+
15+
源码: `/usr/local/flutter/packages/flutter_tools/lib/src/run_hot.dart`
16+
17+
### Widget、Element、RenderObject
18+
19+
- Widget是用户界面的一部分,并且是不可变的。
20+
- Element是在树中特定位置的实例。
21+
- RenderObject是渲染树中的一个对象,它的层次结构是渲染库的核心。
22+
23+
### isolate通信原理
24+
25+
isolate线程之间的通信主要通过port异步消息传来进行
26+
实例化过程:
27+
- 示例化isolate结构体
28+
- 在堆中分配线程内存
29+
- 配置port等过程

0 commit comments

Comments
 (0)