anti-patterns

    1热度

    2回答

    我把它称为“送货员”。我已经看到了它的几种变体,但问题是,一个类只有将它传递给协作者并且从不使用依赖本身的唯一目的。 (我使用PHP,因为它是我最熟悉的,但是这是语言无关) class Dependency{} class B { public function setDependency(Dependency $dependency) { //... } }

    7热度

    1回答

    我有一个C背景,并且是C++上的一个newb。我有一个基本的设计问题。我有一个类(我称之为“厨师” B/C我有这个问题似乎很类似于此,无论是在复杂性和问题的方面),基本上就像在伪代码这个 class chef { public: void prep(); void cook(); void plate(); private:

    2热度

    2回答

    当我从MVC转向使用Prism做一些WPF时,我买了一本棱镜书,我再次震惊地看到服务定位器是一种已知的反模式。我已经阅读了像.NET中的依赖注入这样的书籍,Mark Seemann彻底浏览了为什么服务定位器是一种反模式。 我只是试图帮助成为最佳模式和实践的传道者,并想知道谁没有得到这些模式其中一些模式实际上是不好的备忘录。

    -1热度

    1回答

    我有一个类ConsoleApp的实用程序库,它只有像GetIntValue(字符串名称)这样的静态方法来要求用户输入具有指定名称的参数的整数值,或者具有解析命令行参数的函数。 至于我ConsoleApp是一个工具类,并继承它只是为了避免“ConsoleApp”。在代码中看起来像BaseBeen反模式。 但是另一方面,ConsoleApp只会被真正的Console应用程序的类继承,这样它就不是Bas

    2热度

    2回答

    Singleton是反模式吗?如果是的话,那么Spring中的依赖注入也是反模式(因为Spring提供了默认的Singleton bean)?

    6热度

    5回答

    我经常看到这种模式来定义JavaScript对象 function Person(name) { this.name = name; } Person.prototype.describe = function() { return "Person called "+this.name; }; 而且在this article它说,直接添加属性原型objct被认为是一个

    0热度

    1回答

    E.g. public abstract class Foo { public Bar f1() { return new Bar(); } } 和 public class Bar extends Foo { } 从设计上来看,你同意这样的设计是反模式?

    3热度

    2回答

    我想了解什么是Poltergeist反模式,它与Command或Delegate模式有什么不同。 我读过: http://sourcemaking.com/antipatterns/poltergeists 但没有理解上的差异...... 所以要清楚,我想看到它的代码示例(我喜欢C#或Java语言)。 有人有吗?

    0热度

    1回答

    我读罗伯特罗斯尼关于“你不得不维护的最不健全的程序是什么?发现在:(What's the most unsound program you've had to maintain?)当我意识到我无意中开发了一个几乎相同的应用程序! 该应用程序由抓取传入的POST请求的HTTPListener对象组成。根据标题中的信息,我将请求正文传递给SQL Server以执行适当的事务。 请求如: <Invoic

    1热度

    1回答

    让我们有一个简单的装饰例如: struct IStuff { virtual void Info()=0; virtual ~IStuff() { } }; class Ugly : public IStuff { public: void Info() { cout << "Ugly"; } }; class Shiny : public IStuff