이전 면접에서 ‘함수형 프로그래밍은 절대 주류가 될 수 없다.’ 라는 이야기를 들었지만
결국 돌아오게 되었다.
이유는 프로젝트를 진행하며 무지성이라고 생각되는 코드들이 많아서 이다.
무지성 이라고 판단한 이유들
크게 4가지 정도라고 생각이 들었다.
암튼 이런것 때문에 클린 코드를 학습하며 글쓰고 발표도 하고 , 적용도 하고 팀원과 토론도 많이 했는데, 선언형 프로그래밍을 지향하고 싶다는 생각이 들었다.
원래 읽던책 함수형 코딩 이라는 책은. 함수형 기법 보다. 좋은 코드나, 컨벤션 설계 분리의 근거 등을 많이 언급하던 기억이 나서 이걸 지루할때 읽기로 했다. (블로그 정보들은 한계가 있다고 생각이 든다.)
이전에는 함수형 프로그래밍의 기법(파이프, 커리, 고..)에 집중 하였던것 같아 근본에 대한 답변을 잘 못 하였던것 같은데, 함수형 → 선언형 프로그래밍 이라고 생각을 고쳐먹고 기초부터 차근차근 연습하며 프로젝트를 진행하고 있다.
사실 파이프, 커리 등등 의 함수가 사용되면 코드가 잘 분리되지 않았을 경우 복잡성이 올라가고 그당시에는 무엇을 숨기고 무엇을 노출해야할지 명확한 근거가 없었던 것 같다.
생각을 하고 코딩을 했지만 설명을 못해서 무지성 처럼 보이는? 그래서 기본을 잘 지켜서 명확한 이유를 바로 대답할 수 있어야한다 마음 먹었다. ‘이건 이래서 그렇게 했고 저건 저래서 그랬어요’ 보다. ‘이 부분은 중요한 부분이라 구현을 여기서 했고 저부분은 계산 부분이라 추상화 했습니다.’ 라고 답할 수 있는 프로젝트가 되길