Study Functional Programming

함수형 스터디 왜 함?

프론트엔드 성능 최적화 스터디에서 함수형 코딩에 대해서 이야기가 나와서 관심을 가지고 막 찾아봤었는데 개념이 재밌어서 스터디를 하게 되었음.

스터디 시작하기 전에

  • 혼자서 함수형 프로그래밍이 뭔지 찾아봤었고 lodash 원리라던지 rxjs에 대해서 몇가지 글들을 읽으면서 혼자 공부하고 블로그 글도 쓸려고 정리했었음
  • 내 블로그 글 (opens in a new tab)

    사실 이때 공부한 내용과 책에서 읽은 함수형 프로그래밍 개념과 많이 달랐다. 음 아니다. 책에서 읽은 것들은 어떻게 보면 아주 실용적이고 기초적인 함수형 프로그래밍에 대한 개념이라면 lodash나 rxjs에서 쓰인 함수형 프로그래밍에 대한 개념은 아주아주 많이 심화된 버전이라고 보는게 나을지도?? 나중에 알고리즘 열심히 풀고 머리가 똑똑해진다면 소스코드를 뜯어보는 날이 올지도??

공부한 내용들

소감 (느낀 점?)

책 한 권 읽은 것도 성장이다.

  • ㅋㅋㅋㅋ 우선 책 하나 열심히 읽은 것도 성장 아닐까?

함수와 가까워 졌다.

코딩에서 함수라는게 뭘까? 라는 생각을 해본 적이 없던거 같다. 책을 다 읽고 생각해보니 함수는 그냥 개발자가 의도한 어떤 기능을 해주는 놈?이라고 생각할 수 있겠다. 당연한거지만 중요한 개념이다. 이 함수를 내 수족처럼 부리기 위해서는 꼬이지 않게 만들고, 복잡하지 않게 만들고, 똑똑하고 유연하고 단단하게 만들고 내가 의도한대로만 동작하게 만들어야 된다. 그래서 의존적이지 않고 함수는 하나의 기능만 담당하도록 만들고 액션, 계산, 데이터를 분리해서 생각해서 원본을 훼손시키지 않도록 하는 것이 중요한 개념인것 같다. 이렇게 말하면 좀 복잡하고 어려운 개념이라고 느껴질 수 있겠지만 잘 생각해보면 개발의 편의성을 가져다준 대부분의 라이브러리, 프레임워크가 이러한 원리로 설계되어 있고 동작한다.

  • (React, Nest) 와 같은 것들!

설계, 구조에 대해서 생각해보게 됨.

초보 개발자로서 그리고 프론트엔드 개발자로서 하나의 페이지를 구현한다고 하면 여러 컴포넌트, 큰 단위에서는 하나의 페이지를 설계하고 코드를 막 짜게 될 거 같은데 잘못 짜서 state 랑 props 끌어올리기, 이것도 안되면 전역상태 관리, 갑자기 하나 만드니까 딴거 안되고 이런 경험이 많았을텐데 앞으로는 이런 문제를 미리 좀 예방할수 있도록 코드를 짜게 되지 않을까?? 또 문제가 생기면 뭐에 엮여서 고장이 났는지 원인도 빠르게 찾지 않게 되었을까 라는 기대를 하게 됨.

어렵지 않은 책이라서 좋았다.

함수형 프로그래밍 하면 막 이상한 수학 공식 나와서 어렵게 느껴지고 실제로 적용이 가능할까? 혹은 개발자 홍대병, ㅋㅋ혹은 사춘기 중2병같은 겉멋 이 아닐까 라는 생각도 들었지만 전혀 그렇지 않았음! 오히려 스터디를 통해 시야를 넓히게 되었고 어려운 이론이 포함된 개념들이 아니라서 이해가 쉬웠고 책에서 나온 예시를 통해 실무에서도 빠르게 적용할 수 있을거 같았다.

스터디 좋았던 점

  • 운이 좋았다. 같이 참여했던 다른 분들이 너무 좋으신 분들이었고 열심히 해주셔서 너무 감사했음
  • 다양한 주제로 발표를 했다. 함수형 코딩 뿐만 아니라 프론트엔드, 백엔드, AI, 자바스크립트 이벤트 루프, 책을 읽고 느낀 점과 같은 혼자서 공부했다면 얻지 못했을 것들을 얻었다.
  • 작심삼일 전문인 내가 목표를 달성하는 보람찬 경험을 했음 ! ㅋㅎ

아쉬운 점

ㅋㅋㅋㅋ 조용하고 낯가리는데 내가 스터디리더 였음. 스터디가 하나를 공부하더라도 여러 사람 생각도 들어보고 경험을 나눌 수 있어서 엄청 좋은거라고 생각하는데 내가 말을 못하다보니 그런 분위기를 많이 만들진 못한거 같아서 아쉬움.(키보드 워리어임) 발표 연습을 많이 하자. 발표 준비도 열심히 하고 발표 준비만큼 동기부여가 잘되고 스스로에게 유익한 공부 기회를 주는 이벤트가 없는 거 같다. 그만큼 내 발표차례가 되면 열심히 공부하고 열심히 준비해서 말도 좀 잘할 수 있도록 노력해보자.

또 리액트 딥 다이브 스터디 진행하는데 많관부~