复习

2023-06-04  本文已影响0人  Hamiltonian

多元微积分


哈密顿算子,nabla算子、场论

梯度、散度、旋度与数量场,向量场之间的转换。

https://www.bilibili.com/video/BV19s41157Z4/?spm_id_from=333.880.my_history.page.click

https://www.bilibili.com/video/BV1a541127cX/?spm_id_from=333.880.my_history.page.click

transformer:从数学角度解释为什么用缩放点积会有更稳的梯度
https://zhuanlan.zhihu.com/p/371143022

雅可比矩阵
https://baike.baidu.com/item/%E9%9B%85%E5%8F%AF%E6%AF%94%E7%9F%A9%E9%98%B5/10753754?fr=ge_ala

计算机与科学


进程和线程的关系及区别,进程间如何通讯,线程间如何通讯

设计模式


依赖倒置(DIP)、控制反转(IOC)和依赖注入(DI)

https://blog.csdn.net/leila_W/article/details/90105192

简单工厂、工厂模式、抽象工厂、工厂方法
简单工厂:单一工厂决定初始化哪一个具体类,抽象产品接口,具体产品
抽象工厂:有抽象工厂、具体工厂、抽象产品接口、具体产品接口

Flutter


abstract class Widget的主要方法 80行代码

子类:StatelessWidget、StatefulWidget、ProxyWidget、RenderObjectWidget
1.createElement():工厂方法创建抽象Element
2.canUpdate(Widget oldWidget,Widget newWidget):判断Widget 能否用来更新Element,Widget是Element的配置
3.key()

abstract class Element 大概有1500行代码

子类:ComponentElement、RenderObjectElement
孙类:StatelessElement、StatefulElement、ProxyElement、LeafRenderObjectElement、SingleChildRenderObjectElement、MultiChildRenderObjectElement
1.widget作为Element的配置
2.reassemble:hot reload时重新构建时调用
3.markNeedsBuild: 将Widget标记dirty下一帧刷新
4.Widget get widget => _widget!;Element和Widget是一对一的关系
StreamBuilder与Setstate

abstract class RenderObject 大概2200行代码

https://www.jianshu.com/p/62508ad21be5

Notification和NotificaionListener的使用,原理【沿着Widget树向上冒泡】。
使用场景:自定义Notification和监听ListView的滚动

AbsorbPointer不会阻止点击事件向上冒泡,IgnorePointer会阻止点击事件向上冒泡

Listener可以监听原始点击事件

Flutter为什么能跨平台【OpenGL和C++】

Widget、Element、RenderObject的生命周期
1.Widget CreateElement
2.mount creatRenderObject
3.canUpdate 决定着Element的复用
4.Element调用deactiveChild
5.inactive->unmount
6.需要重新插入 通过GlobalKey

上一篇 下一篇

猜你喜欢

热点阅读