大家好, 我是一名菜鸡前端,在接触了vue、react、meteor前端框架,egg、nuxt、next、koa、express服务端框架,从早期的table布局到div+css,flex,网格。适配方案从百分比到rem再到的vw。hbuilder的jsbride,cordova让h5拥有原生应用的能力,小程序原生到小程序跨端 Taro,uniapp 小程序跨平台能力,# electron,tauri 让js+html+css拥有桌面端应用的能力 除了原有的功能外,一直在似乎跨平台,跨设备是目前这些技术方案变革不变的主题。
那么有没有一个技术原本就可以大部分实现这些能力呢? 根据 flutter中文网 介绍flutter 似乎提供了上面所说的响应式,访问设备的原生功能
而跨平台相关则在 dart 官网给出介绍
dart 起步
初始一看挺像java的
点开文档可以看到有14个基础类目
经典开头
hellword 这个没什么特别的 输出不在时前端的console.log 变成print
void main() {
print('Hello, World');
}
有个问题就是后面的(;)一定要写
单双引号似乎是一致的表现
变量
似乎与js的var没有什么不同 可以是任意类型
let 与 const
没有let 这个类型 const 正常使用还是表示常量
看了这个解释我想问 final 和const 有哈区别这说的啥意思
- final变量的初始值可以在编译时确定,也可以在运行时确定,const变量的初始值只能是编译时确定的值
- const修饰的List集合任意索引不可修改,final修饰的可以修改
- 两个值相同的final对象会在内存中重复生成,而const不会
undefined 和 null
可以看到null 是正常的undefined是不能运行的
js 中有明确定义null和undefined 两种类型
文档中没有特别的标明
只看到一行关于null的解释
严格相等
严格相等这事在dart中不好使
type
类型判断dart中使用runtimeType;