던전에서클리어를추구하면안되는걸까/픽셀던젼코드분석 (rev. 1.9)
switch ¶
switch (depth) {
case 1:
case 2:
case 3:
case 4:
level = new SewerLevel();
break;
case 5:
level = new SewerBossLevel();
break;
case 6:
case 7:
case 8:
case 9:
level = new PrisonLevel();
break;
case 10:
level = new PrisonBossLevel();
break;
.
.
.
.
- 대략 신선했던 스위치 코드, 브레이크를 안거는 방법을 쓰다니 오오..
return ¶
public static boolean shopOnLevel() {
return depth == 6 || depth == 11 || depth == 16;
}
- 조건문을 리턴할 수도 있다라는 간단한 발생을 왜 하지 못했을까..
this.point().negate()
- point()가 해당 클래스에 없길래 상속을 쭉 따라 올라갔더니 point()의 return value가 클래스.
- return value로 클래스를 쓰면 메소드를 사용할 수 있다는 간단한 코드
모르겠는거 ¶
items = new LinkedList<Item>( (Collection<? extends Item>) bundle.getCollection( ITEMS ) );
- Collection<? extends Item> 이부분, Item을 상속받은 무언가로 타입캐스팅 하는거 같은데, 무언가가 무언가인지.. 게다가 이 코드는 Run하면 에러 발생하는데 왜그러는 거지..
- error : incompatible types: Collection<Bundlable> cannot be converted to Collection<? extend Item>
ArrayList<Bundlable> list = new ArrayList<Bundlable>();
잡담 ¶
- 주석이 코드에 안달려있는 경우가 많음에도 불구하고 굉장히 읽기 편하네요.. 이게 잘짠코드라는건가 ㄷㄷ
- 픽셀던젼의 제작사인 watabou에서 만든 패키지들을 import해서 사용하는 경우가 많음.. 내부를 전부 뜯으려면 꽤나 오래 걸릴듯.