Skip to content

Commit

Permalink
[권오연] 챕터8: 계층형 설계1 (#49)
Browse files Browse the repository at this point in the history
  • Loading branch information
oyeon-kwon authored May 23, 2024
1 parent f1e4a27 commit bea2fe8
Showing 1 changed file with 34 additions and 0 deletions.
34 changes: 34 additions & 0 deletions 챕터_8/권오연.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
## Ch 8. 계층형 설계 1

- 소프트웨어 설계란 무엇입니까?
- 코드를 만들고 테스트하고 유지보수하기 쉬운 프로그래밍 방법을 선택하기 위해 미적 감각을 사용하는 것
- 계층형 설계란 무엇인가요?
- 소프트웨어를 계층으로 구성하는 기술
- 계층 예시
- 비즈니스 규칙 (gets_free_shipping)
- 장바구니를 위한 동작들 (remove_item)
- 카피 온 라이트
- 언어에서 지원하는 배열 관련 기능
- 설계 감각을 키우기
- 계층형 설계 감각을 키우기 위한 입력과 출력
- 계층형 설계 패턴
- 패턴 1: 직접 구현
- 패턴 2: 추상화 벽
- 패턴 3: 작은 인터페이스
- 패턴 4: 편리한 계층
- 패턴 1: 직접 구현
- 직접 구현 패턴을 사용하면 비슷한 추상화 계층에 있는 함수를 호출합니다.
- 같은 계층에 있는 함수는 같은 목적을 가져야 합니다.
- 직접 구현한 코드는 한 단계의 구체화 수준에 관한 문제만 해결합니다.
- 계층형 설계는 특정 구체화 단계에 대한 풍부한 단서를 보여줍니다.
- 함수를 추출하면 더 일반적인 함수로 만들 수 있습니다.
- 일반적인 함수가 많을수록 재사용하기 좋습니다.
- 복잡성을 감추지 않습니다.
- 요점 정리
- 계층형 설계는 코드를 추상화 계층으로 구성
- 어떤 구체화 단계로 쓸지 결정하는 것이 중요
- 함수 이름: 의도를 알려줌
- 함수 본문: 중요한 세부 사항을 알려줌
- 내가 정리한 결론
- 결국 배열을 직접 참조하지 않도록 코드를 구현하라 (함수로 제작)
- 계층 간 차이를 보기 위해서는 호출 그래프를 그리면 쉽다.

0 comments on commit bea2fe8

Please sign in to comment.