Skip to content

객체 지향 #
Find similar titles

Structured data

Category
Programming

객체 지향(Object oriented) 프로그래밍 이란? #

우리가 실생활에서 쓰는 모든 것을 객체라 하며, 객체 지향 프로그래밍은 프로그램 구현에 필요한 객체를 파악하고 각각의 객체들의 역할이 무엇인지를 정의하여 객체들 간의 상호작용을 통해 프로그램을 만드는 것을 말한다. 따라서, 객체 지향 프로그램은 객체와 객체간의 연결로 되어 있으며 각각의 객체 안에 자료구조와 알고리즘이 들어있는 것이다.

절차 지향객체 지향 #

절차 지향 #

절차 지향 모델링은 프로그램을 기능중심으로 바라보는 방식으로 "무엇을 어떤 절차로 할 것인가?"가 핵심이 된다. 즉, 어떤 기능을 어떤 순서로 처리하는 가에 초점을 맞춘다.

객체 지향 #

객체 지향 모델링은 기능이 아닌 객체가 중심이 되며 "누가 어떤 일을 할 것인가?"가 핵심이 된다. 즉, 객체를 도출하고 각각의 역할을 정의해 나가는 것에 초점을 맞춘다.

절차 지향 VS 객체 지향 #

  • 대형 프로그래밍의 경우 많은 기능을 수반하기 때문에 절차 지향보다는 객체 지향이 적합

    • 각 객체가 하는 역할이 많아도, 많은 역할들을 객체로 묶을수 있기 때문
  • 소형 프로그래밍의 경우 작은 기능을 수반하기 때문에 객체 지향보다는 절차 지향이 적합

    • 작은 기능을 객체 별로 나눌 경우, 오히려 복잡해질 수 있기 때문

객체 지향 프로그래밍의 특징 #

  1. 추상화(abstraction)

    • 객체들의 공통적인 특징(기능, 속성)을 도출하는 것
  2. 캡슐화(encapsulation)

    • 객체가 독립적으로 역할을 할 수 있도록 데이터와 기능을 하나로 묶어 관리하는 것
  3. 상속성(inheritance)

    • 하나의 클래스가 가진 특징(함수, 데이터)을 다른 클래스가 그대로 물려받는 것
  4. 다형성(polymorphism)

    • 약간 다른 방법으로 동작하는 함수를 동일한 이름으로 호출하는 것
    • 동일한 명령의 해석을 연결된 객체에 의존하는 것

Incoming Links #

Related Data Sciences #

Related Articles #

Suggested Pages #

0.0.1_20140628_0