Programming languages 类、包、名称空间和模块之间有什么区别?

Programming languages 类、包、名称空间和模块之间有什么区别?,programming-languages,terminology,Programming Languages,Terminology,我正在尝试确定,对于定义可重用对象的文件或文件组,最合适/通用的术语是什么。我经常听到的术语是类、包、名称空间、模块、单元和组件,但我不确定它们的区别是什么,也不确定它们是否是不同语言的公认术语。通常,这些术语在许多不同的技术中使用 名称空间和包有点类似,因为它们通常是存储类的相对路径。大多数情况下,包或命名空间与文件所在的路径相同,但语法可能不同 类是一种数据结构,一种逻辑上执行特定操作的代码单元。在适当命名的类中分解代码,将它们放入适当命名的包/名称空间中,只要查看项目的结构及其包含的文件,

我正在尝试确定,对于定义可重用对象的文件或文件组,最合适/通用的术语是什么。我经常听到的术语是类、包、名称空间、模块、单元和组件,但我不确定它们的区别是什么,也不确定它们是否是不同语言的公认术语。

通常,这些术语在许多不同的技术中使用

名称空间和包有点类似,因为它们通常是存储类的相对路径。大多数情况下,包或命名空间与文件所在的路径相同,但语法可能不同

类是一种数据结构,一种逻辑上执行特定操作的代码单元。在适当命名的类中分解代码,将它们放入适当命名的包/名称空间中,只要查看项目的结构及其包含的文件,就可以找到正在搜索的代码。这种架构问题是开发易于维护的软件的挑战之一


然后,当您的软件变得太大时,您可能希望将代码分解为模块。这基本上意味着,与包含所有源代码的大型项目不同,您将提取链接到某个功能的所有类。例如,如果您有搜索引擎,您可能希望将该功能的所有代码隔离到另一个模块中,该模块基本上是另一个文件夹/项目。这样,您还可以将您的搜索引擎重新用于另一个完全不同的项目,而无需复制,从而使代码加倍。。。如果您想在两个项目中都对搜索引擎进行更改,这将节省大量维护工作。

您正在寻找指向维基百科的链接吗?