I am going to implement a multi-threaded
application using django rest framework and MVC (model-view-controller). Every new call to my application - is a new thread. I want to put business logic on a separate layer. I have two ideas how to do this
Idea number one:
class UserService:
@staticmethod
def create_user(user):
# some business logic
@staticmethod
def update_user(user):
# some business logic
# another business methods
And the service call will look like this:
user_created = UserService.create_user(User("John", 19))
Idea number two:
class UserService:
def __init__(self, **kwargs):
# maybe some logic
def create_user(self, user):
# some business logic
def update_user(user):
# some business logic
# another business methods
And the service call will look like this:
user_service = UserService()
user_created = user_service.create_user(User("John", 19))
Which implementation is best? In the first case we have static methods. In the second case we create a new object every time. What is the most correct way to implement this using a DRF and MVC?
question from:
https://stackoverflow.com/questions/65647255/the-best-way-to-implement-a-service-layer-in-drf 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…