디자인 패턴과 함수형 프로그래밍 회고 WIL

anvel·2025년 4월 25일

항해 플러스

목록 보기
19/39

항해 플러스 프론트엔드 - 디장인 패턴과 함수형 프로그래밍

디자인 패턴과 함수형 프로그래밍

이번 과제는 평소에는 약간 간과한 함수들의 분류에 대하여 집중적으로 학습하는 시간이었습니다.


디자인 패턴

디자인 패턴 자체는 발제 시간을 통해서 학습을 하였습니다. 싱글톤이나 팩토리 등등.. 코딩을 배우면서 한번씩은 들어본 패턴들이었는데, 전공자 만큼의 집중적인 교육을 받진 않아 막연하게 알고 있거나 샘플 코드를 통짜로 외우는 수준의 지식만 가지고 있었는데, 발제 참고 자료를 통해 어느정도 정보를 다듬는 시간이 되었습니다.

다만, 발제 마지막에도 강조하였듯이, 이미 프론트 엔드 개발 환경에서는 먼저 겪어온 선배들이 프레임워크와 라이브러리에서 이미 녹여낸 부분이고, 현대의 개발자들은 잘 마련된 기반 위에서의 조금 더 로직에 집중할 수 있는 환경을 활용하면 된다 라는 점을 다시한번 확인하였습니다.


함수형 프로그래밍

함수형 프로그래밍이란, 입력과 결과가 예측이 가능한 함수, 즉 순수 함수와 수학적 함수들을 기반으로한 프로그래밍 스타일을 말하며, 한가지의 함수가 데이터의 조작을 최소화하고, 이를 조합하여 추상화하는 개념을 의미합니다.

현대의 프론트엔드 개발도 컴포넌트 단위를 넘어서까지 함수형 프로그래밍 스타일을 도입함으로써 ~~하면 ~~일 것이다 하는 테스트의 용이성을 확보하고, 구조를 선언적으로 프로그래밍하여 읽기 쉬운 코드로 제공함으로써 소통이 용이해지고 개발 생산성을 증가 시킬 수 있는 형태로 발전해 왔습니다.


이번 과제를 통해 겪은 경험

이번 과제는 사실 월요일 하루 휴가를 통해 코드를 정리하는 과정은 빠르게 끝났습니다. 훅 내의 함수들은 그 함수 기능 하나하나만을 갖도록 하고, 이를 도와주는 유틸함수들은 외부에서 가져다 쓰는 방식으로 수정했습니다. 또, 함수 내에서도 완벽하게 계산만 진행하는 함수들은 외부의 영향없이 주입과 결과를 가져오도록 수정을 완료했습니다.

현업에서도 많은 함수를 정리하는 업무를 가끔씩 진행하는데, 이번 과제를 통해 배운 점들을 활용한다면 수만 줄의 코드도 조금씩 개선해 나갈 수 있을 것 같은 자신감을 얻었습니다.


만족하고 지속할 부분

이번주는 쿠버네티스 과정과 함께 본격적으로 진행하는 기간이었습니다. 오늘까지 해서 강의는 모두 수강하여 내일부터는 다시 프론트엔드 과정에 집중하고, 쿠버네티스 과제만 중간중간 챙기면 되는 상태로 만들었습니다.

앞으로도 다른 학습 과정을 병행하게 될텐데, 항해 플러스 만큼 당장에 도움되는 업무는 아닐 것이 분명하여, 최대한 단시간에 다른 과정을 처리하는 방향으로 가고, 로직에 대한 심도있는 고민은 프론트엔드 과정에서 풀어나가게 될 것 같습니다.


시도할 부분

깔끔한 코드를 한번 샘플 코드로 만들어 보려고 합니다. 이직과정 중 포트폴리오를 준비하거나, 본인의 샘플코드를 제출하는 과정도 있는 경우가 있었는데, 이번 기회에 확실하게 좋은 코드, 누가봐도 모난 곳 없는 코드 샘플을 구성해보고자 합니다.

그렇다고 너무 코드 자체에 집중하기보다 먼저, 제공하기 좋은 컨텐츠가 뭐가 있을 지 이번 한주간 탐색하는 시간을 가져보고, 차주 방학기간에 실제 구현으로 넘어가보도록 하겠습니다.


마치며

어떤 일을 하던지, 절반 정도 왔을 때, '벌써?' 혹은 '아직?' 하는 포인트 들이 있었습니다.
항해 플러스 과정을 겪으면서도, 과제를 받는 그 순간에는 아직 5번이나 더 남았단 말이야? 하는 마음과 벌써 절반이나 해결해버렸네? 하는 마음이 동시에 공존하고 있습니다.

과제라는 그 단어 자체에서 느껴지는 부담감이 첫번째 일것인데,
막상 코드를 분석하고 출제자의 의도를 파악하는 과정에서 부담감이 해소되며 내가 필요한게 무엇인지 로드맵이 그려지면서 현업에서의 갈증이 해소되는 느낌들을 받았습니다.

다들 사수가 없다. 혼자서 일한다. 하는 분들이 많은데, 지금 팀내에서 사수역할을 하는 입장에서 사수도 별것 없는 것 같다고 늘 느끼고 있습니다. 스스로 부족하다 느끼고 이번과정을 선택했었는데, 들이는 시간과 과제의 퀄리티가 너무 가심비 높은 과정이 아닌가 느끼고 있습니다.

절반을 해결해온만큼 나머지 절반도 확실하게 체득하여 현업에서 활용할 수 있도록 더 노력하겠습니다.

0개의 댓글