요약
이 책은 프런트 엔드 개발자가 되기 위해 필요한 전반적인 개념들을 소개하고 학습하는 방법을 알려주는 책이다.
메모
프론트 엔드가 하는 일
- UX/UI 개발
- 재사용이 가능한 UI 개발
- 애니메이션 구현
- 웹 사이트 성능 최적화
- 테스트 코드 작성
- 디버깅
- 다른 개발자와 협업
프론트 엔드 개발자를 뽑을 때
- 기본 언어 및 프레임워크 숙련도
- 평균 이상의 UI/UX 감각
- 문제 해결 능력
- 협업 및 커뮤니케이션 능력
- 학습 자세
깨달음
막연하게 프론트엔드 개발자가 되고 싶어서 다방면으로 알아보던 와중에 이 책을 만나게 되었다. HTML, CSS, JS만 열심히 그리고 깊게 공부하면 되겠지. 이런 생각들을 바꾸던 계기가 되었다.
우선 넓고 얕게 아는 것보다 좁고 깊게 아는 것이 중요하다. 가령, DOM이 어떻게 동작 하는지, 그리고 네트워크가 어떻게 패킷을 주고 받는 지 개념을 설명할 수 있을 정도로 알아야 한다. 그리고 컴퓨터 언어적인 면에 있어서는 CSS의 선택자가 어떤 방식으로 선택되는지 우선순위는 어떻게 바뀌는지 그리고 Javascript는 어떤 과정으로 객체를 다루는지 등이다.
프론트 엔드가 되기 위해서는 HTML, CSS, 자바스크립트, 버전 관리 시스템, CSS 프레임워크, 자바스크립트 프레임워크, 네트워크 통신(API), 배포, HTML/CSS 심화 기술(전처리기, 후처리기), 타입스크립트, 마지막으로 테스트에 관해 알아야 한다. 나열하니 정말 많아 보인다. 그럼에도 우선순위를 정리하고 하나씩 파해치고 알아가다 보면은 금방이다.
나는 컴퓨터 공학 학부생이고 이전에 HTML, CSS를 깊게 다뤘고 지금은 JS를 다시 보고 있다. 버전 관리 시스템과 자바스크립트 프레임워크, 네트워크 통신에 대해 얕은 지식이 있고 잠시동안 배포를 해본 경험이 있다. 이를 바탕으로 계획을 짜야겠다.
첫째로 프론트 엔드가 사용하는 기본 언어에 대해서 공부하는 것이 중요하다. HTML, CSS, JS를 깊게 파야겠다. 가볍게 다룬 책을 읽고 이해가 된다면 깊게 다룬 책을 읽어야겠다. 이런 와중에도 이해가 안 가는 부분이 있다면 인터넷에 검색하고 공식 문서를 활용해야겠다.
두번째로 타입스크립트를 배워야겠다. 마찬가지로 책을 읽고 공식 문서를 활용하면서 실습으로 하나하나씩 도전해야겠다. 왜 타입스크립트가 필요한지 그리고 어떤 경우에 활용하면 좋은지 알아보면서 그리고 정리하면서 공부해야겠다.
세번째로 자바스크립트 프레임워크, CSS 프레임워크를 공부하면서 사이드 프로젝트에 내가 배운 지식들을 활용해야겠다. 이때도 책과 공식 문서를 활용한다.
마지막으로 사이드 프로젝트를 하면 저절로 공부해야 하지만 버전 관리 시스템, 네트워크 통신 배포, 테스트에 대해 공부하겠다. 하고 실습하는 것과 안하고 그저 검색만 하며 하는 실습은 많이 다르다. 그때 그때 필요하면 공부해나가자.
이것만 하는 것이 아니라 지금 해야 할 일들은 정보처리기사 자격증 따기, 오픽 자격증 따기 등등 다른 할 일들이 계속 있다. 이 모든 것을 끝냈다 생각하니 벌써 행복하다. 가보자!
이 책은 어떻게 프론트 엔드 개발자가 되어야 할 지 모르는 사람들을 위한 책이다. 공부하면서도 다시 읽으며 내가 어느 위치에 있는지 파악하고 마음을 다잡거나 방향성을 되짚는 계기로 삼아도 좋을 것 같다.