3/15 - 객체 지향 프로그래밍(OOP)

이준민·2023년 3월 15일
0

객체 지향 프로그래밍이란

프로그램을 수많은 '객체(object)'라는 기본 단위로 나누고 이들의 상호작용으로 서술하는 방식이다.

객체란 하나의 역할을 수행하는 '메소드와 변수(데이터)'의 묶음

객체 지향 프로그래밍의 4가지 주요 개념

1.캡슐화

속성(데이터)과 메서드(기능)를 따로 정의 하는것이 아닌 , 하나의 객체 안에 넣어서 묶는것
=> 속성과 메서드들이 느슨하게 결합됨

느슨한 결합

느슨한 결합은 코드 실행 순서에 따라 절차적으로 코드를 작성하는 것이 아니라, 코드가 상징하는 실제 모습과 닮게 코드를 모아 결합하는 것을 의미

1-1 캡슐화의 특징

은닉화

은닉화는 내부 데이터나 내부 구현이 외부로 노출되지 않도록 만드는 것
(디테일한 내부 구현은 숨기고, 필요한 동작(메서드)만을 노출)

2.추상화

내부의 구현은 복잡해도 외부로 보이는 인터페이스를 단순화 시키는것

캡슐화와 다른점

캡슐화는 은닉에 초점이 맞춰져있지만 , 추상화는 필요하지않은 메서드 등을 노출시키지 않음.

3.상속

기본 클래스(base class)의 특징을 파생 클래스(derived class)가 상속
(원본을 바탕으로 메서드를 추가시키거나 삭제)

4.다형성

모양은 다르나 본질이 같음.

예시)Textarea(TextBox), Select, Checkbox
모두 input으로 분류되나 타입이 다름으로써 브라우저에 노출되는 인터페이스의 형태가 다름

출처 - https://namu.wiki/w/%EA%B0%9D%EC%B2%B4%20%EC%A7%80%ED%96%A5%20%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%98%EB%B0%8D

profile
적응하는 개발자 이준민 입니다.

0개의 댓글