본문 바로가기
[개발자 로드맵]/파이썬

[혼자 공부하는 파이썬] 객체 지향 프로그래밍이란?

by Ramrider 2023. 9. 26.
728x90
반응형

객체지향 프로그래밍 이념

# 프로그래밍 이념

어떻게 하면 프로그램을 더 좋게 만들 수 있을 것인가? 라는 이념 중 하나로 "더 좋은 프로그램"이라는 "신"을 향해서 다가가는 접근 방법

 

## 명령형 프로그래밍

명령문을 사용해서 프로그램이 어떠한 동작을 할지 순서대로 나열해서 프로그램을 만들자

>print("문자열")

>input("문자열")

 

## 선언형 프로그래밍

명령형 프로그래밍과 반대로 생각해도 괜찮음

><h1> 제목</h1>


# 절차적 프로그래밍

서브루틴, 프로시저, 함수

- 같은 코드를 여러번 작성하지 말고 함수를 만들어 사용하자

- GOTO구문, JUMP 구문을 사용하지 말고 함수를 사용하자

 

# 함수형 프로그래밍

함수는 수학적 개념, 순수 함수를 사용해야 한다

 

# 객체 지향 프로그래밍

여기서 더 좋은 프로그램 : 규모가 큰 프로그램

변수와 함수를 묶어 하나의 묶음으로 만들면 더 좋은 프로그램을 만들 수 있을 것이다.

 

객체지향 프로그래밍 배경

## 함수가 너무 많아서 발생한 폐해

- 무엇이 무엇을 하는 함수인지 모름

- 어떤 함수가 존재하는지 찾기도 힘듦

- 함수를 변경하려는데, 영향 범위를 추적하는 것이 힘듦

→ 대규모의 프로그램을 만드는 것이 힘들었음

 

## 예를들어 서점

서점에서는 수 많은 책이 존재해서 카테고리를 묶어 책을 소개

 

ex) 컴퓨터 관련 책 → 컴퓨터 관련 카테고리

 

## 함수를 카테고리로 묶으면?

## 그리고 주어(객체)를 기반으로 변수/함수를 모으면 어떨까?, 주어를 기반으로 카테고리를 묶으면 어떨까?

→ 객체 지향 프로그래밍

 

파이썬은 명령형 프로그래밍, 절차적 프로그래밍, 함수형 프로그래밍, 관심사로 카테고리 구분, 객체 지향 프로그래밍 을 모두 사용하고 있다.

728x90
반응형

댓글