Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/http/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Class 项目结构中的词典_Class_Dictionary_Project_Structure - Fatal编程技术网

Class 项目结构中的词典

Class 项目结构中的词典,class,dictionary,project,structure,Class,Dictionary,Project,Structure,我正在结束一个应用程序,在这个应用程序中,我使用了很多字典类来存储函数和动作委托。我现在正在重构我的项目并清理代码。我的问题是,您将词典类放在项目结构中的什么位置?现在,它们位于调用类源文件中,但我想知道是否应该创建一个单独的源文件来存储我的所有词典。我希望这是足够的信息。如果不是,请原谅我。谢谢。通常,Dictionary类本身就是一个库,您的各种用户都会创建它的实例 如果需要的话,他们可能会对其进行专门化/子类化,但这种情况应该很少发生 也许你真的应该问自己“为什么我有多个字典类”我会用与代

我正在结束一个应用程序,在这个应用程序中,我使用了很多字典类来存储函数和动作委托。我现在正在重构我的项目并清理代码。我的问题是,您将词典类放在项目结构中的什么位置?现在,它们位于调用类源文件中,但我想知道是否应该创建一个单独的源文件来存储我的所有词典。我希望这是足够的信息。如果不是,请原谅我。谢谢。

通常,Dictionary类本身就是一个库,您的各种用户都会创建它的实例

如果需要的话,他们可能会对其进行专门化/子类化,但这种情况应该很少发生


也许你真的应该问自己“为什么我有多个字典类”

我会用与代码其余部分相同的方式组织字典;将相关功能分组在一起,并分离不相关的功能

此外,我将了解如何使用委派词典。如果您的使用模式始终是检索委托并立即调用它,那么我将使用“做正确的事情”方法将该行为包装到一个类中。然后,每个这样的类都可以用它所表示的域概念来命名

例如,如果您有一个将美国各州缩写映射到增值税计算的字典,那么您可以使用“计算增值税”方法将所有这些内容封装到一个类中,该方法将州代码和小计作为参数。事实上,它使用字典来查找正确的计算方案,然后成为一个隐藏的实现细节