웹 프론트엔드 개발을 독학한지 어느덧 3달이라는 시간이 지났습니다. 실제로 제대로 개발을 공부한건 한달 남짓이지만 그 동안 무엇을 공부했고 구현해냈는가에 대해 적어보려고 합니다.
고등학교에서 약 2년, 대학에서 1년동안 프로그래밍을 공부하면서 처음으로 프레임워크를 이용하여 개발을 하기 시작했습니다.
프레임워크에 대해 막연한 두려움이 있었지만 CRA(Create-React-App)덕에 쉽게 입문 할 수 있었습니다.
따로 설정해주지 않아도 babel을 사용할 수 있고 npm install 명령어로 간단하게 모듈을 설치 할 수 있는 메리트는 개발에 입문을 하면서 큰 장점으로 다가왔습니다.
하지만 여러 모듈을 사용할때 충돌이 일어나거나 갑자기 오류를 일으키면 대처하기가 어려웠습니다. 직접 웹팩을 이용한 번들링을 해보면서 내가 설치한 모듈이 어느 위치에 있으며 버전정보는 어디서 보는가? 를 파악할 수 있는 상태가 되었습니다. 개발 공부하면서 공식문서와 Stack Overflow의 중요함을 몸소 느낄 수 있는 시간이었습니다.
리액트를 이용하더라도 언제까지나 Todo List만 구현하고 있을 수는 없었습니다. 직접 사이트를 만들고 호스팅 하는 것을 눈 앞의 목표로 잡고 있었기 때문에 그에 대한 초석으로 로컬스토리지를 이용한 로그인이 아니라 새로운 로그인 방식을 고민했습니다.
먼저 Firebase를 initializing하고 , 사용자 정보를 받아오고, 인증메일을 보내는 과정은 공식문서를 공들여 읽는 습관을 기르게 해주었고 이 과정에서 자바스크립트 기본기 부족으로 고생하며 기초의 중요함을 다시 느꼈습니다.
그리고 Firebase에서 기본으로 제공하는 이메일 인증&비밀번호 재설정 화면을 그대로 사용하지 않고 직접 커스텀하여 제작하기도 했습니다. 만들때 구글링 해봤었는데 이 화면을 커스텀해서 만드는건 아무리 찾아도 안나와서 혼자 꾸역꾸역 완성했습니다. 시간나면 이 부분은 어떤식으로 개발했는지 따로 기록으로 남기려고 합니다.
최근에 가장 어려워하는 부분입니다. 프로젝트에 참여하기 시작하고서 Docker와 Git Hub를 이용해서 협업하고 있는데 로컬에서는 분명 잘 돌아갔는데 개발에서는 안 돌아 가는 경우가 많았습니다. 서버에 대한 지식이 거의 없고 데브옵스에 관한 지식도 당연히 거의 전무해서 요즘에는 프론트쪽 공부보다 docker, nginx 등 서버나 개발 환경에 관한 공부를 더 많이 하고 있습니다. 복학하면 서버쪽 공부도 열심히 해야겠다고 느낍니다
제게 개발 공부를 시작하고 생긴 가장 큰 변화는 내가 무엇을 공부해야 하는가를 알기 시작했다는 것입니다.
뭐든 구현해보기 시작하고, 모르면 남의 코드 가져오고, 그 코드를 가지고 놀아보면서 부족한 점을 알고 채워나가는 과정을 즐기기 시작한 2달이었던거 같습니다.
3월에는 이 회고록을 쓰고 있는 지금보다는 할 줄 아는게 더 많아졌으면 좋겠네요.