Spliki

Clean Code : 부록 A(동시성 ll)

부록 A. 동시성 ll 이 장은 전에 스터디하였던 동시성을 좀 더 자세히 설명하고 보안하는 장입니다. 저자는 코드와 함께 다양한 운영체제 개념, 디자인 패턴을 말합니다. 저는 여기서 코드 보다는 운영체제 개념과 디자인 패턴 위주로 설명하려고 합니다. 1. 클라이언트/서버 예제 보통 클라이언트와 서버 간의 성능 테스트를 진행합니다. 이 때, 테스트...

Design Pattern : 전략(Strategy) 패턴

전략(Strategy) 패턴 객체들이 할 수 있는 행위 각각에 대해 클래스(전략)를 생성하고, 유사한 행위들을 캡슐화 하는 인터페이스를 정의하여, 객체의 행위를 동적으로 바꾸고 싶은 경우 직접 행위를 수정하지 않고 전략을 바꿔주기만 함으로써 행위를 유연하게 확장하는 방법을 말합니다. 간단히 말해서 객체가 할 수 있는 행위들 각각을 전략으로 만들어 ...

Clean Code : 12장(창발성)

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

Clean Code : 10장(클래스)

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

Clean Code : 7장(오류 처리)

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