ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 깔끔한 코드 작성에 관한 의문 (과 해결)
    프로그래밍/Java 2023. 11. 14. 21:14

     

     

    소트웍스 앤솔러지 라는 책을 읽은 사람의 책을 보며  이러한 궁금증이 생겼다.

     

    메소드 분리

    규칙1.  한 메소드에 오직 한 단계의 들여쓰기만 한다.

    규칙2.  else 예약어를 쓰지않는다.

     

     

    객체 분리

    규칙3.  모든 원시값과 문자열을 포장한다.

    규칙7. 일급 컬렉션을 쓴다.

     

     

    볼드 처리한 3개의 규칙이 무엇인지 궁금증이 생겼고 튜터님을 통해 이 궁금증을 해결하였다.

     

     

    첫번째

    규칙2.  else 예약어를 쓰지않는다.

    간단히 말하면 else를 쓰면 분기가 생긴다.

    그래서 코드가 깔끔하게 읽히지 않으며,  규칙1인 들여쓰기를 줄이기 위함도 있다.

    public ~~~~~~~~~{
    
     int chooseMenu = sc.nextInt();
            sc.nextLine();
            if (chooseMenu == 1) {
                System.out.println("주문목록에 담았습니다.");
             return addOrder(menuList.get(choice), 1);
          }
          System.out.println("취소되었습니다.");
    
            }
    
    }

     

    이렇게 else을 쓰지않으면 분기처리가 확실해진다.

     

     

     

    두번째

    규칙3.  모든 원시값과 문자열을 포장한다.

    얼마전 특강시간에도  래퍼클래스를 쓰라는 말을 들었다.

    짧은 시기에 두번이나 이 내용을 들으니 뭔가 굉장히 중요한 내용인것 같아 질문을 하였다.

     

    이유는 

    원시타입은 휴먼에러가 많이 난다.

    예를 들자면 unsigned int 와 int의 연산 등

    하지만 래퍼클래스를 사용할 경우 이러한 에러를 모두 잡아주기 때문에 사용하는 것이다.

    그리고 표준화의 문제 때문에 래퍼클래스를 사용하기도 한다.   

    래퍼클래스는 모두가 같은 말을 한다고 할 수 있기 때문

     

     

     

     

    세번째.

    일급 컬렉션

    처음 들어보는 말이기에 질문을 해보았다.

    간략히 설명해보자면

    "컬렉션을 포함한  클래스는 반드시 다른 멤버변수가 없어야한다.

    그렇게하면 각 컬렉션은 그 자체로 포장되어 있게 된다."

     

    라는 이유이다.

     

    생각보다 이해가 안되는 내용이기에 나중에 더 깊게 공부해봐야겠다.

    참고로 일급 객체도 있다.  (자바스크립트에서 사용되는 용어)

     

     

     

     

    '프로그래밍 > Java' 카테고리의 다른 글

    자바 TMI_3  (0) 2023.10.26
    자바 TMI_2  (0) 2023.10.13
    자바 TMI_1  (0) 2023.10.11
    java.time.패키지  (0) 2023.04.05
Designed by Tistory.