본문 바로가기

CS/Javascript

객체지향 프로그래밍이란?(feat. javascript)

반응형

객체지향 프로그래밍이 무엇인지, 특징은 무엇인지 간단히 정리해보자. 예전에 강의에서 객체지향 프로그래밍과 그 특징에 대해 배웠는데 처음엔 너~~무 이해가 안돼서 몇 달간 요약했던 글을 다시 보고 다시 봐도 이해가 안됐다. 배운지 한 6개월이 지난 지금 다시 보니 이해가 잘된다. 역시 첫 술에 배부를 수 없고, 기적에는 시간이 반드시 필요하다.

https://bbeeyaks-moment.tistory.com/entry/section2unit2Javascript-%EA%B0%9D%EC%B2%B4%EC%A7%80%ED%96%A5-%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%98%EB%B0%8D921

 

section2/unit2/Javascript 객체지향 프로그래밍(9/21)

블로깅 주제 Javascript 객체지향 프로그래밍 1. 지금 현재, 당신의 기분이나 느낌을 표현해 주세요. 어제가 대망의 섹션2 첫날이였으나, 고차함수를 공부하며 하루종일 머리가 뒤죽박죽했었다. 결

bbeeyaks-moment.tistory.com

이건 작년에 내가 썼던 글인데, 블로그 형식도 엉망진창이고 내용 정리도 제대로 안되어있지만 나에게는 너무 귀여운 추억같은 글이다 :)

OOP란?

하나의 모델이 되는 청사진(blueprint)을 만들고, 그 청사진을 바탕으로 한 객체를 만드는 프로그래밍 패턴이다.

객체란 ? 프로그램에서 사용되는 데이터 또는 식별자에 의해 참조되는 공간을 의미하며, 값을 저장 할 변수와 작업을 수행 할 메소드를 서로 연관된 것들끼리 묶어서 만든 것이다.

자바스크립트는 여러 가지 특성으로 객체지향 언어의 특징을 구현해낼 수 있다. 

클래스, 생성자, 메서드
상속
캡슐화

 

OOP의 특징

  1. 상속 : 클래스의 속성과 행위를 하위 클래스에 물려주거나 하위 클래스가 상위 클래스의 속성과 행위를 물려받는 것을 말한다. 새로운 클래스가 기존의 클래스의 데이터와 연산을 이용할 수 있게 하는 기능이다.
  2. 다형성 : 하나의 클래스 내부에 같은 이름의 행위를 여러개 정의하거나(오버로딩) 상위 클래스의 행위를 하위 클래스에서 재정의(오버라이딩)하여 사용할 수 있다.
  3. 캡슐화 : 데이터와 기능을 하나의 단위로 느슨한 결합으로 묶는 것이다. 속성과 기능을 정의하는 변수와 메소드를 클래스라는 캡슐에 넣어서 분류하는 것으로 재활용이 원활하다는 장점이 있고, 내부 데이터나 내부 구현이 외부로 노출되지 않도록 만드는 은닉화를 가능하게 한다.
  4. 추상화 : 공통적인 속성이나 기능을 묶어서 타입을 정의하는 것이다. 불필요한 정보는 숨기고 중요한 정보만을 표현함으로써 프로그램을 간단하게 만드는 것이다.

 

이해하는데에 참고한 블로그)

정리가 정말 잘 되어있다! 객체 지향 프로그래밍의 특징을 이해하는데 도움을 준 블로그이다 :)

https://jongminfire.dev/%EA%B0%9D%EC%B2%B4%EC%A7%80%ED%96%A5-%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%98%EB%B0%8D%EC%9D%B4%EB%9E%80

 

객체지향 프로그래밍이란?

객체 지향 프로그래밍이란? 객체 지향 프로그래밍 (Object-Oriented Programming, OOP…

jongminfire.dev

 

반응형