호빵의 IT 개발소

객체지향이란? 본문

CS(전공지식)/기술면접 준비

객체지향이란?

호빵Stack 2025. 3. 25. 18:52
객체지향(OOP, Object-Oriented Programming)은:
  • 객체 중심 설계 방식
  • 코드 재사용성과 유지보수성 향상 목적
핵심 4요소:
  1. 캡슐화 – 데이터 + 기능을 객체로 묶음
  2. 상속 – 기존 클래스 기능을 확장
  3. 다형성 – 같은 인터페이스, 다른 동작
  4. 추상화 – 핵심만 노출, 세부 구현 숨김
요약: 객체를 중심으로 설계해 확장성과 유지보수에 유리한 프로그래밍 방식.

 

(SOLID 원칙) 객체지향 설계의 5대 원칙:
  1. S - SRP (단일 책임 원칙)
    • 클래스는 하나의 책임만 가져야 한다.
  2. O - OCP (개방-폐쇄 원칙)
    • 확장에는 열려 있고, 수정에는 닫혀 있어야 한다.
  3. L - LSP (리스코프 치환 원칙)
    • 자식 클래스는 부모 클래스의 기능을 대체할 수 있어야 한다.
  4. I - ISP (인터페이스 분리 원칙)
    • 필요한 기능만 가지는 인터페이스를 분리해서 제공해야 한다.
  5. D - DIP (의존 역전 원칙)
    • 구체 클래스가 아닌 추상(인터페이스)에 의존해야 한다.
요약: SOLID는 유지보수성, 확장성, 유연성을 높이기 위한 객체지향 설계의 핵심 원칙.

 

 

면접 스타일 답변 예시:

객체지향은 데이터를 객체 단위로 묶어서 현실 세계처럼 모델링하는 프로그래밍 방식입니다.
핵심 개념은 캡슐화, 상속, 다형성이고 이걸 통해 코드 재사용성과 유지보수성이 좋아집니다.
예를 들어, 게임에서 몬스터와 플레이어가 같은 Character 클래스를 상속받아 공통 로직을 재사용할 수 있고 공격 방식은 다형성으로 구현할 수 있습니다.

 

'CS(전공지식) > 기술면접 준비' 카테고리의 다른 글

메모리 구조는 어떻게 되어있나?  (0) 2025.03.25
메모리 풀이란?  (0) 2025.03.25
C++ 언어의 장점  (0) 2025.03.25
C#언어, C++ 언어 차이점  (0) 2025.03.25
C언어, C++ 언어 차이점  (1) 2025.03.25
Comments