Questions tagged «design-patterns»

设计模式是解决软件设计中常见问题的通用可重用解决方案。当您对设计模式的实现有疑问时,请使用此标签来提问。请不要在有关文本模式匹配的问题上使用此标签。当在实现上遇到重磅问题时使用此标记-标记实现所使用的代码语言。

3
设计模式:异常/错误处理
是否有任何资源(网络或书籍)描述异常处理/错误处理设计模式? 关于如何编写简洁代码的文献很多,并且有很多书籍涵盖了设计模式。但是,我从未见过任何设计模式涉及在何处以及如何最好地处理错误以及如何最好地传播出现在低层函数中的错误,从而使抽象层上升的问题。

6
SyncRoot模式的用途是什么?
我正在阅读一本描述SyncRoot模式的书。表明 void doThis() { lock(this){ ... } } void doThat() { lock(this){ ... } } 并与SyncRoot模式进行比较: object syncRoot = new object(); void doThis() { lock(syncRoot ){ ... } } void doThat() { lock(syncRoot){ ... } } 但是,我不太了解这里的区别。在这两种情况下,似乎两种方法一次只能由一个线程访问。 这本书描述了……因为实例的对象也可以用于外部的同步访问,并且您无法控制类本身的形式,因此可以使用SyncRoot模式。“实例的对象”? 谁能告诉我以上两种方法之间的区别?

23
单身人士:好的设计还是拐杖?[关闭]
已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引用的形式回答。 6年前关闭。 改善这个问题 单例是一个备受争议的设计模式,因此我对Stack Overflow社区对它们的想法很感兴趣。 请提供您提出意见的理由,而不仅仅是“单字适合懒惰的程序员!” 尽管反对使用Singletons,但关于此问题的文章还是不错的: scienceninja.com:performant-singletons。 有人在上面有其他好文章吗?也许支持辛格尔顿?


7
在Laravel应用中启用/禁用功能
我正在构建一个Laravel应用程序,它具有许多不同的功能。我希望能够根据特定域的要求启用或禁用它们。当前,我在配置中有一系列标志,例如: 'is_feature_1_enabled' => true, 'is_feature_2_enabled' => false, ... 等等。 然后,在我的控制器和视图中,检查那些配置值,以查看是否应该显示某些内容,允许某些操作等。我的应用到处都开始受到这类检查的污染。 有没有在Laravel应用中管理功能的最佳实践方法?
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.