ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [TIL]Day 11. JS - 클래스와 오브젝트
    IT 지식 2020. 9. 4. 22:40
    728x90

    1. 객체지향 프로그래밍

     

     객체지향 프로그래밍은 실제 세계의 운영방식을 따라하기 위해 추상화를 사용하는 프로그래밍 방식을 의미합니다. 쉽게 말하자면, 객체지향 이전의 프로그래밍은 함수들의 집합 혹은 단순한 컴퓨터의 명령어들을 모아놓은 목록이라는 기존의 관점을 뒤어서, 서로간의 관계성이 존재하는 객체들의 집합이라는 관점에서 코딩하는 방식을 말합니다. 

     예를 들어보죠. 객체지향 이전의 프로그래밍은 지시사항이 잔뜩 들어있는 순서대로 집을 짓는 방식이었습니다. 그 지시사항의 순서를 바꾸거나 다른 곳에서 활용하기 매우 어려운 구조였죠. 하지만 객체지향 프로그래밍이 등장한 이후에는 가공된 목재들을 만들고, 공구 도구들을 만들어서 각각의 요소들을 활용한 집짓기, 상자나 책장 만들기 등의 활동으로 변화되었다고 생각하면 됩니다.

     

    2. 객체지향 프로그래밍 기본 용어

     

    Class

    객체의 특성을 정의하는 것을 의미합니다. 클래스를 정의함으로써 개발자는 본인이 필요한 순간에 필요한 클래스를 가져다가 활용할 수 있습니다. 비유하자면 설계도를 만드는 것이라고 생각하면 되겠습니다.

     

    Object

    Class의 인스턴스를 의미합니다. 다르게 말하자면 클래스라는 청사진을 토대로 소프트웨어 세상에 구현된 실체라고 보면 됩니다. 여기서 객체와 인스턴스라는 용어간의 혼동이 일어나게 됩니다. 오브젝트가 인스턴스 같고 인스턴스가 오브젝트 같은 현상이 일어나죠(저의 경우에는 그랬습니다;;). 오브젝트(객체)와 인스턴스의 차이는 객체는 실현되기 직전의 클래스의 타입으로서의 상태를 말하고 인스턴스의 경우는 실현되어 작동된 구체적인 상태를 의미한다고 보면 됩니다.

     

    Property

    Property는 객체의 특성(예: 색깔)을 의미합니다. 어떤 모습을 가진 객체인지를 설정해주는 과정이라고 생각하면 됩니다.

     

    Method

    Method는 객체의 능력(예: 걷기)을 의미합니다. 보통 함수로서 정의하는 부분입니다. 앞서 property에서 객체의 모습을 정해주었다면, 객체가 어떤 일을 해야하는지 정해주는 부분이라고 생각하면 됩니다.

     

    Inheritance

    클래스는 다른 클래스로부터 특성들을 빌려올 수 있습니다. 타 클래스의 모습을 빌려온 후 거기에 추가적인 요소를 덧붙이면 같은 코딩을 두번하지 않아도 된다는 장점 때문에 쓰는 용어라고 생각하면 됩니다.

     

    3. 마치며 

    객체지향은 JS에서만 사용하는 것이 아니기 때문에 다른 프로그래밍 언어를 공부하면서도 자주 나올 수 있는 부분입니다. 그렇기 때문에 지금 잘 공부해 놓는다면 다른 프로그래밍 언어에서 이 개념을 마주했을 때, 더 수월하게 이해하고 받아들일 수 있다고 생각합니다.

    728x90

    'IT 지식' 카테고리의 다른 글

    [TIL]Day 13. 레이아웃의 모든 것  (0) 2020.09.15
    [TIL]Day 12. html/css 정리(5)  (0) 2020.09.14
    [TIL]Day 10. 파이썬의 자료형  (0) 2020.08.26
    파이썬이란 무엇인가?  (2) 2020.08.25
    [TIL]Day 9. Java script 함수에 대하여  (0) 2020.08.22

    댓글

Designed by Tistory.