# SOLID 원칙이란? - 로버트 C.마틴 (Robert C.Martin)이 정리한 원칙으로 소프트웨어 작업에서 프로그래머가 소스 코드를 읽기 쉽고 확장하기 쉽게 될 때까지 소스 코드를 리팩토링하여 정리하기 위한 지침이다. - 이 원칙에는 크게 5가지 원칙이 존재한다. (1) SRP : 단일 책임 원칙 (Single Responsibility Principle) (2) OCP : 개방 폐쇄 원칙 (Open/Closed Principle) (3) LSP : 리스코프 치환 원칙 (Liskov Substitution Principle) (4) ISP : 인터페이스 분리 원칙 (Interface Segregation Principle) (5) DIP : 의존관계 역전 원칙 (Dependency Inversio..
# 객체 지향 프로그래밍이란? - 컴퓨터 프로그램을 명령어의 목록으로 보는 시각에서 벗어나 여러개의 독립된 단위, 즉 "객체"들의 모임으로 파악하고 각각의 객체는 메시지를 주고 받고 데이터를 처리할 수 있다. - 객체 지향 프로그래밍은 프로그램을 유연하고 변경이 용이하게 만든다!! * 우연하고 변경이 용이하다는 것은 블럭을 조립하듯이 컴포넌트를 쉽고 유연하게 변경하면서 개발할 수 있는 방법이다! # 객체 지향의 특징 - 객체 지향의 특징을 고르라면 크게 이 4가지를 고를 수 있을 것이다. - 추상화 : (1) 공통의 속성이나 기능을 묶어 이름을 붙이는 것! (2) 객체 지향적 관점에서 클래스를 정의하는 것이 추상화! - 캡슐화 : (1) 데이터 구조와 데이터를 다루는 방법을 결합시켜 묶는것. (2) 객체..