Ho una classe base chiamata API
che viene usata da tre oggetti (Server, VPS, SharedHosting).
Codice:
class API:
def get(endpoint, params):
def post(endpoint, params):
def parse_response(response):
Classe server:
class Server:
def __init__(self, name, ip):
self.name = name
self.ip = ip
@classmethod
def create(cls):
api = API()
server = api.post("/server")
return Server(server['name'], server['ip'])
@classmethod
def find(cls, vm_id):
api = Api()
server = api.get("/server/:id")
return Server(server['name'], server['ip'])
VPS e SharedHosting sono molto simili alla classe Server. Come puoi vedere ogni volta che chiamo metodi factory ho bisogno di creare un'istanza di classe API. Come lo faresti? L'ereditarietà è un'opzione in questo caso?