这个问题很简单,但同时也很难理解。为什么我需要将Statefull Widget中的所有变量都标记为私有?当我声明一个变量时,我把它声明为private。
bool _isOpened = true; String _currentUserUID; ...
字符串但我为什么需要这个?我不从其他小部件访问这些变量。我不覆盖。我知道我的应用程序逻辑&完全保证了我的代码在所有小部件中的安全性。那么为什么我需要私有变量呢?使用私有变量和方法有什么影响吗?也许性能上的好处?
mzsu5hc01#
前缀_使变量在你所在的.dart代码文件中成为私有的。IDE(或者至少是我使用的VSCode)将能够告诉你是否正在使用该变量。它还告诉我,作为开发人员,我只需要查看我正在工作的代码文件即可查看此变量的更改。对我来说,所有重要信息都是重要的。当使用_前缀使方法私有时也是如此。这也是强烈推荐的。然而,恕我直言,这个问题涉及到一般私有变量的使用,所以这里有一个链接到一个更一般的问题和一组比我的https://softwareengineering.stackexchange.com/questions/143736/why-do-we-need-private-variables更好的答案。
1条答案
按热度按时间mzsu5hc01#
前缀_使变量在你所在的.dart代码文件中成为私有的。IDE(或者至少是我使用的VSCode)将能够告诉你是否正在使用该变量。它还告诉我,作为开发人员,我只需要查看我正在工作的代码文件即可查看此变量的更改。对我来说,所有重要信息都是重要的。
当使用_前缀使方法私有时也是如此。这也是强烈推荐的。
然而,恕我直言,这个问题涉及到一般私有变量的使用,所以这里有一个链接到一个更一般的问题和一组比我的https://softwareengineering.stackexchange.com/questions/143736/why-do-we-need-private-variables更好的答案。