我在某处读到有人可以在运行时访问配置值,但不能在设计时访问。在这种情况下,运行时和设计时有什么区别?
7 回答
设计时间是当有人在我们的 Word 文档和 UML 图上签字时欢呼“看起来不错!” 运行时是当我们执行我们的代码时,它会因可怕的崩溃和烧毁而失败。
像TDD这样的技术的优势在于,它将设计时间和运行时间之间的差距压缩到它们是同一事物的程度。这意味着当我们的设计被翻译成代码时,我们会得到即时反馈,这应该会带来更好的设计,并在我们的代码上线时减少尴尬。YMMV。
设计时间是您根据需求创建设计或创建一些 UML 图的时间。
运行时是您实现设计和运行代码的时间。
设计时间是你设计一些代码的时候
运行时间是你执行你设计的代码的时间
您是在谈论 .NET 应用程序吗?在这种情况下,设计时间可能意味着更具体的东西 - 当您的 GUI 出现在 Visual Studio 设计器中时。这为您提供了应用程序的工作视图,但它是在设计时环境中运行的。许多 .NET 控件都有一个DesignMode属性,允许您判断控件是否在设计时视图中运行。
运行时间是程序运行的时间。设计时间是设计程序的时间。
作为开发人员,您必须在设计时间(让我们把它理解为“你花在设计和开发应用程序的时间”,尽管这有点不正确)和运行时间(我理解为“时间”)之间取得理想的平衡。用户站着看着沙漏,等待他的重要报告被呈现。
过分关注“设计时间”,你可能会用完预定的编程时间,你的客户会退出合同,他会说你坏话,小猫会死。太少了,正如他们所说,你的程序会很糟糕。请记住,“运输是一项功能,您的程序应该具备”。
除非他们所说的“运行时”是“运行时”,而这完全是另外一回事。
设计时是指在开发过程中发生的过程,运行时是指在应用程序运行时发生的过程。
例如,在您的应用程序中硬编码的常量是在设计时设置的,例如...
// you need to recompile your solution to change this,
// hence it is said that its value is set at design time.
const string value = "this is set at design time";
而从配置文件中提取的配置值可以说是在运行时设置的。如...
// You do not need to recompile your solution to change this,
// hence the value is said to be set at runtime.
string value = ConfigurationManager.GetValue("section", "key");