기타/What I Learned
[TIL] 객체지향과 클래스
가죽방패
2022. 1. 3. 16:18
※ 객체지향
- 객체지향(Object oriented)는 프로그래밍을 조금이라도 배워봤다면 생소한 단어가 아닐것 이다.
객체지향 프로그래밍이란 데이터 중심적인 프로그래밍 기법으로 객체지향은 데이터와 이에 관련된 행위를 캡슐화한 객체(Object) 라는 개념을 토대로 프로그래밍을 하는 것이다.
예를 들어 노트북이라는 객체가 있다고 가정하면 노트북의 속성(attribute)은 색, 제조날짜, 모니터 크기 등이 될 수 있고
노트북을 켰을 때 배터리가 닳거나 배터리를 충전하는 상태 등은 메소드(method)로 나타낼 수 있다.
그리고 보통 소프트웨어의 규모가 커질수록 절차적 프로그래밍보단 객체지향적 프로그래밍 방식이 선호가 된다.
이는 객체지향 방식으로 잘 설계된 코드가 요주보수가 용이하고 재사용성도 증가되며 프로그래머의 실수도 줄여주기 때문이다.
○ 클래스
- 클래스(class)는 객체를 만들기 위한 틀이다. 틀이라는 것은 꽤나 추상적인 개념인데 우리 주변에 수많은 집의 모양과 특성을 생각해보면 이해가 쉬울 것 이다. 같은 모양의 아파트라 하더라도 내부의 모양이 다르고 동일한 내부 모양이더라도 주소가 다른식인 것 처럼 다양하다. 하지만 이렇게 차이점이 있다고 하더라도 우리는 사회적으로 정형화된 '집' 이라는 추상적인 개념이자 틀을 가지고 있기 떄문에 세세한 특징이 다르더라도 집이라고 인식을 하게 된다.
프로그래밍 관점에서도 집같이 추상화된 틀을 클래스라고 하는데 클래스를 통해 객체를 생성할 수 있다.