繁体   English   中英

为什么不使用所有进口?

[英]Why not use all imports?

我知道我可以导入包并访问许多已经编码的类,我可以使用它来制作我的程序。 但是,如果它们允许您访问许多不同的功能,为什么不直接导入它们呢? 我知道有成千上万的进口产品,我知道这样做是不常见的(我不知道有谁这样做,但也许我错了)但是为什么人们不只是将它们全部导入? 它会让程序太慢吗? 或者效率低下? 我只是好奇。 谢谢。

除了我能想到的速度之外还有几个原因:

  1. 查看导入列表可以快速显示正在阅读文件的人正在使用的内容。 如果您导入所有内容,则会失去该能力
  2. 会有名称冲突,会导致错误。 请参阅此问题以获取示例。
  3. 现代IDE使得按需导入包非常容易,因此无需提前导入所有内容

导入所有包将;

  1. 减慢你的程序,因为它保持每个包的所有类,函数等活着(=易于访问)
  2. 在使用相同命名空间(即相同的函数名称等)的包之间创建冲突,或者至少使最后加载的一个可用并使之前的那些被屏蔽
  3. 每次重启程序都要花很多时间
  4. 使用大量内存
  5. 由于上述原因容易崩溃

这个清单可以扩展到哪里。

它使您的代码无法读取,因为正在阅读的人看不到您的意图。请记住:“代码写入一次,两次可能更多,但数百次由某人读取。示例:

在Android SDK中,有些名称相同的类,但它们来自不同的包。 我认为这是GPS定位经理或其他什么。 无论如何......其他程序员可能会遇到困难,因为他需要思考或手动检查您使用的是哪个导入程序。

我不是一个高级程序员,但我猜测输出程序的大小可能会更大。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM