SOLID 법칙이란?2000년대 초 로버트 마틴이 주창한 객체지향 5원칙을 두문법칙 기억법으로 정리해놓은 것입니다.a.k.a 경선식 영단어처럼요.. 그럼 하나씩 살펴봅시다.S: Single Responsibility Principle (SRP) 단일 책임 원칙한 클래스는 하나의 책임만 가져야 한다는 원칙 사실 저는 이 법칙이 가장 어려운 것 같습니다. 얼마나 책임을 구분해야하는 걸까?어디부터 어디까지가 단 하나의 책임으로 둘 수 있을까? 라고 말이죠.. SRP를 알아보기 위한 사례로 온라인 도서 관리 시스템로 생각해봅시다.도서를 관리하기 위해 우선 책 Book 클래스를 만듭니다. 해당 책에는 제목, 저자, 내용 등 이 존재할 거고요.저는 책 내용을 출력하는 기능, 책 내용을 저장하는 기능, 책 내용을 로..
서론객체 지향의 특징 4가지를 정리할 예정입니다.1. 캡슐화2. 추상화3. 상속4. 다형성 다형성이란다형성(Polymorphism) : 동일한 인터페이스나 상위 클래스(상속)에서 정의된 메서드를 여러 하위 클래스에서 각기 다르게 구현할 수 있게 하는 기능 다형성의 이점코드의 유연성: 동일한 인터페이스를 구현하거나 동일한 상위 클래스를 상속받는 객체들이 동일한 메시지(메서드 호출)에 대해 각기 다른 방식으로 반응할 수 있습니다.확장성: 새로운 클래스가 추가되더라도 기존 코드를 수정할 필요 없이 확장할 수 있습니다.재사용성: 상위 클래스나 인터페이스를 기반으로 다양한 하위 클래스를 생성하여 코드의 재사용성을 높입니다.유지 보수성: 코드의 유지 보수가 용이해지며, 버그를 줄이고 수정 시 영향을 최소화할 수..
서론객체 지향의 특징 4가지를 정리할 예정입니다.1. 캡슐화2. 추상화3. 상속4. 다형성 상속이란상속 : 하나의 클래스가 다른 클래스의 속성과 메서드를 물려받아 사용하는 객체 지향 프로그래밍(OOP)의 중요한 개념 중 하나상속에 관련된 개념은 추상화, 상위 클래스, 하위 클래스 입니다. 추상화: 구체적인 구현 세부 사항을 감추고, 객체의 공통적인 속성과 기능을 추출하여 정의하는 것상위 클래스(Super Class): 다른 클래스가 상속받는 클래스. 부모 클래스 또는 기본 클래스하위 클래스(Sub Class): 상위 클래스를 상속받는 클래스. 자식 클래스 또는 파생 클래스 하위 클래스가 상속을 통해 상위 클래스의 속성과 메서드를 물려받아(공통기능) 재사용하고, 하위 클래스는 공통된 특성과 기능을 물려..
서론객체 지향의 특징 4가지를 정리할 예정입니다.1. 캡슐화2. 추상화3. 상속4. 다형성 객체 지향과 캡슐화가 무엇인지는 이전 글에 작성했습니다.https://langeasy.tistory.com/106 [Java] 객체 지향 언어의 특징 - 캡슐화(Encapsulation)서론객체 지향의 특징 4가지를 정리할 예정입니다.1. 캡슐화2. 상속3. 다형성4. 추상화 우선 캡슐화 설명에 들어가기에 앞서 객체 지향이란 무엇일까? 객체 지향이란? from 객체 지향의 창조자 :langeasy.tistory.com 캡슐화를 공부했으면 아시겠지만, 캡슐화를 했기 때문에 추상화, 상속, 다형성이라는 특징을 쓸 수 있는겁니다.특징 4가지가 모두 유기적으로 연결되어있어 그말이 그말 같지만보면 볼 수록 유연한 프로그..
서론객체 지향의 특징 4가지를 정리할 예정입니다.1. 캡슐화2. 추상화3. 상속4. 다형성 우선 캡슐화 설명에 들어가기에 앞서 객체 지향이란 무엇일까? 객체 지향이란? from 객체 지향의 창조자 : 엘런케이딱딱하게 받아들일 개념은 "소프트웨어를 개발 할 때 객체(Obejct) 중심으로 생각한 뒤 해당 객체를 어떤 기능(함수), 특성(데이터)들을 갖추고 있는지 등 모델링하고 재사용할 수 있기 위해 모듈화(기능을 세분화하는 것)하는 것" 입니다. 그러나 객체 지향의 창조자인 엘런케이의 말을 들어보면 조금 더 부드럽게 받아들일 수 있습니다.(참고로 엘런케이 曰 이라고 쓰여있는 부분은 실제 엘런케이가 말한 내용인지 확실한 팩트체크는 없습니다.) 우연히 유투브를 보다 "객체 지향의 본질"이라는 영상을 보게 됐..