我对设计模式比较陌生,对我来说,设计模式似乎是整个软件设计中最难的部分和顶层(如果我错了,请纠正我)。
我现在有一个很大的类,其中有几个嵌入的功能,我想将一些功能重构为子类。但这些子类中的大多数将使用其前面代码输出的输出作为构造函数输入。这让我很困惑。我应该如何在我的设计模式中实现这种情况?或者我应该避免这种依赖情况?
下面是我的类的一个例子:
public class Edit
{
private List<Graphic> _listGraphic;
public Initialization()
{
PageInfo类
public class PageInfo<T> implements Serializable {
private static final long serialVersionUID = 1L;
private int pageNum;
private int pageSize;
private int size;
private int startRow;
private int endRow;
private long total;
private int pages;
privat
在从XML文件启动时,我使用XML反序列化来初始化许多对象。在对象的类中,我有一个计算函数。每个对象都有不同的计算方法,并且每个对象都需要唯一的计算方法。将这些数据与每个对象的数据联系在一起的最佳方法是什么?我应该使用继承并重写计算函数吗?
编辑:所以来自XML的基类是:
`public class Problem { public string ProblemName {get; set;} public Condition[] LotsOfConditions; } public class Condition {
类通过委托向协作者公开私有方法或属性的设计模式的名称是什么?这是在C#中实现的,但也可能与其他语言相关。
例如:
class Foo
{
public int X
{
get;
private set;
}
public void UpdateX(Bar bar)
{
bar.UpdateX(x => this.X = x);
}
}
class Bar
{
public void UpdateX(Action<int> setter)
{
se
这个有点复杂~
已获取用于验证来自异地服务器的用户名/密码的登录页。服务器返回一个用户ID,然后在我的应用程序中使用它来查找匹配的plist文件。如果还没有,它将使用示例数据为该用户创建一个新的plist。这一切都正常,但除非我终止并重新启动应用程序,否则什么都不会显示。
我认为问题在于表视图与模式登录页面同时加载。
以下是来自我的登录页面的代码:
-(void)connectionDidFinishLoading:(NSURLConnection *)connection{
[fIndicator stopAnimating];
//convert data from server
目前,我有一个标准的战略模式实施,简化如下:
public interface IStrategy
{
IList<Dog> GetDogs();
}
public class DogStrategy: IStrategy
{
public IList<Dog> GetDogs()
{
return new List<Dog>();
}
}
我还有一个使用策略的类:
public class DogCollection
{
private IStrategy strategy;
public