为了账号安全,请及时绑定邮箱和手机立即绑定

Go拒绝未使用的依赖项的利弊

Go拒绝未使用的依赖项的利弊

Go
宝慕林4294392 2021-04-09 13:11:51
Google的新语言Go试图通过明确要求实际使用模块中列出的所有依赖项来简化依赖项管理。编译器将拒绝声明对模块有依赖性的模块,而不使用该模块的任何内容。包本身导入或不引用任何导出的标识符导入包都是违法的。我可以想到一些明显的优点(例如,更清洁的模块),但也许还有一些不明显的优点。我能想到的唯一缺点是,它有一个过于花哨的编译器,在重构过程中抱怨太多,但是也许还有更多?您是否有使用其他语言执行此操作的经验?这种方法的优缺点是什么?
查看完整描述

3 回答

?
阿晨1998

TA贡献2037条经验 获得超6个赞

不仅需要显式使用所有依赖关系,而且还必须使用所有变量。当您有未使用的变量时,编译器会给您错误。

他们很烦人。但这会使其他人感到高兴,因为他们可以获得干净的代码。

我认为Go设计师可能打算将Go成为很大程度上依赖于IDE的语言。


查看完整回答
反对 回复 2021-04-26
?
芜湖不芜

TA贡献1796条经验 获得超7个赞

如yuku所提到的,如果您拥有与Netbeans和Eclipse可以为Java媲美的IDE,那么您实际上不必关心这种事情。

右键单击空白处的小灯泡,然后选择“删除所有未使用的依赖项”。

对于未使用的变量,它们通常会带有弯曲的下划线,并且很容易发现。

唯一的区别是,与其他语言不同,除IDE之外,实际上编译器还会抱怨,但是无论如何,如果使用IDE,这将成为非问题。

在工作中,我们有一些编码策略,其中阐明了我们当然必须对其他语言做同样的事情(我们自己)。因此,我要说的是,这种类型确实有实际的应用程序。通过恕我直言,编译器应为开发人员提供切换此行为的选项。严格模式有人吗?


查看完整回答
反对 回复 2021-04-26
  • 3 回答
  • 0 关注
  • 275 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信