GN⁺ 2024-11-04 | parent | ★ favorite | on: 현대 브라우저용 소형 jQuery 대안 Cash(github.com/fabiospampinato)
Hacker News 의견
  • 브라우저가 DOM 조작을 간단하게 해주어, 두 줄의 코드만으로 충분히 작업할 수 있음

    • document.querySelectordocument.querySelectorAll을 바인딩하여 사용함
    • 모듈에서 두 함수를 가져와 사용함
    • GitHub 링크
  • jQuery의 장점은 자동 리스트 처리와 부모 쿼리 기능임

    • 빈 리스트에서 조용히 실패하는 점이 문제임
    • jQuery를 다시 구현한다면, 빈 셋에서 오류를 발생시키고 필요할 때만 조용히 실패하도록 할 것임
    • 라이브러리와 프레임워크의 오래된 논쟁과 관련됨
  • 메인스트림 웹사이트가 많은 JavaScript를 사용하기 때문에, 전체 라이브러리를 다시 작성하는 것은 비효율적임

  • jQuery 대안으로 개인적으로 만든 라이브러리 소개

    • 애니메이션은 CSS로 구현
    • 하나의 요소나 리스트를 투명하게 사용
    • Vanilla JavaScript 우선, 의존성 없음, 1개의 파일, 340줄 이하
    • GitHub 링크
  • jQuery와 Cash의 차이점에 대해 알게 됨

  • Shoestring을 사용하여 JS를 줄였던 경험

    • Cash도 유사한 기능을 제공하지만 문서에서 숨겨져 있음
    • 브라우저의 기본 기능을 사용하는 것이 더 나은 선택임
    • jQuery 대안이 6kB인데 반해 Preact는 절반 크기임
  • TypeScript 템플릿 문자열을 사용하여 요소의 타입을 추론하는 목표

    • 예를 들어, $('div#name')가 HTMLDivElement로 추론됨
  • jQuery 4는 현대 브라우저를 위한 대안임

  • 브라우저 확장 프로그램에서 jQuery를 사용했으나, JSX 라이브러리로 전환함

  • 작은 라이브러리와 프레임워크를 좋아하지만, 실제로는 큰 라이브러리를 사용하게 됨

    • 프레임워크: 50KB
    • 작은 버전: 5KB
    • 대체할 수 없는 라이브러리: 1MB