jQuery를 대체하는 3 개의 JavaScript 라이브러리

HTML 문서 순회, 애니메이션 및 이벤트 처리와 같은 작업을 단순화하는 강력한 jQuery JavaScript 라이브러리는 웹 개발의 면모를 바 꾸었습니다. 웹 기술 조사원 W3Techs에 따르면 2019 년 5 월 현재 알려진 웹 사이트의 74 %에서 jQuery가 여전히 사용되고 있습니다. 그럼에도 불구하고 2006 년 8 월에 데뷔 한 jQuery 라이브러리는 이제 일부 개발자들에게 시간이 지난 오래된 기술로 간주되고 있습니다.

최근 몇 년 동안 Cash 라이브러리 또는 최신 바닐라 JavaScript와 같은 jQuery의 대안이 등장했습니다. 이제 웹 브라우저가 모두 동일한 방식으로 JavaScript를 처리하고 호환성 문제를 해결하는 데 더 이상 jQuery가 필요하지 않습니다. Reddit의 주장과 YouTube의 비디오는 jQuery가 쓸모 없거나 적어도 예전만큼 중요하지 않다는 주장을합니다.

jQuery가 더 이상 필요하지 않은 이유

웹 개발 교육자 인 Brad Traversy는 "2018 년에도 jQuery가 여전히 관련이 있습니까?"라는 YouTube 프레젠테이션에서 jQuery가 아마도 지금까지 만들어진 최고의 일반화 된 JavaScript 라이브러리 일 것임을 인정합니다. 배우기 쉽고 브라우저 간 호환이 가능하며 이전의 바닐라 JavaScript보다 간결하며 특정 기능을 제공하는 플러그인이 풍부합니다. 그러나 JavaScript는 ECMAScript 6 이후 훨씬 발전했으며 jQuery는 더 이상 많은 상황에서 필요하지 않다고 Traversy는 결론지었습니다.

다른 비디오에서 코딩 교육자 Kenneth Lowrey는 jQuery에 능통 해지는 것은 시간 낭비라고 주장합니다. 현재 웹 개발 환경에서 최신 브라우저는 대부분 JavaScript를 동일하게 처리합니다. 대부분의 경우 네이티브 JavaScript 코드는 "jQuery와 같은 부풀려진 레거시 라이브러리"보다 낫습니다.

예를 들어 jQuery가 HTTP 요청을 만들기위한 선택 이었지만 ECMAScript 6은 HTTP 요청을 더 쉽게 만들어주는 약속 기반 API 인 Fetch를 출시했습니다. 그리고 발전은 HTTP에서 멈추지 않습니다. jQuery에 배열 조작과 같은 작업을위한 유틸리티가있는 경우 바닐라 JavaScript는 이제 이러한 작업에 대한 조정 기능도 향상되었습니다.

애니메이션은 jQuery보다 vanilla JavaScript에서 여전히 더 어렵지만 CSS 전환 또는 키 프레임과 같은 다른 옵션이 있다고 Traversy는 지적합니다. 타사 GreenSock 라이브러리도 애니메이션에 사용할 수 있습니다. DOM 조작의 경우 한때 jQuery에 의해 지배되었던 작업 인 네이티브 브라우저 API가 그 격차를 좁혔습니다.

바닐라 JavaScript에서 수행 할 수없는 작업의 경우 Traversy는 jQuery와 같은 일반화 된 라이브러리 대신 특수 라이브러리를 권장합니다. Traversy는 중형 및 대규모 애플리케이션에 React, Angular 또는 Vue와 같은 JavaScript 프레임 워크를 사용할 것을 권장합니다. Traversy는 여전히 프레임 워크가없는 단순한 사이트에서 사용할 jQuery를 권장합니다. 

jQuery 대안

jQuery 대신 무엇을 사용해야합니까? 최신의 바닐라 JavaScript 외에도 Cash, Zepto 및 Syncfusion Essential JS 2가 포함 된 jQuery 대안의 짧은 목록입니다. Cash 및 Zepto는 MIT 라이선스에 따라 사용할 수있는 오픈 소스 JavaScript 라이브러리입니다. Syncfusion Essential JS 2는 상용 제품입니다. 

현금

Cash는 GitHub에서 3,570 개 이상의 별을 가지고 있습니다. 최신 브라우저를위한 "엄청나게 작은 jQuery 대안"으로 청구되는 Cash는 DOM 조작을위한 jQuery 스타일 구문을 가지고 있으며 압축되지 않은 상태에서 32KB의 공간을 차지합니다. Cash는 네임 스페이스 이벤트, TypeScript 유형 및 최신 빌드를 포함한 기능을 지원합니다. GitHub에서 Cash를 다운로드 할 수 있습니다.

Zepto

Zepto는 "대부분 jQuery와 호환되는 API가있는 미니멀 한 JavaScript 라이브러리"로 설명됩니다. jQuery를 아는 개발자는 이미 Zepto를 사용하는 방법을 알고 있다고 제작자는 말합니다. Zepto는 jQuery보다 훨씬 작고 로딩 속도가 훨씬 빠르며 모바일 및 데스크톱 브라우저 용 PhoneGap 도구 세트와 함께 사용할 수 있습니다. 프로젝트 웹 사이트에서 Zepto를 다운로드 할 수 있습니다.

Syncfusion Essential JS 2

Syncfusion Essential JS 2는 TypeScript로 작성된 상용 라이선스 JavaScript UI 컨트롤 라이브러리입니다. jQuery UI 라이브러리의 대안으로 사용되는 Syncfusion은 웹 애플리케이션을 개선하기 위해 오버 헤드가 적고 가벼운 모듈 식 라이브러리로 설계되었습니다. Syncfusion은 Angular, React 및 Vue를 포함한 프레임 워크를 지원합니다. Syncfusion Essential JS 2를 구입하거나 Syncfusion 웹 사이트에서 무료 평가판을 다운로드 할 수 있습니다. 전체 소스 코드, 단위 테스트 파일, 테스트 스크립트 및 라이브 데모는 GitHub에서 사용할 수 있습니다.