3/7 수업

hyunji·2023년 3월 7일
0

Q&A

dsl은 언제 사용?

  • 블랙잭에선 테스트 코드에서 given절 만드는 거 외엔 굳이 쓸 곳 X

사용자 입력 오류 VS 논리 오류

  • 사용자 입력 오류: 사용자가 잘 못 입력한 오류
    view 내의 오류
  • 논리 오류: 프로그램은 정상 작동되나 잘못된 코드로 짜여진 경우
    도메인 내의 오류
  • 프로그램이 강제로 종료되는 오류
    int average(int a, int b) {
        return a + b / 2;  // (a + b) / 2 이렇게 작성되어야 함
    }
    • 비즈니스 로직 VS 도메인 로직
      * 도메인: 우리가 관심을 가지고 지속적으로 탐구해야할 영역 - E커머스
      • 현업에서는 도메인 로직을 다룬다가 비즈니스 로직을 다룬다고 간주됨

블랙잭 게임의 핵심

  • 최대한 도메인에 얼마나 넣을 수 있는가

  • controll logic이 8줄이면 충분하다 by 제이슨....

  • view랑 controller 없이 게임을 실행할 수 있어야 한다

  • controller 라인을 15라인으로 줄여라.........

모델 뷰 얽혀있는 경우 어케 구현?

  • 입력 받고 한장 분배 후 다시 물어보는 로직은 어디로?
    * 도메인의 역할
    • but 도메인은 view에 의존 X
    • 이 두 규칙을 만족시키면서 어케 구현?
      * controller에서 view의 함수를 도메인으로 넘겨줘도 될까?
      • 함수형 프로그래밍을 수업한 이유.
        • Thinking!

원시값 어디까지 포장해야할까?

  • 포장이 되려면 역할이 있어야한다.

함수 줄 제한 메서드 바디까지 포함?

  • 시그니쳐 미포함

DTO는 컨트롤러 or 도메인 어디서 감싸야할까?

  • DTO : Data Transfer Object
  • 계층 간의 데이터 이동 시 사용
  • 우리 미션에서 계층이란?
  • MVC 패턴과 Layer Architecture을 공부해봐라! 방학기간에~!
  • DTO는 왜생길까? 수신자를 위해 보내는 것. 수신자에게 의존

0개의 댓글