🌳 < 절차지향 (Procedural Programming) >

절차 지향 프로그래밍은 말 그대로 일련의 절차와 순서에 따라 프로그래밍이 동작하도록 설계되는 방식이다. 이는 '상태'와 '행동'을 별개로 취급하며, 프로그램은 일련의 함수들이 순차적으로, 혹은 필요에 따라 호출되면서 진행된다.

각 함수는 특정 작업을 수행하며, 데이터는 주로 함수 간에 인자로 전달된다.

 

절차 지향 프로그램은 간단한 프로그램에서는 잘 동작할 수 있지만, 프로그램의 규모가 커지고 복잡성이 증강할수록 절차 지향 프로그래밍의 한계가 드러나게 된다. 왜냐하면, 더 큰 프로그램에서는 Data와 그 Data를 조작하게 되는 함수들이 산재하게 되고, 이로 인해 코드의 유지보수가 어려워지게 된다. 

 

🌳 < 객체 지향 프로그래밍 (Object-Oriented Programming) >

객체 지향 프로그래밍은 프로그램을 일련의 독립적인 '객체'들의 집합으로 보는 프로그래밍 패러다임이다.

각각의 객체는 특정한 '상태'(데이터,속성,필드 등)와 '행동'(메서드)를 갖는다. 

 

 

< 표로 보는  절차지향과 객체지향 > 

절차지향형 프로그램은 말 그대로 이야기를 순서대로 써 나가듯이 프로그램을 구성하는 방식이다.

물론 절차 4 처럼 제어문을 사용해 실행 순서를 바꿀 수는 있지만, 그것 조차도 제어문의 절차로 진행되는 것이다.

 

반면 객체지향형 프로그램은 이 프로그램에서 사용되는 객체(자동차,엔진,운전자)를 생성하고,각 객체에 포함된 데이터(컬러,엔진,이름,면허번호,종류)와 기능(구동하기,전진하기,운전하기,장애물 감지하기)을 상호 호출함으로써 프로그램을 구성하는 방식을 말한다.

 

이 때 각 객체에 포함된 데이터는 '속성' 또는 '필드','인스턴스 변수' 라 하고, 기능은 '메서드' 라고 한다.


결국, 절차 지향 프로그래밍은 프로그램의 실행 순서와 구조에 집중하는 반면, 객체 지향 프로그래밍은 프로그램을 구성하는 개별 객체들과 그들 간의 상호작용에 집중한다. 

 

 

 

Reference : Do it! 자바 완전 정복

http://www.yes24.com/Product/Goods/103389317

 

Do it! 자바 완전 정복 - YES24

이 책은 ‘이제 막 프로그래밍에 입문한 사람’에게 꼭 필요한 기본기부터 ‘찐개발자’라면 꼭 알아야 할 내용까지 국내 집필서 중 가장 많은 도해와 그림을 이용해 설명한다. 특히 프로그래

www.yes24.com

 

+ Recent posts