Skip to content

croffle-lover/java-onboarding

 
 

Repository files navigation

미션 24.01.12 ~ 24.01.18

그동안은 단순하게 자바를 입문하면서 여러가지 분기 처리 반복문, 변수와 타입 등에 익숙해졌다면 이제는 슬슬 클린코드와 객체지향에 대해 들어가기 전에 준비를 해야한다.

객체지향 생활체조 원칙

왜 객체지향 생활체조를 알아야 하는가? 객체지향이라는 추상적인 개념을 이해하기 위해서는 많은 시간이 걸리고 높은 진입장벽이 있다. 따라서 구체적인 행동을 바탕으로한 원칙들을 제시하게 되었고 확실하게 지키면서 개발하면 어느정도 객체지향의 이점을 얻어갈 수 있을 수 있다. 추후에 왜 이런 원칙들이 나오게 되었는지 이해하면서 객체지향을 이해하는 것이 빠르다.

아직은 클래스에 대한 이해를 하지 못하였고 해당 미션에서 사용할 필요가 없으니 규칙 1, 2, 4, 5만 체화시키도록 해본다.

  • 규칙 1: 한 메서드에 오직 한 단계의 들여쓰기(indent)만 한다.
  • 규칙 2: else 예약어를 쓰지 않는다.
  • 규칙 3: 모든 원시값과 문자열을 포장한다.
  • 규칙 4: 한 줄에 점을 하나만 찍는다.
  • 규칙 5: 줄여쓰지 않는다(축약 금지).
  • 규칙 6: 모든 엔티티를 작게 유지한다.
  • 규칙 7: 3개 이상의 인스턴스 변수를 가진 클래스를 쓰지 않는다.
  • 규칙 8: 일급 콜렉션을 쓴다.
  • 규칙 9: 게터/세터/프로퍼티를 쓰지 않는다.

미션 요구사항

  • 한 메서드에 오직 한 단계의 들여쓰기(indent)만 한다.
    • 주의!: for문 안에 if문이 있다면 indent가 2단계인 것이다.
  • else를 사용하지 않는다.
    • else 대신 무엇을 써야할까? 힌트: early return
  • 한 줄에 점을 하나만 찍는다.
  • 줄여쓰지 않는다.(축약금지)
    • 예) scanner(o) sc(x) / index(o) idx(x)
  • 함수(메서드)의 본문이 10줄을 넘지 않게 한다.
  • 커밋을 할 때 커밋 메시지 컨벤션을 지킨다.
    • 참고
    • 잘못된 커밋 메시지 예) 미션 구현 완료
    • 예) feat: Car 객체는 이름을 가진다.
  • 아래 명시된 컨벤션에 맞게 변수명, 함수명을 지정한다.

미션 진행방법

미션은 5일동안 풀고 제출한 뒤 코드리뷰를 받기 위해 Pull-Request를 보낸다.

  1. 미션 레포지토리를 fork 한다.
  2. fork한 레포지토리를 사용하는 IDE에서 열어 미션을 해결한다.
  3. 미션을 전부 완료한 후 자기 이름에 해당하는 branch에 Pull-Reqeust를 보낸다.
  4. Pull-Reqeust를 보낸 후 단톡방에 태그하면서 리뷰요청을 보낸다.

🚀 기능 요구 사항

아래의 7가지 기능 요구 사항을 모두 해결해야 한다.

  1. 문제 1
  2. 문제 2
  3. 문제 3
  4. 문제 4
  5. 문제 5
  6. 문제 6
  7. 문제 7

About

온보딩 미션을 진행하는 저장소

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Java 100.0%