I have a data access layer that abstracts the rest of the application from storage technology. Now the implementation is an SQL server, but this may change. In any case, I believe that this main data access class becomes more and more as my tables grow (about 40 tables). The interface to this level of data access is any question you might want to get on
public interface IOrderRepository
{
Customer[] GetCustomerForOrder(int orderID);
Order[] GetCustomerOrders(int customerID);
Product[] GetProductList(int orderID);
Order[] GetallCustomersOrders(int customerID);
etc . . .
}
the implementation behind this is the basic SQL stored procs that run the appropriate queries and return results in typed collections
it will grow and grow. It is quite convenient to maintain, since there is no real gap in shared responsibility, but the class now exceeds 2,000 lines of code.
therefore, the question is, of course, what is the size of the class (and there is no real conceptual connection), if it is broken, and if so, what dimension or level of abstraction.
source
share