언어를 처음 배우기 시작하면, "객체지향 프로그래밍이다"는 말을 자주 볼 수 있다. 내가 아는 객체라면 { } 객체 타입 이것밖에 안떠오르는데 객체지향 프로그래밍이 도대체 무엇일까? 객체지향와 절차지향를 비교해서 이해해볼 수 있다. 두 개념을 알기 위해서는 '프로시저'와 '의존'을 알아야 한다. '프로시저 '와 '의존성 '을 먼저 짚고 넘어가보자. 프로시저 프로시저는 데이터를 활용해서 로직을 처리하는 함수를 말한다. 특정 프로세스를 절차적으로 기술해놓은 것으로 절차적으로 처리하고자 하는 명령어들의 집합을 의미한다. 추가적으로, 프로시저와 함수의 차이는 무엇일까? 함수도 '명령어 집합'이라는 의미에서 일종의 프로시저로 볼 수 있다. 둘을 비교하는 것이 애매하기는 하나 강력한 차이라면 'side effect..