초기의 프로그래밍 언어,
C,Fortran등
순차적인 명령의 조합
단순히 순차적인 명령 수행이 아니라 루틴, 서브루틴, 메소드, 함수 등(이를 통틀어 프로시저라고 한다.)을 이용한 프로그래밍 패러다임
어떤 데이터를 취급하는 것인가에는 그다지 관심이 없었던 것
나무위키 - 절차적 프로그래밍
나무위키 - 객체 지향 프로그래밍
조금만 복잡해지면 순서를 나타내는 것이 거의 불가능해질 정도로 꼬여버린다
= 가독성이 떨어지고 유지보수가 어렵다
구조적 프로그래밍
= 프로그램을 프로시저 단위로 나누고 프로시저끼리 호출
= 큰 문제를 작은 문제들로 나누어 해결하기 때문에 하향식(Top-down) 방식이라고도 함

= 데이터의 처리 방법을 구조화했을뿐, 데이터 자체는 구조화하지 못 함 (변수 이름을 다 써서 이름 짓기도 힘든 상황도 발생)
= 실행 상태를 저장할 방법이 없어지는 문제 (상태에 따라 명령을 다르게 처리해야 할 때)
이를 극복하기 위한 대안으로...
큰 문제를 작게 쪼개는 것이 아니라, 먼저 작은 문제들을 해결할 수 있는 객체들을 만든 뒤, 이 객체들을 조합해서 큰 문제를 해결하는 상향식(Bottom-up) 해결법
만드는 방법은 전 포스트를 참조