前置
flutter 并没有选择 js 作为其开发语言,而是选择了自家的 dart。
所以学号 dart 就很重要,如果你熟悉 ts 、 java 、c 等语言,那么 dart 对你来说就很容易!
函数
具名参数
一般语言中,方法调用不是 类似于这样吗: add(1,2),为什么在 dart 中我能看到这样的add(x:1,y:2)?
大多数语言的普通位置参数(Positional Parameters),如 add(1, 2),参数是按位置顺序传递的。
而在 Dart 中,还支持 函数的具名参数(named parameters)传递,用来提高代码的可读性和灵活性。
显然 后者书写方式,可以显式地为参数指定名称,让函数调用更加清晰,尤其是在参数较多或意义不明显时。
😊 总结:为什么使用具名参数?
提高可读性:当参数较多时,可以更清晰地知道每个参数的含义。
顺序无关:调用时参数的顺序可以随意。 add(y: 2, x: 1); // 也是合法的
可选参数支持:具名参数默认是可选的,但可以通过 required 指定为必填。
嵌套调用
Dart 支持将函数作为参数传递,Flutter 的 Widget 开发方式正是基于这一特性。
每个 Widget(如 Scaffold、AppBar 等)都是一个函数调用,接受其他 Widget 作为参数。
这种嵌套结构依赖于 Dart 支持将函数返回值作为参数传递,类似树形结构构建 UI。
😊 其实大多数编程语言(如 js、Python、Ruby)都支持函数嵌套调用,只不过在 flutter 中 dart 将这一特性使用的更频繁而已!