🚧 해당 포스트는 the Red: 김태곤의 프론트엔드 back to the basics 강의를 키워드 위주로 정리했습니다. 문제 시 댓글 부탁드립니다.
🚧 정제되지 않은 단어, 문장 등이 많습니다. 개인적인 기억을 위해 작성하며 추후 경험을 더하여 포스팅 할 예정입니다.
정체되지 않는 프론트엔드 개발자의 일하는 방식
프론트엔드?
- 애플리케이션이 사용자와 맞닿는 접점을 찾는 사람
- 인터랙션 정의, 만들고, 시각적, 서버통신, 사용자를 고려해야
- 배포/디자인도 관여
- 사용자와 연관이 있는 분야
- 조작이 불편하면 안됨
- 공부할 것이 많은 분야
- 한 번 배웠다고 끝나지 않음
- 비즈니스로직도 많이 다뤄야해서 백엔드 지식도 필요
- 데이터베이스, 인증 등을 제외하면 프론트로 넘어오는 추세
- html5, css3 명세는 이제 없고 리빙스탠다드
- 자바스크립트는 다양한 분야에서 사용되는 언어
- 리액트네이티브로 네이티브언어를 몰라도 어느정도 네이티브 구현 가능
- 일렉트론도 웹기술을 사용해서 가능한 지경
- 트렌드 정리해서 구독할 수 있는 것들 (메일링, 트위터 등)
- 웬만하면 영어로 읽어라
- 해외트렌드에 민감해라
공부방법
- 영역은 늘려가되 필요한 부분은 깊게
- 이것저것 많은 경험 필요
- 다른 사람 코드 많이 읽기 / 개인프로젝트하기
- 시간을 들인만큼 성장
- 이 기술을 왜 만들었는지 / 어떤 문제를 해결하려 했는지 살펴봐라
- 쉬운 예제부터 보면서 연습
- 도저히 이해가 안될 땐 개발자 커뮤니티에 질문
개인프로젝트
- 개인프로젝트는 최신버전 / 인기기술을 사용해봐도 좋음
- 개인프로젝트는 본인에게 유용한 것으로 아이디에이션 하면 좋음
- 내가 가진 기술과 상관없이 아이디어 메모
- 이후에 적정 기술과 더하여 진행
- 문제를 해결해보면 보는 눈이 달라짐
공식문서
- 공식문서를 잘 읽어라
- 업데이트가 가장 빠름
- 모질라 개발자 네트워크 읽어라
- 자주 읽다보면 모르는게 계속 나옴
- devdocs. 공식문서 레퍼런스를 모아둔 곳 (다운로드 오프라인 사용 가능)
블로그
- 개발블로그 쓰기
- 나름의 목표를 정해서 팁 올리기
- 정확한 지식만을 전달하기
- 자료 첨부하기
- 짧고 명료한 문장 쓰기
- 설명하다보면 자기검증이 됨
- 아주 짧은 책을 쓴다고 생각하고 기록
- 예제코드도 함께 있으면 좋음
- 수식어는 적게
참고
개발자가 블로그를 운영해야 할 이유
개발환경
- 여러 도구를 사용해보고 자신에게 잘 맞는 것을 선택하라
- vi, vim 등을 활용할 수 있어야 급할 때 사용할 수 있음
Git
- git은 저장소가 분리되어 있어 협업에 좋음
- 하지만 러닝커브 허들이 있음
- 커밋메세지를 잘 작성하는 방법을 알아라
- 혼자하는 프로젝트도 규칙을 잘 지켜라
- 텍스트환경의 깃 배워둬라 (Git CLI)
참고
nhn. 좋은 git 커밋 메시지를 작성하기 위한 7가지 약속
생활코딩. 지옥에서 온 깃
한빛. 팀개발을 위한 깃
Shell
- oh-my-zsh로 쉘 환경을 만들면 여러 기능을 쉽게 사용 가능
- iTerm 사용하기 편함
- 맥에서 하기 힘든 IE 테스트를 하려면 오라클 버츄얼박스를 통해 가능
- 개인프로젝트에서는 nodejs 최신버전을 써보라
- 버전관리 및 테스트는 NVM 통해서 가능
실무
- 노동집약적
- 결과물에 시각적인 요소가 많아서 일정을 예측하기 어려운 측면도 있음
- 자주 사용하는 스타일은 컴포넌트화
- 디자인팀과 합의된 컴포넌트로 아토믹 디자인
- mvp 만들기
- 꼭 필요한 부분 만들고 피드백 받기
- 최소규모로 자주 반복하라
- 백엔드 api 소통 중요
- 명세는 프론트가 정의하는게 편함
- 안된다는 말은 가능한 참기
- 조건 변경, 요구 변경 등으로 스케줄 조정 종종 있음
풀스택?
- 진정한 의미에 풀스택 있나?
- 풀스택이 가능할 정도로 백엔드 지식 있으면 좋음