원칙 4

LSP (리스코프 치환 원칙)

소개이전 글에서는 SOLID 원칙 중 첫 번째와 두 번째 원칙인 단일 책임 원칙(SRP)과 개방-폐쇄 원칙(OCP)을 다뤘습니다.아직 읽어보지 않았다면 먼저 확인해 보시길 추천합니다.🔹 SRP(단일 책임 원칙) 글 보기🔹 OCP(개방-폐쇄 원칙) 글 보기이번 글에서는 세 번째 원칙인 리스코프 치환 원칙(Liskov Substitution Principle, LSP)을 살펴보겠습니다.이 원칙은 객체 지향 시스템에서 유연하고 안정적인 구조를 설계하는 핵심 개념입니다.LSP(리스코프 치환 원칙)란?리스코프 치환 원칙(Liskov Substitution Principle, LSP)은 다음과 같이 정의됩니다."부모 클래스(상위 타입)의 객체를 자식 클래스(하위 타입)의 객체로 대체하더라도 프로그램의 정확성이 ..

OCP (개방-폐쇄 원칙) in SOLID

소개이전 글 다시 보기이전 글에서는 SOLID 원칙 중 첫 번째인 단일 책임 원칙(SRP)에 대해 다뤘습니다.SRP를 준수함으로써 어떻게 코드를 더 단순하고 유지보수하기 좋게 만들 수 있는지 알아보았습니다.이번 글에서는 SOLID 원칙의 두 번째, OCP(개방-폐쇄 원칙)에 대해 살펴보겠습니다.이 원칙은 소프트웨어 시스템이 변경에 유연하게 대처할 수 있도록 설계하는 데 중요한 역할을 합니다.OCP(개방-폐쇄 원칙)이란?OCP는 다음과 같이 정의됩니다:“소프트웨어 엔티티는 확장에는 열려 있어야 하고, 수정에는 닫혀 있어야 한다.”간단히 말해:새로운 기능이나 동작을 추가할 때 기존 코드를 수정하지 않고 확장할 수 있어야 합니다.이를 통해 기존 시스템을 안정적으로 유지하면서도 새로운 요구사항에 쉽게 적응할 수..

SRP(단일 책임 원칙) in SOLID

소개SOLID란?SOLID 는 객체지향 설계를 더 이해하기 쉽고, 유연하며, 유지보수하기 쉽게 만드는 다섯 가지 원칙을 말합니다.이 원칙들은 시스템을 확장 가능하고, 견고하며, 변경에 적응할 수 있도록 설계하도록 안내합니다.하지만 이러한 원칙을 이해하는 것은 실용적인 예제가 없으면 어렵게 느껴질 수 있습니다.왜 이 시리즈를 작성했나요?이 시리즈의 목적은 간단합니다:SOLID 원칙이 어떻게 위반되는지를 명확히 설명합니다.각 원칙을 효과적으로 준수하는 방법을 리팩토링 과정을 통해 보여줍니다.SRP(단일 책임 원칙)이란?SRP(Single Responsibility Principle)는 객체지향 설계 원칙의 기초로, 다음을 의미합니다:모듈은 오직 하나의 책임만 가져야 한다.모듈은 변경해야 하는 이유가 단 하나..

MVC 패턴을 다시 공부해보자

우아한 테크 코스의 프리코스에서 숫자 야구 게임 구현 단계를 진행하고 있었습니다. 이 때 따로 GUI 는 없고 콘솔을 통해서 입력과 출력을 받고 있었습니다. 저는 먼저 한 클래스에 모든 구현을 때려 넣은 후에 리팩토링하면서 각 객체에게 역할과 책임을 분리했습니다. 그런데 프리코스 커뮤니티에서 MVC 패턴에 대한 이야기가 나오더라구요..? 저는 안드로이드 프로젝트만 해왔기 때문에 당연히 따로 View 가 있는 패턴(MVC 나 MVVM 과 같이)을 사용할 생각을 못했었는데 말이죠. 그래서 MVC 패턴을 적용해서 구현한 코드를 리팩토링하려고 했습니다. 그런데 갑자기 조금씩 헷갈리더라군요.. 그래서 MVC 패턴을 어떤 프레임워크에 국한되지 않도록, 조금만 더 자세히 알아보려고 합니다. 참고로 이전에 MVC, M..