Computer Science. 2

[Design Patterns.] 디자인 패턴이란?

디자인 패턴은 소프트웨어 디자인 과정에서 자주 발생하는 문제들에 대한 전형적인 solution이다. 이는 재사용할 수 있는 코드 조각같은 것들이 아니고, 특정 문제를 해결하는 방식을 알려주는 일반적인 개념이다.패턴은 알고리즘과 혼동되곤 하는데, 둘 다 어떤 문제를 해결하기 위해 따라야 할 일련의 절차를 정의하지만, 패턴은 알고리즘보다 더 상위 수준의 설명을 의미한다. 즉, 알고리즘을 요리에 대한 레시피에 비유한다면, 패턴은 다이닝 코스 구성으로 비유할 수 있다. 디자인 패턴은 Creational Pattern(생성 패턴), Structural Pattern(구조 패턴), Behavioral Pattern(행동 패턴) 3가지로 구분 되며 종류는 다음과 같다.Creational PatternStructur..

[Books.] Clean Code - Robert O. Martin

회사에서 코드 리뷰를 하고 받을 수록, 현재 담당하는 업무를 진행할 수록 "좋은 코드"에 대한 생각을 점점 더 많이 하게된다. 한 줄을 수정 하더라도 '어떻게 수정해야 가독성이 좋아질까', '어떻게 해야 다른사람이 쉽게 코드를 이해할 수 있을까' 같은 고민이 들어 다시 클린 코드 책을 읽게 되었다. 두 번째 이 책을 읽으면서 처음 읽었을 때와 느껴지는 점이 조금 달라진 것 같다. 이전에 제대로 현업에 적용하지 못했던 부분이나 부족했던 부분을 정리해서 앞으로의 업무에 적용해 보려고 한다. 좋은 코드란 무엇일까?좋은 코드란, 가독성이 뛰어나고 원활한 유지보수성을 가진 코드이다.대표적으로 다음과 같은 조건을 충족하는 코드라고 생각한다. - 처음 코드를 보더라도 쉽게 읽을 수 있어야 한다 - 5년 뒤에 내가 다..