jQuery가 확장되지 않는다고 말하면 Douglas Crockford는 무엇을 의미합니까? [닫은]


32

이 강연 의 Q & A 섹션 에서 Douglas Crockford는 jQuery는 다른 인기있는 라이브러리뿐만 아니라 확장 성도 없다고 말합니다. 그가 의미하는 바는 무엇이며, 다른 라이브러리에서 확장 성을 높이는 것은 무엇입니까?


JavaScript reddit에서 이에 대한 자세한 설명 : reddit.com/r/javascript/comments/h21vr/…
MatrixFrog

전체 비디오를 보지 않고도 jQuery 자체 를 사용 하는 것이 단일 페이지 응용 프로그램에 적합하지 않다고 말할 수 있습니다 . 그 이유는 코드를 정리할 모델 뷰 프레임 워크가 없기 때문입니다. jQuery를 Backbone.js , Knockout.js 및 / 또는 Sammy.js 와 같은 구조적 프레임 워크와 결합 하면 실제로 확장 성이 뛰어납니다 .
user16764

이야기를 보지 못했지만 여기 2c는 종속성을로드하기위한 지침 및 도구가 부족한 짐승의 플러그인 중심 특성이 팀의 누군가가 필요로 할 때 jQuery 플러그인 수프가있는 앱으로 이어진다는 것입니다. 특정 작업을위한 플러그인은 플러그인이 앱 전체에 포함되며 결국 전체 앱에 342 개의 서로 다른 jquery 플러그인을로드하게됩니다. 그것은 짐승의 성격의 일종입니다. 큰 업스트림 개념이 없어서 소규모의 물건을 쉽게 만들 수 있도록 설계되었습니다.
Wyatt Barnett

4
4 개 중 3 개 답변이 "동영상을 보지 못했습니다"의 변형으로 시작하는 것이 궁금합니다. 비디오를 보지 않고 Crockford 씨의 의미를 정확히 어떻게 알 수 있습니까?
코빈 3 월

글쎄, 그는 많이 말하지 않았습니다. 답변자 중 한 사람이 말했듯이, 그것은 마지막에 Q & A 섹션에서 일종의 손언이었습니다. 그러나 당신은 좋은 지적을합니다.
MatrixFrog

답변:


41

비디오를 보면 jQuery에 대해 공식적으로 이야기하지 않습니다. 프리젠 테이션이 끝난 후 누군가의 다소 논외적인 질문에 대한 빠른 응답입니다.

그는 jQuery에 대해 많은 좋은 점을 지적합니다. 그는 확장 성이 좋지 않은 부분에 대해서는 jQuery가 YUI와 같은 다른 애플리케이션과 비교할 때 매우 복잡한 애플리케이션에 대해 잘 확장되지 않는다고 생각합니다. .


29
답변을 게시하기 전에 실제로 동영상을 시청 한 경우 +1 (-:
KM.

3

비디오를 보지 않고 말하기는 어렵지만 jQuery 는 JavaScript 프로그래밍을 쉽게하는 다른 라이브러리의 모든 기능을 제공하지 않기 때문 입니다. jQuery의 목적은 CSS 선택기 를 통해 요소의 주소 지정을 단순화 하고 해당 요소를 변경하기위한 쉬운 프레임 워크를 제공함으로써 DOM 조작을보다 쉽게 만드는 것입니다 . 그것은 다음과 같은 몇 가지 다른 feautes 제공 아약스 요청, 기본 이벤트 관리, 템플릿, 그리고 몇몇 다른 기초적인 기능이 있지만, 그것에 대해 그의를.

Prototype , MooTools , Ext JSDojo 와 같은 다른 라이브러리는 객체 생성, 배열 및 컬렉션 관리, 문자열 조작 및 프로그래머가 기대할 수있는 기타 중요한 작업을 수행하기위한 다양한 기능을 제공 합니다 .

간단히 말해 jQuery에는 대규모 JavaScript 응용 프로그램에 필요한 도구가 없습니다. jQuery를 사용하여 JavaScript가 많은 사이트를 찾는 것은 매우 드문 일입니다. 예를 들어 Mint.com은 YUI를 기반으로 합니다. Apple의 MobileMe 웹 서비스는 SproutCore에서 실행됩니다 (Apple의 기본 사이트는 프로토 타입을 사용합니다).

적어도 그것이 내가 생각 하는 바입니다.


1
흠. 나는 jQuery에 익숙하지만 YUI 또는 다른 JS 프레임 워크에는 전혀 익숙하지 않습니다. 어쩌면 YUI, Prototype 등에 대해 크고 확장 가능한 웹 앱을 만드는 데 도움이되는 것이 무엇인지 물어봤을 것입니다. jQuery에 없는 것이 무엇인지 묻지 않고 ...
MatrixFrog

6
"jQuery를 사용하여 JS가 많은 사이트를 찾는 것은 매우 드문 일입니다.".... 우리가 물건을 만드는 동안 10MB 미만의 파일이 필요한 YUI에 대해 뭔가를 만들 수 있습니까?
ken

@ken 전체 YUI 라이브러리를 페이지에로드하는 중이라면 잘못된 것입니다. Yahoo가 동적 로더를 제공하는 이유가 있습니다. 내 평가에 동의하지 않으면 반대의 예를 제시하십시오. jQuery를 기반으로 구축 된 대규모 애플리케이션을 보여주세요.
ChiperSoft

4
그런 다음 "큰 규모"를 정의하십시오. SE 스택은 jQuery를 사용합니다.
ken

SE는 주로 JS 기반이 아니며 대부분의 사람들이 jQuery를 사용하는 방식으로 jQuery를 사용합니다. 기본 이벤트 바인딩, 간단한 AJAX 요청, 일부 DOM 조작. 대규모 란 전적으로 JS를 기반으로 구축 된 전체 애플리케이션을 의미합니다. 비 페이지 기반 사이트 위에서 언급 한 내용 (Mint.com & MobileMe), Cloud9 Editor, gMail, Mockingbird와 같은 내용을 말합니다. 사내에서 작성된 1MB 이상의 JS 코드가있는 사이트
ChiperSoft 1

2

jQuery는 MooTools 와 같은 많은 재사용을 허용하지 않습니다 .

철학 / 디자인 결정 : jQuery는 화재 및 잊어 버린 시나리오를위한 많은 코드가 아닙니다.

눈에 잘 띄지 않는 JavaScript 환경을 구축 할 때 (보통 페이지 향상 만 해당) 이는 매우 잘 작동하며 코드가 거의 필요하지 않습니다. Google 문서 를 작성할 때 ... 별로는 아닙니다. 다른 프로젝트가 상속, 인터페이스와 같은 메커니즘 등 노출하는 더 많은 OOP 개념을 원할 것입니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.