본문 바로가기
읽은책

퀄리티 코드

by e-pd 2023. 11. 9.

https://www.yes24.com/Product/Goods/36962739

 

퀄리티 코드 - 예스24

테스팅이 소프트웨어의 품질을 높이는 중요한 역할을 한다는 점은 누구나 인지하고 있으나, 막상 프로젝트를 마주해 테스팅을 하려면 어떻게 해야 할지 막막하다. 개발자들이 정작 테스팅에 대

www.yes24.com

- TDD를 바탕으로 품질 좋은 코드를 어떻게 만들 수 있는지 
- 실제 코드와 테스트에 관한 이론과 저자의 생각들을 배울 수 있었다.

 

책을 공부하면서 메모

 

테스팅: 예방하는 과정이다

- 본인이 원하는 것을 테스트로 표현하기 어렵다.

 

일반적인 프로그램이 튼튼하지 않은 이유?

- 상태에 기반

- 상태 검증 x

 

코드: 이름(사람을 향해있음)

 

유지보수성

- 변화에 유연한가. 짧고 길다가 아님.

 

구현이 의도가 아니다.

- 역할 인식.

 

코드에서 표현

- 테스트 보완

- 테스트 코드로 의도를 표현.

 

단위테스트

- 가장 상위

- 응용층이 제일 많음

- 따라서 역삼각형

 

유효한 테스트

- 동작테스트

 

테스트의 역설

- 통합 테스트 실패

- 단위별로는 성공

 

커맨드 패턴

- 명령 -> 객체

- invoker

- 담을 객체 조건으로 실행을 여러번. 

 

캡슐화 두가지 특성

- 외적 동질성

- 내적 동질성.

 

- 생성자 주입해서 테스트 용이하게 만들기
- 널 객체 패턴
- 테스트 접근 범위의 고찰. 가시성을 어떻게 둬야할까.
- 약한 형태의 클래스 분리와 인터페이스를 상용하면 가시성 이슈가 줄어든다.


싱글턴 테스트 어떻게?
1. 싱글턴 성격 없애기
2. 공유픽스쳐를 인정하기
3. 인스턴스 제약조건 완화
4. 생성자 제약조건 완화

 

팩토리

- 생성 되는 방식을 통해 하나의 인스턴스만 존재함을 보장하라.

 

- 스레드에서 테스트 방법

'읽은책' 카테고리의 다른 글

자바 병렬 프로그래밍  (1) 2023.12.17
요즘 우아한 개발  (0) 2023.11.18
HARD CODE  (0) 2023.11.03
코어 자바스크립트  (0) 2023.11.02
이 책도 읽지 마세요  (0) 2023.11.02