inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

워밍업 클럽 2기 BE 클린코드 & 테스트코드 🐾1주차 발자국

99ekdus
0

 

📃 학습 내용 요약

 

 

회고

 

 

📌 Day 2 미션

추상 : 아이유 콘서트 티켓팅을 한다.

구체 :

  1. 제일 먼저 티켓팅을 하기 전에 콘서트 정보를 확인하고, 가고 싶은 날짜와 좋은 좌석을 미리 정한다.

     

  2. 티켓팅 날, 컴퓨터 또는 스마트폰을 준비해서 원하는 웹 브라우저에 접속해 멜론 티켓 홈페이지에 들어가 로그인을 한다.

  3. 아이유 콘서트 예매 페이지에 들어가 정각이 될 때까지 긴장을 풀며 기다린다.

  4. 정확한 시간에 예매 버튼을 클릭하고, 본인의 예매 대기 순서를 기다린 다음에 날짜를 선택한다.

  5. 좌석을 선택하고, 티켓 가격과 할인 수단 확인 후 마지막으로 결제를 한다.

  6. 마이페이지에 들어가 예매 내역을 확인한다.

  7. 두근거리는 마음으로 콘서트 날까지 기다린다.😄

     

추상 : 아이유 콘서트를 봤다.

구체 :

  1. 신나게 즐기기 위해 체력 단련을 하고, 아이유 노래의 응원법을 외운다.

  2. 콘서트 당일 날 보조배터리와 물, 간식 등을 챙겨서 편한 옷을 입고 집을 나선다.

  3. 목적지인 상암월드컵경기장까지 지하철을 타고 간다.

  4. 여유 있게 콘서트 시작 2~3시간 전에 도착해 티켓 부스에 가서 티켓을 수령하고, 아이유 응원봉인 아이크를 구매한다.

  5. 공연장 주변에서 시간을 보내다가, 콘서트 시작 시간에 맞춰 들어간다.

  6. 아이유 콘서트가 시작되는 순간부터 끝날 때까지 현장의 열기를 느끼며, 행복한 시간을 만끽한다.

  7. 새로운 추억을 간직하며, 다음 콘서트를 기대한다.

 

 

📌 Day 4 미션

public boolean validateOrder (Order order) {
    if (order.getItems().size() == 0) {
        log.info("주문 항목이 없습니다.");
        return false;
    }
    
    if (!order.hasCustomerInfo()) {
        log.info("사용자 정보가 없습니다.");
        return false;
    }

    if (order.getTotalPrice() <= 0) {
        log.info("올바르지 않은 총 가격입니다.");
        return false;
    }
    return true;
}

  1. 단일 책임의 원칙 SRP (Single Responsibility Principle)

한 클래스는 하나의 책임만 가져야 한다. 한 사람이 여러 가지 일을 동시에 해서 효율성이 떨어지는 것보다 여러 사람이 각자 맡은 일에 최선을 다하는 게 더 좋다. 레스토랑에서 주문 받는 사람, 요리 하는 사람, 계산 하는 사람 따로 있듯이 클래스도 각자의 역할에 집중해야 코드가 복잡해지지 않고 유지 보수 하기 쉽다.

  1. 개방-폐쇄 원칙 OCP (Open-Closed Principle)

확장에는 열려 있지만, 수정에는 닫혀 있어야 한다. 새로운 기능을 추가할 때 기존 코드를 수정하지 않고 새로운 코드를 추가하여 시스템을 확장하는 것이다.

  1. 리스코프 치환 원칙 LSP (Liskov Substitution Principle)

자식 클래스는 언제든지 부모 클래스를 대체할 수 있어야 한다. 자식 클래스는 부모 클래스가 사용되는 모든 곳에서 사용될 수 있어야 한다.

  1. 인터페이스 분리 원칙 ISP (Interface Segregation Principle)

하나의 거대한 인터페이스보다는 여러 개의 작은, 특정한 클라이언트를 위한 인터페이스를 사용해야 한다. 레스토랑 메뉴판에서 너무 많은 메뉴를 한꺼번에 보여주는 것보다 종류별로 메뉴를 분리하여 보여주는 것이 고객들이 원하는 음식을 쉽게 찾을 수 있어 편하다. 인터페이스도 특정 기능에 맞게 분리해야 클라이언트가 필요한 기능만 사용할 수 있다.

  1. 의존성 역전 원칙 DIP (Dependency Inversion Principle)

고수준 모듈은 저수준 모듈에 의존해서는 안 되며, 둘 다 추상화된 인터페이스에 의존해야 한다. 레스토랑에서 요리를 할 때, 특정 브랜드의 재료만 의존하지 않게 해야 한다. 하나의 브랜드만 사용하지 않고, 다양한 브랜드의 재료를 사용함으로써 맛을 더 업그레이드 시킬 수 있다.

 

워밍업클럽2기

답변 0