최근 포스트

Clean Code : 12장(창발성)

12장. 창발성 이 챕터는 이제까지의 깨끗한 코드에 대해서 정리하는 느낌의 챕터라고 보시면 될 것 같습니다. 창발성에서 창발이란 하위 계층에는 없는 특성이나 행동이 상위 계층에서 자발적으로 돌연히 출현하는 현상(영어로는 Emergent Property)을 말합니다. 개인적인 ...

Design Pattern : 메멘토(Memento) 패턴

메멘토(Memento) 패턴 메멘토 패턴은 캡슐화를 유지하면서 객체 내부 상태를 외부에 저장하는 패턴입니다. 1. 다이어그램 Originator : 객체의 정보를 가지고 있는 오리지널 객체 제 3자가 객체 내부 정보를 알지 못하게 하기 위하여 Me...

Clean Code : 10장(클래스)

10장. 클래스 이제까지 코드 행과 코드 블록을 올바르게 작성하는 방법에 초점을 맞췄습니다. 함수를 올바르게 구현하는 방법과 함수가 서로 관련을 맺는 방식등을 공부했지만, 좀 더 높은 단계(클래스)까지 신경 쓰지 않으면 깨끗한 코드를 작성하기에 어렵기 때문에 이 장에서는 깨끗...

Design Pattern : 이터레이터(Iterator) 패턴

이터레이터(Iterator) 패턴의 차이점 이터레이터 패턴은 집합 객체 내부 구조를 노출시키지 않고 순회하는 방법을 제공하는 패턴입니다. 다이어그램 Iterator : 집합체의 요소들을 순서대로 검색하기 위한 인터페이스 ConcreteIterator : Itera...

Clean Code : 7장(오류 처리)

7장. 오류 처리 언제나 사용자는 우리의 예상과 다르게 행동하기 때문에 적절한 오류 처리는 매우 중요합니다. 다만, 오류 처리 코드로 인해 프로그램 논리를 이해하기 어려워진다면 깨끗한 코드를 부르기 어렵습니다. 따라서 이 장에서는 깨끗한 코드를 위해 오류를 처리하는 기법과 고려 ...