Python 스터디를 하면서 최종과제물로 HangMan게임이 결정되었다.
개인적으로 파이썬의 모든 기초적인 부분을 훍을 수 있는 프로젝트라 블로그 주제로 선정됐다고 생각한다.
하나하나 톺아보자
if __name__ == "__main__":
ranking_path ="../Python_Hangman/Rank.txt"
rank = Rank(ranking_path)
user = User()
user.setName() //input()으로 name값을 받는다
game = HangMan(user)
game.excute()
game.gameOver()
rank.addUser(user)
rank.sort()
rank.view()
user.view()
나로서는 이게 최선인것같다.
(혹시 더 좋은 방법이 있다면 알려주세요.)
다음으로 해야 할것은 main에 사용된 class들의 구현이다. 실제 구현에 앞서 일단 선언만 해두자. User, HangMan, Rank다.
from abc import *
class GameImpl(metaclass=ABCMeta):
@abstractmethod
def getUserName(self):
pass
@abstractmethod
def execute(self):
pass
스터디 진행하는 선배가 상속으로 만들라고 하면서 준 GameImpl.py 코드다. 이걸 상속시켜 HangMan.py를 만들자
from GameImpl import GameImpl
from User import User
class HangMan(GameImpl):
def __init__(self, user : User):
pass
def getUserName(self):
pass
def execute(self):
pass
def gameOver(self):
pass
User.py다
class User():
def __init__():
pass
def getUserName(self):
pass
def view(self):
pass
Rank.py다
from User import User
class Rank():
def __init__(self):
pass
def addUser(self, newUser : User):
pass
def sort(self):
pass
def view(self):
pass
이걸로 핵심적인 class들의 선언은 끝났다.