猫哥课堂 ducafecat.com

flutter 代码编写建议

视频

前言

原文 https://ducafecat.com/blog/flutter-development-coding-experience-recommended

本文将会描述 Dart 语言编写中的技巧,这将有利于你的开发效率和代码健壮。

如果你想系统学习 Flutter 开发,请关注 https://ducafecat.com ,谢谢。

正文

Let’s dive in! 让我们深入了解一下!

不要使用 print 方法在 flutter 中打印任何内容

void main() { int a =10; /// 错误 print(a); }
void main() { int a =10; /// 正确 log('$a'); /// 或者 debugPrint('$a'); }

使用 log 或 debugPrint 方法在 flutter 中打印任何内容

不要使用三元运算符来比较空值。

void main() { String? name; /// 错误 String nameCopy=name==null?'Ankit':name; debugPrint(nameCopy); }
void main() { String? name; /// 正确 String nameCopy=name ?? 'Ankit'; debugPrint(nameCopy); }

只需使用 null 感知运算符来处理变量是否为 null。

如果该变量默认已经具有 null 值,则不要分配 null。

void main() { /// 错误 var name = user == null ? null : user.name; debugPrint(name); }
void main() { /// 正确 var name = user?.name; debugPrint(name); }

只需使用?运算符为已经为空的变量分配默认值。

当你想将一个数组数据添加到另一个数组时,不要使用 addAll 方法。

void main() { List<int> mainList = [4, 5, 6]; List<int> secondList = [1, 2]; /// 错误 secondList.addAll(mainList); }
void main() { List<int> mainList = [4, 5, 6]; List<int> secondList = [1, 2]; /// 正确 secondList = [...secondList,...mainList]; debugPrint('$secondList'); }

使用 Spread 运算符在列表中添加数据。

如果您知道变量的数据类型,请不要使用 var 关键字

void main() { /// 错误 var age = 25; const radius = 20.4; const list = ['A', 'B', 'C']; }
void main() { /// 正确 int age = 25; const double radius = 20.4; const List<String> list = ['A', 'B', 'C']; }

如果您知道要使用的值,请使用 data-type 而不是 decalring var。

当你想第一次初始化列表时,不要使用for循环来创建数据。

void main() { /// 错误 List<int> data = []; for (int i = 0; i < 100; i++) { data.add(i); } }
void main() { /// 正确 List<int> data = []; data = List.generate(100, (index) => index); }

第一次使用List类的generate方法初始化list。

不要使用动态类型返回任何方法或函数。

/// 错误 dynamic getName(){ return "Ankit Tiwari"; } /// 错误 getName(){ return "Ankit Tiwari"; }
/// 正确 String getName(){ return "Ankit Tiwari"; }

如果您知道方法的返回类型,请使用数据类型;

如果您知道变量的返回类型,请不要使用 var 关键字

void main() { /// 错误 var message = 'Hi'; }
void main() { /// 正确 String message = 'Hi'; }

如果您知道变量的返回类型,请使用数据类型;

不要检查 bool 值是否为 true,默认情况下它始终检查 true。

void main() { bool isCheck = true; /// 错误 if (isCheck == true) {} }
void main() { bool isCheck = true; /// 正确 if (isCheck) {} }

直接检查……!

不要使用 forEch 循环。

void main() { List<int> ids = []; /// 错误 ids.forEach((element) {}); }
void main() { List<int> ids = []; /// 正确 for (var element in ids) {} }

使用 for in 循环它更具可读性和方便性。

不要使用“+”运算符来连接字符串。

void main() { String m1 = "Hello"; String m2 = "How are you?"; String m3 = "Ankit!"; /// 错误 String message = m1 + m2 + m3; }
void main() { String m1 = "Hello"; String m2 = "How are you?"; String m3 = "Ankit!"; /// 正确 String message = '$m1 $m2 $m3'; }

使用 $ 符号而不是使用“+”运算符。

不要使用 length 来检查数组是否为空。

void main() { List<int> id = []; /// 错误 if (id.length == 0) {} }
void main() { List<int> id = []; /// 正确 if (id.isEmpty) {} }

使用 isEmpty 方法而不是检查 lengt==0。

小结

以上讲解了 Dart 语言编码的小技巧,希望对你在日常开发工作中有帮助。

感谢阅读本文

如果有什么建议,请在评论中让我知道。我很乐意改进。


flutter 学习路径


© 猫哥 ducafecat.com

end


Copyright 2023 ducafecat. All rights reserved.
微信: ducafecat, line: ducafecat,京ICP备2021009050号-3