본문 바로가기

BackEnd/구 생활코딩 자바

객체지향에 대해

반응형

1. 절차 지향 프로그래밍 : procedural programming


method를 다른 언어에서는 function, procedural이라고 한다.


자바에서는 절차 지향 프로그래밍을 method programming 으로 불리면서


메소드를 이용해서 프로그램을 정리정돈하는 기법을 말한다.


즉, 메소드를 이용해서 작은 부품을 만들고 이것을 결합해서 더 큰 프로그램을 만들어가는 


테크닉이 procedural programming이다. 많은 컴퓨터언어가 이 패러다임을 따른다. c언어등.


그런데 여기서 더 나아가 객체지향 프로그래밍이 나왔다.


2. 객체지향 프로그래밍 : Object-Oriented Programming


2-1) 객체란?


서로 연관된 메소드와 변수를 모아서 그룹핑하고


이름을 붙여서 정리정돈하고 싶어져서 클래스가 나왔다.


즉, 객체는 변수와 메소드를 그룹핑한 것이다. 다른 말로 객체는


상태(state)와 행위(behave)로 이루어진것인데, 상태는 객체가 가진 변수, 행위는 메소드를 의미한다.


서로 연관되어있는 상태와 행위를 그룹핑해둔, 카테고라이징한것을 일종의 객체라할 수 있다.


그룹핑된 하나하나의 단위를 객체라한다. 


비유하자면 파일과 디렉토리가 있을 때 메소드나 변수가 파일이라면 


이 파일을 그룹핑하는 디렉토리가 객체라고 할 수 있다.


하나의 객체안에는 그 객체가 가지고있는 취지 예를들어 본문인지,댓글인지에 따라서


이와 연관된 변수와 메소드를 객체라는 단단한 껍데기안에 가둬둔것이고


연관성이없는 다른 로직과 구분해주는것을 하는 역할이 객체라 할수 있다.


데이터와 기능이 클래스로 캡슐화된 컴퓨터 자원의 묶음을 객체라한다.


즉, 그룹화시켜서 분류하는것 이렇게 분류해두면 다른곳에서도 재활용성이 높아진다.


클래스라는 붕어빵 틀에 밀가루와 반죽팥이 찍혀서 붕어빵이 나오게됨


클래스라는 모양틀에 흙을 넣고 구우면 벽돌이 나옴



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


클래스를 중심으로 프로그램의 구조를 만들어가는 컴퓨터 프로그래밍 방법론을


객체지향 프로그래밍이라 한다. 즉 , 객체지향 프로그래밍은 로직을 객체로 만드는 것이다.


이 객체들을 마치 레고 블럭처럼 조립해서 하나의 프로그램(완제품)을 만드는 것이 


객체지향 프로그래밍이라고 할 수 있다.


객체 지향 프로그래밍은 좀 더 현실을 잘 반영하기 위한 노력의 산물이다


객체지향이란 어떤 프로그래밍 방식, 방법론을 말하는데, 만들어진 이유는 프로그래밍을 더쉽


게 그리고 더잘하기 위해서이다. 


3. 객체지향과 관련된것들


부품화,은닉화,캡슐화,인터페이스 : https://cg-developer.tistory.com/404


- 인스턴스 : 분신술이라 할수 있는 인스턴스를 만들수 있을것이고


- 상속 : 부모클래스의 기능을 자식클래스에게 물려주는 상속을


- 인터페이스 : 클래스의 설계도라고 할수있는 인터페이스












반응형

'BackEnd > 구 생활코딩 자바' 카테고리의 다른 글

JDK,JRE,JVM,JAVA SE,ME,EE  (0) 2020.03.16
추상화-abstract  (0) 2020.02.06
런타임과 컴파일  (0) 2020.02.03
클래스패스란?  (0) 2020.02.03
프로세스(process)와 스레드(thread)  (0) 2019.12.14