这是我自己构建的第一个网络应用程序。
在编码之前,我想组织我的想法,做上课和要求图。
所以我必须在我的软件中执行此操作
- 添加用户。 - 添加购买订单。
我以两种不同的方式思考我的课程。
像这样:
class User{
function add()
function edit()
}
class BuyOrder{
function add()
function edit()
}
或者
class Add{
function user()
function buyOrder()
}
class Edit{
function user()
function buyOrder()
}
正如你所看到的,他们会做同样的事情,但写作不同。
有什么想法吗?
感谢
答案 0 :(得分:1)
public class User
{
public Guid Id { get; set; }
public string Name { get; set; }
pubic string LastName { get; set; }
public byte Age { get; set; }
public List<Order> Orders { get; set; }
}
public class Order
{
public Guid Id { get; set; }
public decimal Price { get; set; }
public bool IsAvailable { get; set; }
}
public class Service
{
public User Create(User user) { };
public User Read(Guid id) { };
public void Update(User user) { };
public void Delete(Guid id) { };
public Order Create(Order order) { };
public Order Read(Guid id) { };
public void Update(Order order) { };
public void Delete(Guid id) { };
// Add orders to user basket
public void AddOrdersToUserBasket(List<Order> orders, User user) { };
public void AddOrdersToUserBasket(List<Order> orders, Guid id) { };
// Get all orders of current user
public List<Order> ReadOrdersForUser (Guid id) { };
// Send orders and user data to process a delivery.
public void Send ProcessOrdersAndUserData(List<Order> orders, User user) { };
}
而不是void作为返回值,您可以使用一些包装器:
public class Answer
{
public bool Result { get; set; }
public string Message { get; set; }
}
需要将服务划分为UserSevice,OrderService和ProcessService。
答案 1 :(得分:0)
我认为User和BuyOrder应该是一个类。
但是,将add函数作为这些类的一部分对我来说没有意义,因为有效地创建这些类的新实例就是添加。
相反,我会创建AddUser和AddOrder函数来创建实例并将它们正确地添加到需要的位置。