Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What would you name this CRUD class?

Trying to avoid the SomethingManager trap here...

Let's say I'm going to write a User editor which will allow administrators to create users in the system. Pretty basic functionality - view a list of existing users, create a new user, update an existing user, delete a user.

Let us also say that I decide to write a "business" class to handle these basic CRUD operations. This is probably what the interface would look like:

public interface ISomeUsefulName
{
    IList<User> FetchUsers();
    User FetchUser(int userId);
    bool SaveUser(User user);
    bool DeleteUser(int userId);
}

Inside the SaveUser() method, for example, I would validate the data (using a different class) and then actually save the data to the database (again using another class).

My question is, what should I name this class? Is this class doing too much and therefore I should split it into multiple classes?

like image 955
MrDustpan Avatar asked May 08 '09 18:05

MrDustpan


1 Answers

IUserRepository or IUserServices.

like image 53
Jamie Ide Avatar answered Sep 19 '22 13:09

Jamie Ide