🎯 프로그래밍 패러다임 : 3가지 패러다임 구조적 프로그래밍 객체지향 프로그래밍 함수형 프로그래밍 ❗ 구조적 프로그래밍 1) 탄생과정 "데이크스트라"는 모듈을 증명 가능하게 하는 바로 그 제어 구조가 모든 프로그램을 만들 수 있는 제어 구조의 최소 집합과 동일하다는 사실을 발견했다. (최소 집합은 순차, 분기, 반복 3가지로 표현할 수 있다는 것) 그렇기에 우리는 모두 구조적 프로그래머이며, 선택의 여지는 없다. 2) 기능적 분해 모듈을 증명 가능한 더 작은 단위로 재귀적으로 분해할 수 있게 되었고, 결국 모듈을 기능적으로 분해할 수 있음을 뜻한다. 3) 엄밀한 증명은 없다. 무언가가 올바른지를 입증할 때 사용하는 전략에 유클리드 방식 같이 수학적인 증명만 있는 것은 아니다. 상당히 성공한 또 다른 전략..