HomeAboutMeBlogGuest
© 2025 Sejin Cha. All rights reserved.
Built with Next.js, deployed on Vercel
🐣
프론트엔드 데브코스 3기 교육생
/
🎄
유리팀
/
☕
[커피챗] 3
☕

[커피챗] 3

Database
회의록
Tags
커피챗
Date
Dec 10, 2022 00:00
Tags (자료 공유)
URL
설명

질문

  • 멘토님은 테스트 케이스를 어떻게 진행하시는지 궁금합니다.
    • 답변
    • 유저라고 생각하고 어떤 동작을 기대하는지 생각하고 테스트 케이스를 짠다.
      • 기대 동작이 나왔는지 테스트를 진행한다.
    • TDD를 하지는 않고, 개발 도중 혹은 끝날 때 진행한다.
 

CSS 과제 관련 피드백

Node Sass와 Dart Sass
node-sass
Warning: LibSass and Node Sass are deprecated. While they will continue to receive maintenance releases indefinitely, there are no plans to add additional features or compatibility with any new CSS or Sass features. Projects that still use it should move onto Dart Sass. Supported Node.js versions vary by release, please consult the releases page.
node-sass
https://www.npmjs.com/package/node-sass
node-sass
Dart Sass
Syntactically Awesome Style Sheets
Dart Sass
https://sass-lang.com/dart-sass
Dart Sass
두 Sass의 차이점은 내부 컴파일 방식이 다른 점이다. 문법은 같다. 현재 Node Sass를 잘 안쓰고, Dart Sass를 사용한다.
 
번들러로 parcel은 잘 사용되지 않고, webpack을 많이 사용한다. vite도 요즘 뜨고 있는 번들러이다.
webpack에는 로더가 있기 때문에 스타일도 컴파일해줄 수 있다.
 
매번 커맨드라인을 쓸 수 없으니까 통일을 시키기 위해 빌드 툴을 사용한다.
개발 환경과 배포 환경을 분리하여 생각하면 좋을 것 같다.
  • 배포 환경에는 파일 압축, 암호화, 해시 처리 등이 필요하다.
    • 새로 만든게 반영되어야 하기 때문에 캐싱이 되지 않도록 해시 처리가 되도록 해줘야 한다.ㅈ
 
폰트는 import해서 사용하는 것보다 link로 사용하는 것이 좋다.
fonts.googleapis.com
https://fonts.googleapis.com/css2?family=Inter:wght@400;500;700&family=Noto+Sans+KR:wght@400;500;700&display=swap
 
스타일을 적용할 때, 브라우저 서포트를 신경써야 한다.
Can I use... Support tables for HTML5, CSS3, etc
Test a feature Our partnership with BrowserStack now lets you test your website for compatibility across 2,000+ real browsers and devices. Test on: Did you know? Next If a feature you're looking for is not available on the site, you can vote to have it included.
Can I use... Support tables for HTML5, CSS3, etc
https://caniuse.com/
 
리액트 styled component ( CSS in JS )를 멘토님 회사에서는 사용하지 않고 있다. CSS 파일과 JS 파일을 따로 나누어 사용한다. 그냥 css import를 하면 번들러가 알아서 넣어준다. 또 다른 방법은 css module을 사용하여 import를 사용하면 className에 해시 값?을 붙여서 중복을 막아준다.
 

Vue 과제 관련 질문

state가 2 Depth 이상으로 가면 store를 사용하나, store를 많이 사용하는 것은 좋지 않다고 생각한다. 글로벌한 state는 store로 관리하는 것이 좋다. 로컬 state와 글로벌 state를 적절히 분배해서 사용하자.
 
현업에서 환경변수 관리 방법
회사에서 배포환경별로 세팅할때 사용하는 라이브러리이다.
env-cmd
Executes a command using the environment variables in an env file. Latest version: 10.1.0, last published: 3 years ago. Start using env-cmd in your project by running `npm i env-cmd`. There are 275 other projects in the npm registry using env-cmd.
env-cmd
https://www.npmjs.com/package/env-cmd
env-cmd
이 라이브러리를 사용해서 로컬에서는 api base url를 환경변수로 감추고,
환경변수 파일을 .gitignore에 추가해도 된다.
 
eslint는 오류를 찾는 역할, prettier는 코드 포맷팅 역할을 한다.
prettier와 eslint를 구분해서 사용하자
Prettier는 formatter고 eslint는 linter 이다. 두 개의 차이점과 사용법을 알아야 더 스마트하게 사용할 수 있다. 결론부터 말하자면 오류를 잡으려면 린터, 스타일을 교정하려면 포맷터 를 사용하자. 린터 룰은 크게 포맷팅(스타일) 룰과 코드 퀄리티 룰이라는 두가지 카테고리로 나눌 수 있다. 사용되지 않은 변수를 오류로 분류하는 no-unused-vars 같은 코드 퀄리티 룰은 prettier 같은 포맷터가 잡아낼 수 없다.
prettier와 eslint를 구분해서 사용하자
https://yrnana.dev/post/2021-03-21-prettier-eslint
prettier와 eslint를 구분해서 사용하자
 
.env-cmdrc.js