Skip to content

Commit

Permalink
refactoring programming requirements
Browse files Browse the repository at this point in the history
  • Loading branch information
javajigi committed Jan 31, 2018
1 parent d9e5bc0 commit f362edb
Showing 1 changed file with 5 additions and 3 deletions.
8 changes: 5 additions & 3 deletions level2-common/level2.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,11 +31,13 @@
```

#### 프로그래밍 구현 제약사항
* 함수(또는 메소드) 크기가 최대 10라인을 넘지 않도록 구현한다.
* 함수(또는 메소드) 하나의 크기가 최대 10라인을 넘지 않도록 구현한다.
* 함수(또는 메소드)가 한 가지 일만 하도록 최대한 작게 만들어라.
* indent(인덴트, 들여쓰기) depth를 최대한 작게 만들어라. depth가 1인 상태가 가장 좋다.
* indent(인덴트, 들여쓰기) depth를 3이 넘지 않도록 구현한다. 2까지만 허용한다.
* 예를 들어 while문 안에 if문이 있으면 들여쓰기는 2이다.
* 전역 변수를 사용하지 않는다.

#### 힌트
* 컴퓨터가 3개의 값을 선택할 때 각 언어별 random 함수(또는 메소드) 또는 shuffle 함수(또는 메소드)를 이용하면 편한다.
* 반복문을 2중(반복문 안의 반복문)으로 사용하면 한번에 고려할 부분이 많다. 2중 반복문을 1중 반복문 2개로 나누어 처리하는 방법은 없는지 고려해 본다.
* depth를 줄이는 좋은 방법은 함수(또는 메소드)를 분리하면 된다.
* indent(인덴트, 들여쓰기) depth를 줄이는 좋은 방법은 함수(또는 메소드)를 분리하면 된다.

0 comments on commit f362edb

Please sign in to comment.