관련 개체에 대한 추가 속성을 추가합니다 : 모범 사례 단지 내가 다음과 같은 클래스가 특정 클래스
class Player(object):
def __init__(self, name, age):
self.name = name
self.age = age
나는 선수를 포함
class(Lobby)
있습니다. 클래스에는 각 플레이어에 대한 추가 속성이 있어야합니다. 예를 들어 ,
idle
시간 :
class Lobby(object):
def __init__(self, players):
self.players = players
for player in players:
player.idle = 0
그리고 각 선수의 또 다른 class(Game)
이 클래스는해야 추가 속성이 있습니다. 예를 들어, team
는
class Game(object):
def __init__(self, players):
self.players = players
self.organize_teams();
def organize_teams(self):
for player in self.players:
if condition1:
player.team = 0
elif condition2:
player.team = 1
elif condition3:
player.team = 2
문제 플레이어의 추가 속성은 오직 특정 클래스에 관한 것입니다 때문이다. 그래서 다른 방법으로 생각했습니다. 예를 들어
, 로비 클래스 : 그것은 좋은 연습
class Lobby(object):
def __init__(self, players):
self.players = {}
for player in players:
self.players[player] = {idle: 0}
인가?
플레이어의 팀 또는 팀의 플레이어가 필요합니까? 즉, 팀 구성을 게임에 추가 할 수 있습니다. 다른 게임 플레이어는 다른 팀에 속할 수 있습니다. – alko
플레이어에 특성을 추가하고 싶지 않습니다. 특성이 특정 게임에만 관련되기 때문입니다. (한 번에 여러 게임이있을 수 있습니다). '팀 '에 대해서,'int' ('player.team = 0')로 사용하지 않았습니다. 그저 하나의 예입니다. 나는 팀을 위해'enum'을 가지고있다. – Nirock
상황이 게임에서 게임으로 바뀌면 Factory 스타일의 디자인 패턴을 사용하여 플레이어 생성을 설정하는 것이 좋습니다. –