如果我将“数据访问”方法放在业务对象上,我是否违反了单一职责原则 (SRP)?我的直觉是,如果类本身存在 Load 方法,那么 API 会感觉更加用户友好,而不必猜测该方法恰好在哪个类中?
例子:
public class Image
{
public static Image FromFile(string filename)
{
return ImageLoader.LoadImage(filename)
}
public void SetPixel(int x, int y, Color color)
{
}
}