Created by 손찬욱 / chanuk.son
Sam Stephenson이 개발
친숙한 Class 스타일의 OO framework
2004년 Prototype의 영향을 받은 Jindo1 출시2007년 기존 문제점을 개선한 Jindo2 출시
서비스 경험을 바탕으로 Jindo 제품군 출시
블로그, 카페 시즌2
네이버 PC 서비스에 적용
네이버 모바일 서비스에 적용
jQuery는 암묵적인 업계 표준
John Resig이 개발
2005년 DOM Selector에 대한 고민으로 부터
시작하여 Core Library로 발전함.
방대한 커뮤니티와 다양한 레퍼런스를 갖게됨
크로스 브라우징 문제 해결이 주요 관심사
브라우저에서 발생하는 버그나 특성을 일관성있게 처리하기 위해, 브라우저 bulit-in에 해당하는 객체를 랩핑하는 구조
객체 형태와 성격에 따라서
$Agent, $Class, $Element와 같이 다양한 클래스가 존재
write less, do more
코드 간소화 가 주요 관심사
JQuery라는 하나의 객체를 가지고 있고,
jQuery에서 쓰는 모든 메서드는 jQuery를 반환
모든 작업에 대해 Method chaining 이 가능함
$(".boxes")
.methodA()
.methodB()
.methodC()
개발이 쉽고, 코드량이 간소화됨
메서드에 잘못된 타입을 넣었을 때
jindo.$Class({}).extend(null); // undefined
대상이 없을 경우
jindo.$Element("#nothing"); // null
에러 여부를 명확히 알려주어, 사전에 에러를 검출할 수 있음
메서드에 잘못된 타입을 넣었을 때
$(".boxes").method(null); // ignore
대상이 없을 경우
$("#nothing"); // instance of jQuery
에러 여부를 무시하여 치명적인 서비스 오류 방지
jQuery는 버전별로 지원하는 범위가 다르다