객체: 코드(데이터+함수)를 모아 하나의 완성된 부품으로 만들어 놓은 것, 장난감 레고를 생각해보면 됨

객체지향: 객체들을 조립하여 하나의 완성된 프로그램을 만들어나가는 프로그래밍 방식, 

현실세계의 문제를 풀어내기 용이함

(ex: 레고를 조립하여 작품을 만들어낸다.


절차지향: 문제해결중심의 사고방식

대표적인 언어로 C언어가 있다.

-------------------------------------


객체지향 개발방식 C++ 예제:

// 이미지 클래스

Class Image{

...

public:

Makeimage(int width, int height){...}

setColor(int color){...}

};

// 문서 클래스

Class Document

   ...

   public:

   void SaveImage(Image img);

   ... 

};

...

    Document doc = new Document(); // document 객체 생성, 새로운 문서를 생성한다.

    Image img; // image 객체 생성

    img.Makeimage(100,100); // 넓이와 높이가 100인 이미지를 생성한다.

    img.setColor(blue); 

    doc.SaveImage(img); //문서에 이미지를 저장한다.

...


객체지향언어: 객체지향 개발방식을 지원하는 프로그래밍 언어

C++, C#, VB.NET, Java 등등

객체지향 개발의 장점: 코드재활용으로 인한 개발시간의 단축, 프로그램 수정 및 유지보수가 쉬워진다.

프로젝트가 작을 때는 절차지향 프로그래밍 방식이 불편함이 없지만, 프로젝트가 복잡해지고 커지는 경우 객체지향 프로그래밍 방식의 장점을 느낄 수 있게된다.

객체는 그 자체로 완전하게 사용할 수 있는 부품이 되어야 하므로 예외처리 기능도 포함된다. - C++의 try, catch가 존재하는 이유


저작자 표시 비영리
신고

'메모용 > C/C++' 카테고리의 다른 글

C++ 객체지향  (0) 2017.10.21
블로그 이미지

콩 lee하이

거대한 콩입니다.