dart系列之:dart代码最佳实践

简介: dart系列之:dart代码最佳实践

目录



简介


每种语言都有自己的代码风格,这种代码风格是跟语言特性息息相关的。如果在编码的过程中遵循这种统一的编码规则,会给我们的业务带来非常多的便利。


同样的,对应dart而已,也有属于自己的编码风格,一起来看看吧。


命名规则


一般来说,这个世界上有三种命名规则,分别是UpperCamelCase,lowerCamelCase和lowercase_with_underscores.


UpperCamelCase表示的是驼峰格式,也就是首字母大写,其他的字母小写。


而lowerCamelCase也是驼峰格式,不同的是它的第一个单词的首字母是小写的。


lowercase_with_underscores则是将单词用下划线进行连接。


对于类,typedef,枚举这些类型,一般都使用的是UpperCamelCase模式:


class ClassRoom {}
typedef Predicate<T> = bool Function(T value);


对于类的实例来说,使用lowerCamelCase:


const classRoom = ClassRoom();


对于方法名来说,也使用lowerCamelCase:


void main() {
}


之前我们讲到了dart 2.7引入的extension,extension也需要使用UpperCamelCase:


extension StringCompare on String { ... }


对于libraries, packages, 目录和源文件来说,使用lowercase_with_underscores,如下所示:


library common_convert.string_convert;
import 'lib_one.dart';
import 'lib_two.dart';


如果要将import的lib进行重命名,则需要使用lowercase_with_underscores,如下所示:


import 'lib_one.dart' as lib_one;


对于某些回调函数中的参数,如果并没有使用到的话,则可以用_来代替:


futureOfVoid.then((_) {
  print('Operation complete.');
});


如果是private属性,则推荐在名字前面加上_,表示它是一个私有值。


import中的顺序



在dart中,我们需要使用到其他的package,一般来说我们在编码过程中并不会特别注意到import的顺序。


不过dart对于import的顺序也是有推荐的。


首先 “dart:”,需要放在所有其他的import之前:


import 'dart:html';
import 'package:bar/bar.dart';


而"package:" 需要放在内部项目引用之前:


import 'package:foo/foo.dart';
import 'util.dart';


如果需要导出的话,export需要和import区分开:


import 'src/foo_bar.dart';
export 'src/error.dart';


然后按照上面提到的顺序对具体的import按字母表的顺序进行排序。


格式化


对于dart来说,dart语言本身是不识别空格的,但是对于人类来说,需要通过空格来格式化代码,从而达到可良好阅读的目的。


为了统一格式,dart提供了dart format命令.


虽然dart format命令为你做了99%的工作,但是还有1%的工作是你需要自己做的 。


比如:一行不超过80个字符,所有的流控制语句都用大括号括起来等等其他一些要注意的工作。


总结



以上就是dart中的代码风格总结。

相关文章
|
8月前
|
Dart 编译器 API
Dart笔记:Dart 库
Dart笔记:Dart 库
206 0
|
1天前
|
Dart 安全 Java
Dart 简介
Dart 是一种针对客户端优化的语言,用于在任何平台上开发快速应用。 其目标是提供用于多平台开发的最高效的编程语言,并配备用于应用框架的灵活的执行运行时平台。
27 14
|
8月前
|
Dart JavaScript
Flutter - Dart 基础(数据类型)
【2月更文挑战第3天】
205 1
|
存储 Dart JavaScript
《深入浅出Dart》Dart库的使用和创建
Dart库的使用和创建 引言 在Dart中,代码重用和模块化可以通过库(libraries)和包(packages)实现。一个库就是一组代码,被一起打包为了实现一种或多种特定功能。一个包则是一种发布和分享Dart库的方式。在这一章,我们将详细介绍如何使用和创建Dart库和包,以及如何实现一个具有大数相加功能的库。 Dart库的使用
163 0
|
Dart 测试技术 JavaScript
《深入浅出Dart》Dart测试
单元测试和集成测试 Dart的生态系统提供了一个完善的测试框架来进行代码的单元测试和集成测试。以下是一些基本的测试知识。 Dart单元测试 单元测试是在软件开发中进行的最小单元的测试。在Dart中,我们可以使用内置的test包来进行单元测试。 安装测试包 首先,我们需要在pubspec.yaml中添加test的依赖:
179 0
|
Dart JavaScript 前端开发
《深入浅出Dart》Dart模块化
Dart模块化详解 在大型软件项目中,模块化是必不可少的,它可以帮助我们更好地组织和管理代码,提高代码的可读性和可维护性。在Dart中,模块化是通过库(libraries)来实现的。 库的定义与使用
139 0
|
Dart 编译器 索引
Flutter 基础 | Dart 语法
Flutter 基础 | Dart 语法
183 0
|
Dart 程序员 C++
Flutter 基础 | Dart 语法 mixin
Flutter 基础 | Dart 语法 mixin
139 0
|
存储 Dart JavaScript
Flutter(三)——一篇文章掌握Dart语言的用法(一)
Flutter(三)——一篇文章掌握Dart语言的用法(一)
386 0
Flutter(三)——一篇文章掌握Dart语言的用法(一)
|
存储 Dart 前端开发
Flutter(三)——一篇文章掌握Dart语言的用法(三)
Flutter(三)——一篇文章掌握Dart语言的用法(三)
273 0
Flutter(三)——一篇文章掌握Dart语言的用法(三)