我一直在使用dart项目来练习dart程序,我想知道为什么有两个文件夹bin和lib都可以包含dart文件。我做了一些研究,他们说bin文件夹是用于创建控制台应用程序,但这对我没有帮助。我对控制台应用程序没有一个清晰的概念。如果我只是为了练习dart语言而使用dart项目,我为什么要为这些文件夹费心呢?
bin
lib
xxhby3vn1#
bin文件夹是放置项目的公共入口点的地方,用于将项目编译为控制台应用程序的可执行二进制文件。
如果你只是在练习dart代码,你可以把它留在那里,只使用lib文件夹,只要确保你在bin中有一个文件,与你创建的项目/包同名(在pubspec.yaml中定义),还有一个main()函数,这样你就可以使用dart run了。
pubspec.yaml
main()
dart run
lib文件夹用于存放您编写的所有其他代码。您可以在其中添加项目的所有类文件,作为bin文件夹中的文件调用的附加代码。或者您可以仅使用lib文件夹为其他应用编写包/库,而无需使用bin文件夹。
但是bin文件夹可以为每个命令都有一个文件,每个文件中有一个main()。例如,您可以在其中包含bin/sum.dart和bin/subtract.dart,然后将它们编译为可执行的二进制文件(sum.exe和subtract.exe),将其用作命令行/控制台程序。要运行每个文件而不编译,只需使用dart run :COMMAND(在上面的示例中,dart run :sum)。如果您想了解有关它的更多信息,请参阅说明如何编译以及如何编写具有命令行工具的包的文档
bin/sum.dart
bin/subtract.dart
dart run :COMMAND
dart run :sum
hfyxw5xn2#
bin文件夹通常用于存储可执行的Dart脚本,而lib文件夹用于存储可供其他Dart脚本或程序使用的库代码。bin文件夹中的可执行脚本可以直接从命令行运行,而lib文件夹中的代码则用于导入并供其他Dart代码使用。来自https://chat.openai.com
2条答案
按热度按时间xxhby3vn1#
bin
文件夹是放置项目的公共入口点的地方,用于将项目编译为控制台应用程序的可执行二进制文件。如果你只是在练习dart代码,你可以把它留在那里,只使用
lib
文件夹,只要确保你在bin
中有一个文件,与你创建的项目/包同名(在pubspec.yaml
中定义),还有一个main()
函数,这样你就可以使用dart run
了。lib
文件夹用于存放您编写的所有其他代码。您可以在其中添加项目的所有类文件,作为bin
文件夹中的文件调用的附加代码。或者您可以仅使用lib
文件夹为其他应用编写包/库,而无需使用bin
文件夹。但是
bin
文件夹可以为每个命令都有一个文件,每个文件中有一个main()
。例如,您可以在其中包含
bin/sum.dart
和bin/subtract.dart
,然后将它们编译为可执行的二进制文件(sum.exe和subtract.exe),将其用作命令行/控制台程序。要运行每个文件而不编译,只需使用
dart run :COMMAND
(在上面的示例中,dart run :sum
)。如果您想了解有关它的更多信息,请参阅说明如何编译以及如何编写具有命令行工具的包的文档
hfyxw5xn2#
bin文件夹通常用于存储可执行的Dart脚本,而lib文件夹用于存储可供其他Dart脚本或程序使用的库代码。bin文件夹中的可执行脚本可以直接从命令行运行,而lib文件夹中的代码则用于导入并供其他Dart代码使用。来自https://chat.openai.com