Object-Oriented Programming절차적 프로그래밍 // 사용파트+구현파트 int main() { printf("Hello, World!"); printf("Hello, World! Again"); return 0; } 입력을 받아 명시된 순서대로만 처리하고 결과를 내는 방식구조적 프로그래밍 //사용파트 int main() { say("Hello, World!"); say("Hello, World!"); return 0; } //구현파트 int g_sayCount = 0; void increseSayCount() { g_sayCount++; } void say(string message) { if(g_sayCount==0) hello(message) else helloAgain(message); increseSayCount(); } void hello(string message) { printf(message); } void helloAgain(string message) { printf(message + "Again"); } 절차적 프로그래밍 방식의 개선된 형태 프로그램을 함수단위로 나누고 함수끼리 호출하는 방식큰 문제를 해결하기 위해 문제를 작은 단위들로 나누어 해결하는 방식 Top-Down 방식객체지향 프로그래밍 //사용파트 int main() { TalkMan talkMan= new TalkMan(); talkMan.say("Hello, World!"); talkMan.say("Hello, World!"); return 0; } //객체 정의파트 public class TalkMan(){ public int sayCount = 0; public void increseSayCount() { sayCount++; } public void say(string message) { if(sayCount==0) hello(message) else helloAgain(message); increseSayCount(); } public void hello(string message) { printf(message); } public void helloAgain(string message) { printf(message + "Again"); } }
객체지향 프로그래밍
Object-Oriented Programming
절차적 프로그래밍
입력을 받아 명시된 순서대로만 처리하고 결과를 내는 방식
구조적 프로그래밍
절차적 프로그래밍 방식의 개선된 형태 프로그램을 함수단위로 나누고 함수끼리 호출하는 방식
큰 문제를 해결하기 위해 문제를 작은 단위들로 나누어 해결하는 방식 Top-Down 방식
객체지향 프로그래밍