프로그래밍을 하다보면 패러다임에 대한 이야기를 자주 접하게 된다.
어제 React의 Suspense 적용과 Java의 stream을 공부하면서 선언형 프로그래밍을 자꾸 마주치게 되어 적어본다.
나는 '명령형', '선언형'을 따지기 보다는 추상화 단계가 올라갈수록 자연스럽게 선언형의 방향으로 나아가는 것이 아닌가? 라는 생각을 한다.
추상화를 진행하면서 '어떻게-How'를 감추고 '무엇-What'을 보여주게 되기 때문에, 우리가 사용하는 framework나 api들은 선언형의 방향으로 나아가나는 것이라고 생각한다.
추상화 레벨을 높일수록 복잡도도 증가하고, 입맛에 맞는 내부로직 수정이 어렵기 때문에, 적당한 레벨에서 코드를 작성하는게 중요하다고 생각이 든다. 하지만 난 높은 추상화를 추구하는 편인듯..