什么是Dart中使用的包命名约定?

时间:2014-01-28 09:11:33

标签: dart dart-editor

是否有Dart包的命名约定?是否有可能描述模式的文档?我无法确定包含多个单词的包名称的命名约定。例如,我应该使用placeViewPlaceViewplace_view还是其他什么?

5 个答案:

答案 0 :(得分:7)

Pubspec格式文档name section中记录了这一点。

  

它应该全部小写,用下划线分隔单词just_like_this。坚持使用基本的拉丁字母和阿拉伯数字:[a-z0-9_]并确保它是有效的Dart标识符(即不以数字开头且不是保留字)。

     

尝试选择一个清晰,简洁且尚未使用的名称。

答案 1 :(得分:4)

似乎没有它的约定,但大多数时候,我看到lowercase_words_with_underscore被用于库和包。

对于包内的库,有些人还使用点进行分组,例如my_package.lib_1my_package.lib_2

我想这都是个人喜好。

答案 2 :(得分:4)

所有包约定都记录在pub.dartlang.org上。特别是包命名约定记录在the pubspec format page

答案 3 :(得分:1)

我才发现这一点 https://code.google.com/p/dart/issues/detail?id=5094

  • 包名称遵循命名约定(有效的Dart标识符,不与任何保留字冲突,全部小写)。

答案 4 :(得分:0)

您只能以小写形式创建flutter项目,并且项目名称之间不能有空格,并且避免添加特殊字符。 请按照以下步骤操作,您不会收到任何此类错误。

"ProjectName" is not a valid Dart package name.


From the [Pubspec format description](https://www.dartlang.org/tools/pub/pubspec.html):

**DO** use `lowercase_with_underscores` for package names.

Package names should be all lowercase, with underscores to separate words,
`just_like_this`.  Use only basic Latin letters and Arabic digits: [a-z0-9_].
Also, make sure the name is a valid Dart identifier -- that it doesn't start
with digits and isn't a reserved word.