본문 바로가기

Java/이론

[Java] 객체지향 프로그래밍

 

 

 

 

//강의장이 있는 건물 뒤편에는 카페가 하나 있는데

// 그 카페의 정보를 표현...

// 카페 이름이 발도스

// 카페 위치가 건물 뒤편

// 거리가 100.3m

//출력

 

주석으로 처리된 요구사항을 출력해보려고 합니다.

 

이제는 쉽게 느껴집니다.

 

import java.util.Scanner;

public class OMain1 {

public static void main(String[] args) {

String s[] = new String[3];

s[0] = "발도스";

s[1] = "건물 뒤편";

s[2] = "100.3";

System.out.println("카페이름은 : " + s[0]);

System.out.println("카페위치는 : " + s[1]);

System.out.println("거리는 : " + s[2]);

}

}

 

 

이렇게 한가지 함수에 코드를 짜서 결과를 내는 것을

 

절차지향 프로그래밍이라고 합니다.

 

절차지향 프로그래밍에서는 변수를 하나 덜 쓴다던지 효율적으로 코드를 짰었습니다.

 

조건문, 반복문 등을 잘 활용하는게 핵심이었죠.

 

장점은 처리속도나 실행속도가 빠르다는 점이 있습니다.

 

이런 프로그래밍과 달리 객체지향 프로그래밍은 1960년대 이후 생겼고

 

보급화된 것은 1980년대 이후부터인데

 

Java가 1990년에 등장한 이후로 본격적으로 사용되기 시작했습니다.

 

이전에는 C로 활용되기도 했었습니다.

 

목표는 실생활을 표현하고 묘사하자는 것인데

 

우리가 살고 있는 현실을 모델링 함으로써

 

접근하기 쉬운 코딩을 짜는 것이 목표입니다.

 

장점은 코드의 재사용이 용이하고,

 

유지보수가 쉽고,

 

대규모 프로젝트에 적합합니다.

 

즉 , 코드를 효율적으로 짜는 알고리즘의 시대에서

 

유지보수의 시대로 변화해서 보기 쉽게 코드를 짜자는

 

패리다임이 변경된 것을 반영한 것이 객체지향 프로그래밍(Object Oriented Programming)입니다.

 

핵심은 객체(Object) 를 사용한다는 점인데 객체는 실생활에 존재하는

 

모든 것을 의미합니다.

 

그리고 클래스 안에서 만들어진 객체를 해당 클래스의

 

인스턴스라고 부릅니다.

 

예컨데 사람을 표현하려면 사람의 이름과 나이 같은 속성,

 

아니면 웃는것이나 걷는 것과 같은 동작을 보여줄 수 있습니다.

 

붕어빵을 만드려면 붕어빵 틀이 필요하듯이

 

객체를 만드려면 클래스라는 것이 필요합니다.

 

때문에 객체 지향프로그래밍은 클래스를 많이 만들게됩니다.

 

정리하자면 객체를 사용해서 하나의 완성품을 만들어내는 프로그래밍 기법이

 

객체지향 프로그래밍입니다.

 

 

 

 

 

'Java > 이론' 카테고리의 다른 글

[Java] 전역변수  (1) 2024.12.06
[Java] 객체와 속성  (0) 2024.12.06
[Java] Call By Value, Call By Reference  (2) 2024.11.29
[Java] 디버깅  (0) 2024.11.29
[Java] continue  (0) 2024.11.29