Dart编程语言中的符号表示法
1. 引言
Dart编程语言中的符号表示法(Notation)是理解其语法和语义的基础。这一章将详细介绍Dart语言中如何区分规范性文本和非规范性文本,以及如何使用EBNF(扩展的巴科斯-诺尔范式)来定义语法规则。通过学习这些内容,开发者可以更好地理解Dart语言的设计原则和使用方法。
2. 规范性文本与非规范性文本
Dart语言的文档分为两类:规范性文本和非规范性文本。规范性文本定义了Dart的语言规则,这些规则以当前字体呈现。非规范性文本则包括对语言设计决策的动机讨论、注释和未解决的问题等,这部分内容有助于读者更深入地理解语言背后的思想。
2.1 设计决策的动机讨论
设计决策的动机讨论以斜体字呈现,帮助读者了解为什么某些语言特性被设计成当前的样子。例如:
Dart语言中引入了词法作用域(Lexical Scope),这使得代码更加直观和易于理解。词法作用域意味着变量的可见性和生命周期取决于它们在代码中的声明位置,而不是它们的调用位置。
2.2 注释
注释用于解释或澄清规范中的内容,但与规范性文本重复。例如:
注意,虽然Dart支持动态类型系统,但在生产环境中使用静态类型可以提高代码的健壮性和性能。
2.3 未解决的问题
未解决的问题以当前字体呈现,这些问题在规范的作者心中尚未确定,期待在最终规范中被消除。例如: