반응형
1. 객체 지향 프로그래밍
1)과거에는 "Top-Down"의 방식을 이용했지만 비효율적이라 새로운 방식인 객체지향 "Botton-Up"의 방식 사용.
- "Top-Down"
위에서 부터 하나 하나 만들어가는 "Top-Down"
- "Botton-Up"
하나의 객체(object), 작은 단위로 만들어 객체별로 test -> pass를 하는 "Botton-Up" 방식
2. 객체 지향 프로그래밍 "Botton-Up"의 장점 및 단점
1) 장점
- 데이터나 기능에 변화가 생기더라도, 관련된 객체만 수정하면 되서 프로그래밍 하기 편함.
- 조금 더 의미 있는 단위로 나누기 때문에, 코드를 이해하거나, 다른 프로그램에서 재사용하기 수월.
- 전체가 완성되지 않아도 일부 기능만 사용해볼 수 있어 테스트에 유리.
- 유지보수 용이.
- 가독성 높음.
2) 단점
- 코드를 잘 나누고 설계하는 것이 어려움.(코드를 작성하기 전, 설계부터 많은 노력이 듬.)
- 사람이 이해하고 작성하기 편한 방식으로 코드를 나누어, 컴퓨터가 이해하는데 소요 시간이 많아 실행속도 느림.
- 저장 공간을 많이 차지하기도 함.
- 극도로 빠르거나, 주어진 자원을 극도로 활용해야 하는 곳은 불리 : 보안, 금융, 인공지능, 임베디 등 특수 목적 분야
3. 객체 지향 언어를 사용하면 좋은 곳
1) 많은 데이터를 다루는 프로그램, 규모가 큰 프로젝트 같은 경우
2) 요즘 어떤 프로그램이든 사용하는 데이터가 많아서, 객체 지향 프로그래밍이 더욱 빛을 발하는 시기
3) 극도로 빠른 실행 속도가 필요한 분야 또는 저장 장치나 성능이 제한적인 기기( 스마트 워치, 스마트 TV, 스마트 냉장고)에 들어가는 프로그래밍은 불리함.
반응형
'코딩배우기' 카테고리의 다른 글
8일차)프로그래밍 핵심 개념 in Python(return, optional parameter) (0) | 2020.09.05 |
---|---|
7일차)프로그래밍 핵심 개념 in Python(boolean, type) (0) | 2020.08.31 |
6일차)프로그래밍 핵심 개념 in Python(foramt, 포맷팅) (0) | 2020.08.28 |
5일차)프로그래밍 핵심 개념 in Python(숫자형, 문자열, 형변환) (0) | 2020.08.26 |
4일차)컴퓨터 개론-소프트웨어 이해하기 (0) | 2020.08.25 |