04. 안티 패턴
4.1 안티 패턴이란?
- 안티 패턴은 겉으로만 해결책처럼 생긴 패턴을 뜻한다.
- 케이니그가 제시한 안티 패턴에 대한 두 가지 개념
- 문제 상황에 대한 잘못된 해결책
- 문제 상황에서 벗어나 올바른 해결책에 이르는 방법
- 애플리케이션의 품질은 팀의 기술 레벨과 투자한 시간에 따라 좋아질 수도, 나빠질 수도 있다. 여기서 좋고 나쁨은 상황에 따라 결정되며, 소위 완벽한 설계도 잘못된 상황에서 사용된다면 안티 패턴이 될 수 있다.
안티 패턴은 반면교사로 활용하기 위해 문서화하여 기록해야 하는 나쁜 디자인 패턴
4.2 자바스크립트 안티 패턴
- 안티 패턴의 예시
- 전역 컨텍스트에서 수많은 변수를 정의하여 전역 네임스페이스 오염시키기
- setTimeout이나 setInterval에 함수가 아닌 문자열을 전달해서 내부적으로 eval() 실행되게 하기
- Object 클래스의 프로토타입을 수정하기
- 자바스크립트를 인라인으로 사용하여 유연성을 떨어뜨리기
- document.createElement 대신 document.write 사용하기.
- 안티 패턴을 알아볼 수 있게 된다면 코드를 리팩토링해 안티 패턴을 제거함으로써 제품의 품질을 단번에 끌어올릴 수 있다.