|
|
1
3
我认为这两种方法都更糟糕。我同意你对“new”令人困惑的感觉,但是“Application.interface.map”除了过于冗长之外,将来肯定会成为重构的噩梦。 我会避免任何类型的全局变量,将“大var”作为参数传递给任何需要它的人,并将其锁定在闭包中。
只要使用一个映射,“main”函数也可以是闭包。
当你决定使用多个映射时,你只需要重构这个主函数。 |
|
|
2
2
就设计而言,语法是无关紧要的。如果一段代码假设只有一个映射,那么在应用程序需要使用两个映射的那一天,需要重写这段代码。这一假设是否以“地图是通过
我同意更合适的类名是
设计这种映射的干净方法是将映射作为参数提供给所有使用它的函数(直接提供,或作为该函数可用对象的成员提供)。即使在页面上的任何给定时间都不会有多个映射,您可能仍然希望运行单元测试(这可能涉及创建 嘲弄 地图)。 作为记录,你同事的建议被称为 Monostate 模式,就对设计的影响而言,这在很大程度上相当于一个单件。 |
|
|
3
1
你同事的想法太疯狂了。在构造函数中隐藏一个单例是一件有害的、可怕的事情。 更重要的是,当你说:
而且,正如你所担心的,只要你真的有一个单例,不管它是如何实现的,你都会像有一个单例一样写作。 好的一面是,听起来你很有可能只生一个单身汉。在这种情况下,雅格尼适用,你应该做最简单的事情,现在可能工作,并担心如何修复它,如果它发生了,你需要。 |
|
|
glor · 如何在报价单中的r中使用全局变量 8 年前 |
|
|
Mabadai · 将一个int数组复制到另一个C++ 8 年前 |
|
infinite · 即使没有声明也在使用全局定义 8 年前 |
|
|
Rakesh · 全局变量值不反映在函数之间 8 年前 |
|
|
oneMoreDeveloper · Javascript全局数组声明 8 年前 |
|
|
Klayd Pro · 在c中使用本地指针调用并返回函数 8 年前 |
|
|
Rob Matthews · 为模拟信用卡应用程序颁发简单的唯一ID 8 年前 |