OCP 2

프로그래머라면 알아야 할 격언 5가지

1 KISS(Keep It Simple, Stupid / Keep It Short and Simple) 코드를 작성할 때 최우선 가치를 단순성과 간결성에 둬야 한다는 격언입니다. 복잡한 코드는 읽기 어렵고 수정하기 어렵습니다. 코딩 중에도 코드가 동작할 수 있는 가장 간단한 방법은 무엇인지 항상 질문을 던져야 합니다. 복잡함으로 향하는 상황 1 새롭게 배운 기술을 사용하고 싶을 때 2 장래의 필요에 대비하고 싶을 때 3 멋대로 요구사항을 추가할 때 2 YAGNI(You Aren't Going to Need it) 확장성을 고려해서 넣은 설계라도 예상은 대부분 빗나갑니다. 빗나간다는 것은 거기에 들인 시간이 낭비되었고 버려진다는 의미입니다. 범용성보다는 단순성을 생각해야 합니다. 범용성이 가져다주는 재사용..

경험정리 2024.01.18

SOLID 원칙 시리즈 - 개방-패쇄 원칙

OCP: 개방-패쇄 원칙 (Open-Closed Principle) 개방 폐쇄 원칙은 "소프트웨어 개체(artifact)는 확장에는 열려 있어야 하고, 변경에는 닫혀있어야 한다."를 의미한다. 다시 말해 소프트웨어 개체의 행위는 확장할 수 있어야 하지만, 이때 산출물을 변경해서는 안 된다. 소프트웨어 아키텍처를 공부하는 가장 근본적인 이유가 바로 이 때문이다. 만약 요구사항을 살짝 확장하는 데 수정사항이 많다면 설계한 아키텍트는 엄청난 실패에 맞닥뜨린 것이다. 소프트웨어 아키텍처가 훌륭하다면 변경되는 코드의 양이 가능한 한 최소화될 것이다. 이상적인 변경량은 0이다. 어떻게 하면 될까? 서로 다른 목적으로 변경되는 요소를 적절하게 분리하고(단일 책임 원칙, SRP), 이들 요소 사이의 의존성을 체계화함으..

728x90