OOP(Objected-Oriented Programming)는 객체의 관점에서 프로그래밍 하는 것을 의미합니다.
딱 정해져 있는 것은 아니다. 어디까지나 지향이고 대개 둘로 나뉜다.
- 절차지향 언어 : C언어
- 객체지향 언어 : Java, Python, C# 등등..
객체지향 언어와 절차적 언어를 구분하는 방법이야 많지만 대개 아래와 같은 기준아래 절차적 언어와 객체지향 언어가 나뉩니다.
1. 캡슐화, 다형성, 클래스 상속을 지원하는가?
2. 데이터 접근 제한을 걸 수 있는가?
위의 기준을 만족하면 대개 객체지향 성격이 강해집니다.
[객체지향 프로그래밍 장점]
1. 모듈화, 캡슐화로 인해 유지보수에 용이하다.
2. 객체지향적이기 때문에 현실 세계와 유사성에 의해 코드를 이해하기 쉽게 만든다.
3. 객체는 그 자체가 하나의 프로그램이기 때문에 다른 프로그램에서 재사용이 가능하다.
[객체지향 프로그래밍 단점]
1. 대부분의 객체 지향 프로그램은 속도가 상대적으로 느려지고 많은 양의 메모리를 사용하는 경향이 있다.
2. 현실 세계와 유사성에 의해 코드를 이해하기 쉽게 만드는 만큰 설계 과정에 시간이 많이 투자된다.
https://victorydntmd.tistory.com/117
https://st-lab.tistory.com/151
'nodejs' 카테고리의 다른 글
For TDD , simple start with node.js (0) | 2022.05.05 |
---|---|
ejs (html)로 유저정보 가져오기 (0) | 2021.11.26 |
router에서 유저정보 사용하기 (0) | 2021.11.26 |
location 객체 사용법만 ! (0) | 2021.11.26 |
JWT 이해 (0) | 2021.11.23 |