E D R , A S I H C RSS

Switch And Case As Bad Smell

드들 보면 if 문 복된 경가 많다.

는 것가 반복되는 것나 모두 "나 "(Moa:BadSmell )다. 가 나면 바로바로 다. 대, 반복되는 로그래밍(Table/Data Driven Programming) 다.

그리고, 구들 기 바랍다. 그램나, 는 x,y 는 것, 브루 (subproblem)로 나는 것 구가 됩다 -- 문를 낮기 때문.

대, 다과 같 :
  • 로부
  • 겼는
  • ,
  • 결과 보

"기"를 TDD 과 같 만들다.

~cpp 
GAWI=1
BAWI=2
BO=3

def getWinner(p1,p2):
    """return 1 when p1 wins, 2 when p2 wins, 0 when a tie"""
    if p1>=p2:
        return p1-p2
    else:
        return p1-p2+3

  더 리 가능?

def getWinner(p1,p2):
    """return 1 when p1 wins, 2 when p2 wins, 0 when a tie"""
    return (p1+2*p2)%3

>>> getWinner(GAWI,BO)
1
>>> getWinner(BO,GAWI)
2
>>> getWinner(BAWI,GAWI)
1
>>> getWinner(BO,BO)
0


로그램 고, 떻게 로그램 , 그 로그래밍 다.

Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2021-02-07 05:28:09
Processing time 0.0098 sec