Node.js를 잘 쓰는 9가지 원칙
2024. 10. 4.
Node.js를 잘 쓰는 9가지 원칙
Node.js라고 한정지었지만 이 원칙은 JS 전반에 적용되기 때문에 꼭 봤으면 좋겠습니다. 원칙이라 되어있기에 어떻게 단계적으로 진행할지는 적혀있지 않습니다. 하지만 모두가 납득할만한 원칙들이기 때문에 항상 생각하면서 제품의 진행방향을 설정해야겠습니다.
조건문의 복잡함을 푸는 방법
조건문의 복잡함(여기서는 조건부 렌더링)을 푸는 방법으로 조기 반환(early return)을 제시하는 글입니다. 요구사항을 잘 분석하여 조건부 렌더링을 남발하는 것을 막자는 글입니다. 경우에 따라서 조기 반환보다 분리, 혹은 격리가 나을 수도 있으므로 여기서 제시하는 분해, 그리고 분석이 가장 중요하겠네요.
content-visibility
로 가상화 대신하기
Virtualization 대신에 content-visibility
을 사용해서 성능 최적화를 진행한 간단한 후기입니다. 가상화는 UI 라이브러리/프레임워크에 종속된 라이브러리를 찾아 사용해야 하기 때문에 잘 사용해야 하는데, content-visibility
라는 표준을 사용해보는 것도 나쁘지 않아보이네요.
AbortController
마스터하기
많이 사용하지 않는 AbortController
를 fetch
API 호출 중간에 중단하는 일 외에 어느 곳에 사용할 수 있는지를 소개하는 글입니다.
React에서 URL 다루기
React에서 많이 실수하는 부분 중 하나가 URL을 useState
와 함께 다루게 되어서 경우에 따라 불일치가 생길 수도 있다는 부분입니다. 이외에도 React에서, 혹은 다른 UI 라이브러리를 사용할 때 Single of truth를 항상 기억하면서 코드를 작성해야 한다는 교훈을 제공합니다.
브라우저는 꽤나 많은 기능을 제공한다
SPA 기반 프레임워크를 꼭 사용해야 한다는 주장들을 여러 브라우저 표준 API를 기반으로 반박하는 글입니다. 물론 MPA 프레임워크들을 사용해야 한다고 하는 것은 아니고 여기서 제공하는 기술들을 한 번 볼만하다고 생각해서 가져왔습니다. 대표적으로 Service Worker를 잘 사용할 수 있는 workbox
와 이전에 소개했던 Speculation Rules API
도 있습니다.
압축에 대한 고민
Websocket 트래픽을 낮추기 위한 대한 고민과 해결한 과정을 적은 글입니다. 압축 라이브러리를 통한 페이로드 압축, 트래픽을 줄이기 위한 패시브 세션과 일반 세션 구분같은 여러가지 기술을 옅볼 수 있습니다.
JavaScript에서 타입 기반 린트의 현재
TypeScript 기반 린터의 생태계들의 고충을 모두 설명하는 글입니다. swc와 esbuild처럼 트랜스파일러가 안정화되어 나오지 않는 이유, 그리고 typescript-eslint
는 어떤 노력을 하는지 엿볼 수 있습니다.
라이브러리나 기술 살펴보기
첫 글은 블로그에 적용된 라이브러리나 기술을 살펴보면서 소개하는 글입니다. 가볍게 이런 라이브러리가 있구나 살펴보기 좋습니다. 두번째 글은 express.js 5가 어떤 것이 바뀌었는지 살펴보는 글입니다. 세번째 글은 Chrome 129버전에 새로운 것이 무엇이 있는지 확인하는 글입니다. 이전에 소개했던 interpolate-size
가 눈에 띄네요.
세상 이치가 그래
새로운 기술이나 인기있는 기술을 배우지 말고 핵심 웹 기술을 배우라는 글입니다. 하지만 여기서 중요하게 생각하는 것은 모든 문제에 해답이 될 수 없다는 글입니다. 저는 새로운 기술이나 인기 있는 기술이 없는 요구에 기반해서 만들어졌을 수도 있지만, 대부분은 요구에 따라서 생겼고, 새로운 기술이라고 하지만, 이전에 있던 요구사항에서 크게 달라지지 않는다는 생각을 합니다. 새로운 기술을 모니터링하는 것은 필요하다고 생각합니다. 2014년에 시작된 React로 만들어진 웹사이트가 지금은 꽤 많은 것처럼요. 하지만 기반, 핵심 지식을 배우는 것 또한 중요합니다. 핵심 지식을 기반으로 많은 기술들이 생기니까요. 비율을 조절하면서 계속 공부해보길 추천드립니다.
간단한 UX 경험 올리기
margin
과 padding
의 차이에서 오는 UX 경험을 소개하는 글입니다. 이전에 소개했던 상호작용 범위 더 좋게하기와 비슷한 글이네요.