flutter规范

本文详细介绍了Dart编程语言中的代码规范和最佳实践,包括命名约定、文件组织、导入顺序、格式化规则以及静态资源的放置位置。遵循这些指导原则有助于提高代码的可读性和维护性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

总结

  • 身份标识
    • 类型命名使用UpperCamelCase。
    • 库和源文件命名使用lowercase_with_underscores。
    • 导入包重命名命名使用lowercase_with_underscores。
    • 其他标识符命名使用lowerCamelCase。
    • 常量命名建议使用lowerCamelCase。
    • 超过两位的首字母缩略词和缩写词按普通单词处理。
    • 不要使用前缀字母
  • 顺序
    • “dart:”包的导入顺序在所有其他包之前(dart sdk的内库)。
    • “package:”包的导入顺序在其他相对路径之前(flutter内的库)。
    • 建议外部的“package:”包导入顺序在其他包之前(第三方库)。
    • 在所有导入后,再在独立的部分中导出。
    • 每部分按字母顺序排序。
  • 格式化
    • 请使用dartfmt格式化代码。
    • 考虑更改代码以使其更易于格式化。
    • 避免单行超过80个字符。
    • 请对所有流程控制结构使用花括号。
  • 静态资源放置位置
    • lib/assets文件夹下放置静态图片资源(图标命名用icon_name,背景图片用bg_name)。
    • lib/components文件夹下放置自定义组件包。
    • lib/pages文件夹下放置项目页面。
    • lib/utils文件夹下放置常用方法(如http请求的request.dart文件)。

身份标识

标识符在Dart中有三种风格。

  • UpperCamelCase 大写字母开头的驼峰式,每个单词的第一个字母大写,包括第一个字母。

  • lowerCamelCase 小写字母开头的驼峰式, 第一个字母小写,即使它是首字母缩略词,其余每个单词的第一个字母都大写。

  • lowercase_with_underscores 只使用小写字母,即使是首字母缩略词,每个单词用_分隔

类型命名使用UpperCamelCase

包括类,枚举,typedef定义的函数名、注解名。

当你的注解是常量时, 使用lowerCamelCase命名。

库和源文件命名使用lowercase_with_underscores

某些文件系统不区分大小写,因此许多项目要求文件名全部为小写。使用分隔字符允许名称仍以该形式可读。使用下划线作为分隔符可确保名称仍然是有效的Dart标识符,如果该语言以后支持符号导入,则可能会有所帮助。

导入包重命名使用lowercase_with_underscores

导入包用as进行重命名时用lowercase_with_underscores。

请使用命名其他标识符lowerCamelCase

包括类成员,顶级定义,变量,参数和命名参数。

常量命名建议使用lowerCamelCase

超过两位的首字母缩略词和缩写词按普通单词处理

大写的首字母缩略词可能难以阅读,而多个相邻的首字母缩略词可能会导致模糊的名称。例如,给定一个以HTTPSFTP开头的名称,无法判断它是指HTTPS FTP还是HTTP SFTP。

为了避免这种情况,首字母缩略词和缩写词像普通词一样处理,除了两个字母的首字母缩略词。(像ID和Mr.这样的两个字母缩写仍然像文字一样大写。)

不要使用前缀字母

匈牙利命名法中使用缩写开头的小写驼峰命名法时,是因为当时编辑器无法很好帮助理解你的代码,这样命名法能够很好的帮助你去理解代码。现在dart语言中,可以很好的理解声明的类型、范围、可变性和其他属性。

顺序

为了使文件的序言保持整洁,我们有一个指令应该出现的规定顺序。每个“部分”应该用空行分隔。

“dart:”包的导入顺序在所有其他包之前

“package:”包的导入顺序在相对引用路径之前

建议外部的“package:”包的导入顺序在其他包之前

如果你有自己的“package:”包导入,请独立地置于外部包之后。

在所有导入后,再在独立的部分中导出

每部分按字母顺序排序

格式化

请使用dartfmt格式化代码

在AndriodStudio右键单击.dart文件,然后选择“ 使用Dart样式重新格式化”

考虑更改代码以使其更易于格式化

避免单行超过80个字符

请对所有流程控制结构使用花括号

这里有一个例外:一个if没有else子句的语句,其中整个if语句和内容都在一行。在这种情况下,如果您愿意,可以不用括号。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值