최근 A기업의 사전과제를 진행했다.
Frontend 관련 과제였다.
간단하게 쇼핑몰 페이지를 구현하는 것으로
2개의 페이지는 필수적으로 구현해야 하는 과제 였다.
기간을 대략 5일정도 주어졌던것같다.
주어진 과제를 수행하는것이 사실 어려운 문제는 아니었다.
물론, 얼마나 완성도 있게 더 넓은 범위까지 설계 및 생각했는지는 다른 문제이지만, 필수적으로 해야하는 내용은 어렵지 않았던것 같다.
진짜 문제점은 내가 Frontend 개발 경험이 없다는것..
css가 정상적을 적용되지 않는 문제점이 있었다.
구현량이 많아지면서 클래스명 중복 등 으로 인하여 충돌하는 문제가 있는것이 원인이었다.
react를 이용해 처음 개발하면서, 무엇이 문제인지 몰라서 한참 시간을 소비했다.
css-module
css-module을 이용하면 컴포넌트 단위로 스타일을 적용할 수 있다.
파일명 : {모듈명}.module.css
import : import styles from "./경로/모듈명.module.css
적용 방법 : {styles.클래스명}
type 체크 문제
Javascript로 구현을 하면서 느낀점 중 하나이다.
Js에서 문제없이 컴파일이 되었지만 런타임에서 오류로 시스템이 Dead가 발생하는 경우가 있다.
Typescript를 사용했다면, 컴파일 타임에 오류가 있는것을 알게되어 선조치를 취할 수 있지만 Js는 컴파일 타임에 알 수 없다..!
IDE
Js로 구현하면, IDE에서 추적이 너무 어렵다..!
IDE를 이용해서 개발을 하다보면, Ctrl+클릭을 통해 코드를 따라갈때가 있는데.. JS는 해당 과정에서 불편한 점이 많았다.
VSCode 내부에 TS라고 한다..
물론 Ts가 항상 정답이라고 할 수는 없지만, JS와 TS간의 차이를 조금 체감할 수 있었다.
react를 사용하여 Front를 개발하다보면, 동일한 기능을 하는것을 컴포넌트를 사용해서 구현하게 되는데, 컴포넌트의 틀을 잡는것이 재미있었다.
예컨데, 쇼핑몰 페이지라고 한다면, 각각의 상품이 보이는것이 하나의 컴포넌트..!
어떤것들이 재사용할 수 있는것인지, 마치 디자인패턴을 공부하는듯한 기분으로 진행할 수 있었다.
해당 직무가 웹 개발 직무라고 되어 있었지만 사실상 Frontend 개발 직무였다.
Frontend 개발자보다는 Backend 개발자로 나아가고 싶었기에, 면접에 불참.
적고 싶은 내용이 많지만, 사전 과제와 관련된 내용을 어디까지 공개할 수 있는지 몰라서
다양한 내용을 적을 수가 없다.