파이썬은 객체지향적?

isTuna·2021년 2월 6일
1

Python 공부

목록 보기
8/10
post-thumbnail

🏵 객체지향 프로그래밍이란?

객체지향 프로그래밍(Object Oriented Programming)은 컴퓨터 프로그래밍의 패러다임 중 하나입니다. 프로그래밍에서 필요한 데이터를 추상화시켜 상태와 행위를 가진 하나의 객체로 만들어, 객체들간 상호작용을 통한 로직을 구성하는 프로그래밍 방법이다.

🎎 객체지향 프로그래밍의 장단점

장점

재사용이 용이
다른 사람이 만든 코드여도 사용할 수 있고, 상속을 통해 확장해서 사용 가능해 재사용에 용이합니다.

유지보수가 쉬움
절차지향 프로그래밍에서는 코드를 수정하기 위해서 직접 코드를 찾아가서 수정해야합니다. 그에 반해 객체지향 프로그래밍에서는 수정할 곳이 클래스 내부의 멤버 변수나 메소드로 있기 때문에 해당 부분만 수정하면 됩니다.

대형 프로젝트에 적합
클래스 단위로 모듈화시켜서 개발할 수 있기 때문에 여러명에서 개발을 할 때 업무 분담이 용이합니다.

단점

처리속도가 느림

객체 설계에 시간이 오래걸림

객체가 많으면 용량이 커질 수 있음

🧸 객체지향 프로그래밍의 특성

클래스, 인스턴스

추상화

공통 속성이나 기능을 묶어 하나의 이름을 붙이는 것입니다. 클래스를 정의하는 것이 추상화에 해당합니다.

캡슐화

변수나 함수가 코드에서 분산되어있어 재활용하기가 어려웠으나 캡슐화를 통해 재사용이 용이해졌습니다. 캡슐화의 목적은 코드를 수정없이 재사용하는 것입니다.
데이터 구조와 데이터를 다루는 방법들을 결합시킨 것

상속, 재사용

상속 : 상위 개념의 특징을 하위 개념이 물려받는 것
==> 기능을 수정해야 할 경우 상속받은 자식클래스에서 수정하여 사용할 수 있음

다형성

하나의 변수명, 함수명이 상황에 따라 다른 의미로 해석될 수 있는 것

오버라이딩
오버로딩

🎁 파이썬은 객체지향인가?

파이썬은 객체 지향 프로그래밍 패러다임을 따르고 있습니다. 객체지향 프로그래밍은 클래스와 인스턴스 중심으로 돌아갑니다.


profile
청소연구소 개발자 (2021. 05~ )

0개의 댓글