Computer Science
프로그래밍 패러다임(작성중)
thenutcracker
2023. 5. 19. 11:08
1. 프로그래밍 패러다임(programming paradigm) 이란?
특정 관점과 접근 방식에 따른 개발자의 코딩방식
여기에서 패러다임(paradigm)의 사전적 정의는 다음과 같다
한 시대의 사람들의 견해나 사고를 근본적으로 규정하고 있는 인식의 체계.
또는, 사물에 대한 이론적인 틀이나 체계. 순화어는 '틀'
"천동설과 지동설은 서로 다른 시대의 패러다임의 산물이다"
정의 출처 : Oxford Languages
이를 프로그래밍으로 적용해보자
개발자는 프로그래밍과 관련된 이론적 체계 혹은 틀에 따라서
'어떻게 프로그래밍을 할 것인가'
스스로 질문을 던지고, 특정 관점과 방식을 바탕으로 '프로그래밍'을 하는 것으로 적용할 수 있다.
2. 프로그래밍 패러다임의 변화
- 통상적으로 프로그래밍 패러다임은 3가지를 의미한다.
절차적 프로그래밍(PP, Procedure Programming)
객체지향 프로그래밍(OOP, Object Oriented Programming)
함수형 프로그래밍(FP, Functional Programming)
- 등장순서는 함수형 →객체지향 → 절차적
- 프로그래밍 패러다임은 '접근방식'과 '사용환경'에 따라 유동적으로 활용
- 각각 프로그래밍 패러다임은 장단점이 존재하며 상호 보완적 특성을 가진다
3. 프로그래밍 패러다임의 분류
- 선언형 프로그래밍(Declearative Programming)
- 절차형, 객제지향적 프로그래밍
- 명령형 프로그래밍(Imperative Programming)
- 함수형, 논리형 프로그래밍
<구조도 첨부>
4. 선언형 프로그래밍 vs 명령형 프로그래밍
어떻게(How) 할 것인가, 무엇(What)을 할 것 인가?
참조