✅ 절차 지향 프로그래밍 vs 객체 지향 프로그래밍
✏️ 절차 지향 프로그래밍
- 절차 지향 프로그래밍은 이름 그대로 절차를 지향한다. 쉽게 이야기해서 실행 순서를 중요하게 생각하는 방식이다.
- 절차 지향 프로그래밍은 프로그램의 흐름을 순차적으로 따르며 처리하는 방식이다. 즉 “어떻게”를 중심으로 프로그래밍 한다.
✏️ 객체 지향 프로그래밍
- 객체 지향 프로그래밍은 이름 그대로 객체를 지향한다. 쉽게 이야기해서 객체를 중요하게 생각하는 방식이다.
- 객체 지향 프로그래밍은 실제 세계의 사물이나 사건을 객체로 보고, 이러한 객체들 간의 상호작용을 중심으로 프로그래밍하는 방식이다. 즉, “무엇을” 중심으로 프로그래밍 한다.
✏️ 차이
- 절차 지향은 데이터와 해당 데이터에 대한 처리 방식이 분리되어 있다. 반면 객체 지향에서는 데이터와 그 데이터에 대한 행동(메서드)이 하나의 ‘객체’ 안에 포함되어 있다.
✅ 음악 플레이어 만들기
🔔 요구 사항
- 음악 플레이어를 켜고 끌 수 있어야 한다.
- 음악 플레이어의 볼륨을 증가, 감소할 수 있어야 한다.
- 음악 플레이어의 상태를 확인할 수 있어야 한다.
🖥️ 출력 예시
음악 플레이어를 시작합니다.
음악 플레이어 볼륨: 1
음악 플레이어 볼륨: 2
음악 플레이어 볼륨: 1
음악 플레이어 상태 확인
음악 플레이어 ON, 볼륨 1
음악 플레이어를 종료합니다.
✏️ MusicPlayerMain1
package oop1;
public class MusicPlayerMain1 {
public static void main(String[] args) {
int volume = 0;
boolean isOn = false;
isOn = true;
System.out.println("음악 플레이어를 시작합니다.");
volume++;
System.out.println("음악 플레이어 볼륨: " + volume);
volume++;
System.out.println("음악 플레이어 볼륨: " + volume);
volume--;
System.out.println("음악 플레이어 볼륨: " + volume);
System.out.println("음악 플레이어 상태 확인");
if (isOn) {
System.out.println("음악 플레이어 ON, 볼륨: " + volume);
} else {
System.out.println("음악 플레이어 OFF");
}
isOn = false;
System.out.println("음악 플레이어를 종료합니다.");
}
}
🖥️ 실행 결과