2015幎4æãjQueryã®äœæè ã§ããJohn Resig ã¯ã 2006幎1æã®æåã®jQueryããŒãžã§ã³ãå ¬éããŸãã ã ãã®æçš¿ã§ã¯ãJohnã¯jQueryãã©ã®ããã«äœæãããããæãåºããŠã³ãŒããè£è¶³ããŸããã
ãžã§ã³ã®ã³ã¡ã³ããèŠããšãããããã€ãã®äºå®ã次ã«ç€ºããŸãã
1. jQueryã¯ããšããšJSelectãšåŒã°ããŠããŸããã
ãã ãã JSelect.comãã¡ã€ã³åã䜿çšããã JQuery.comã¯äœ¿çšãããŸããã§ããã ååã®æåã®æåã¯å°ãåŸã«å°æåã§æžããå§ããæåã¯ã jQuery ãã§ããã
åºæ
2. jQueryã¯Creative Commonsã®äžã§ã©ã€ã»ã³ã¹ãããŸããã
ã¯ãªãšã€ãã£ãã³ã¢ã³ãº ïŒCCïŒ ã©ã€ã»ã³ã¹ã¯éåžžãã¹ããã¯åçãPSDãã³ãã¬ãŒããã¢ã€ã³ã³ã»ãããªã©ã®ã¯ãªãšã€ãã£ããªäœåã«é¢é£ä»ããããŠããŸãã ããããCCã¯ãªãŒãã³ãœãŒã¹ã«ã¯é©ããŠããŸããã§ããã ããã«ããã®æç¹ã§ããé©åãªãªãŒãã³ãœãŒã¹ã©ã€ã»ã³ã¹ããã§ã«ååšããŠããŸããã
ããã«ã Creative Commonsã®ã¹ã¿ããã§ããããªãŒãã³ãœãŒã¹ãœãããŠã§ã¢ã®ã©ã€ã»ã³ã¹ãMITãŸãã¯GPLã«åºã¥ããŠæšå¥šããŠããŸãã ãŸãã ãªãŒãã³ãœãŒã¹ã®ã¢ã€ãã¢ãä¿é²ããçµç¹ã§ããOpen Source Initiativeã¯ãCreative Commonsã©ã€ã»ã³ã¹ã®äžã§ã®ãªãŒãã³ãœãŒã¹ãããžã§ã¯ãã®å ¬éã«å察ããŸããã ããããã¹ãŠã«ããããããã2006幎ã«ãžã§ã³ã¯ãã®ã©ã€ã»ã³ã¹ã®äžã§jQueryã®æåã®ããŒãžã§ã³ãå ¬éããŸããã JQueryã¯ã CC Attribution-ShareAlikeã©ã€ã»ã³ã¹ã®äœ¿çšã¯æªãéžæã§ãã£ãããšãèªããŠããŸãã ãŸããªãããããžã§ã¯ãã¯MITã®ã©ã€ã»ã³ã¹ãå€æŽããŸããã
åºæ
3. jQueryã¯ããŒãžã§ã³ç®¡çã·ã¹ãã ãªãã§äœæãããŸããã
ä»æ¥ã ããŒãžã§ã³ç®¡çã·ã¹ãã ïŒVCSïŒã䜿çšããã«ãªãªãŒã¹ãããæ·±å»ãªãªãŒãã³ãœãŒã¹ãããžã§ã¯ããæ³åããããšã¯äžå¯èœã§ãã ããããåœæãjQueryã¯ãããžã§ã¯ãã«VCSã䜿çšããããšããèããŠããŸããã§ããïŒ å ¬å¹³ãæããŠã倧èŠæš¡ãããžã§ã¯ãã§ãVCSã䜿çšããªãã£ãããšã«æ³šæããŠãã ããã jQueryã¯ãæåã®è²¢ç®è ã®åºçŸã«ãã£ãŠã®ã¿ããŒãžã§ã³ç®¡çã·ã¹ãã ïŒSVNã§ããïŒã«åãæ¿ããŸããã
åºæ
4. jQueryãšããååã¯å¥ã®ãããžã§ã¯ããããçãŸãããã
ãjQueryããšããååã¯ãJavaã®SQLã©ã€ãã©ãªã§ã䜿çšãããŠããŸããã ããããJohn Rezigã¯ãJava-jQueryã®äœæè ã圌ã«é£çµ¡ãããšãã«ã®ã¿ãååã®ç«¶åã«ã€ããŠç¥ããŸããã ãžã§ã³ã¯ããã®æ··ä¹±ã®ããã§èªåãåæºããããšãæãåºããŸãã
åºæ
5. jQueryããã¥ãŒãšãŒã¯ã§å ¬éãããŸããã
JQueryã¯ã2006幎1æã«ãã¥ãŒãšãŒã¯ã§éå¬ãããBarCampã«ã³ãã¡ã¬ã³ã¹ã§å ¬éãããŸããã BarCampã¯ãã€ã³ã¿ãŒãããããã³ãªãŒãã³ãœãŒã¹ãã¯ãããžãŒã®åé¡ã«ã€ããŠè°è«ãããã¯ãããžãŒäŒè°ã§ãã
åºæ
6. jQueryã¯ãä»ã®ãªãŒãã³ãœãŒã¹ãããžã§ã¯ãã®åœ±é¿ã匷ãåããŠããŸãã
ã³ã¡ã³ãã®äžã§ããžã§ã³ã¯jQueryéçºã«æã倧ããªåœ±é¿ãäžããããã€ãã®ãããžã§ã¯ãã«èšåããŠããŸãã
- ãããã¿ã€ãjavascriptãã¬ãŒã ã¯ãŒã¯
- moo.fx
- XPath
- Behaviour.js
ããããã¹ãŠã®ãããžã§ã¯ãã®ãã¡ã Prototypeã®ã¿ããŸã ã¢ã¯ãã£ãã§ãã ä»ã®ãããžã§ã¯ãã¯çŸåšéçºãããŠããŸããã XPathã¯1999幎ã«W3Cã®æšå¥šã¹ããŒã¿ã¹ã«ãªããHTMLãCSSãšã¯ç°ãªãããã以éå€æŽãããŠããŸããã
7.æåã®jQueryãã©ã°ã€ã³ã¯jQueryçšã®JSONã§ããã
2006幎1æã«äœæããããã©ã°ã€ã³ã¯ãJSONããŒã¿ãæäœããç°¡åãªæ¹æ³ãæäŸããŸããã ãŸãããã©ã°ã€ã³ã¯ããã©ã°ã€ã³ã䜿çšããæ©èœã®æ¡åŒµæ§ã®ããã«ãjQueryã«å€§ããªå°æ¥æ§ãããããšã瀺ããŸããã å°æ¥ãjQueryãæåããçç±ã®1ã€ã¯ããµãŒãããŒãã£éçºè ããã®å€æ°ã®ãã©ã°ã€ã³ã§ããã
åºæ
8. jSLintã¯ãå質管çã®ããã«jQueryã§äœ¿çšãããŸããã
John Rezigã¯ãã³ãŒãã«é¢ããçŸä»£ã®è§£èª¬ã§ãèªåã®æèŠã§ã¯ååã§ã¯ãªãã£ãå ŽæãææããŸããã ãã®åé¡ã¯ãJSã³ãŒããåæããããã®ããŒã«ã§ããJSLintã䜿çšããŠããã«è§£æ±ºãããŸããã
åºæ
9. jQueryã«ã¯æåã¯AjaxãµããŒãããããŸããã§ããã
éåæWebã¢ããªã±ãŒã·ã§ã³ã¯ã2000幎代åæããäžæã«æµè¡ããŠããŸããã ä»æ¥ãå€ãã®Webã¢ããªã±ãŒã·ã§ã³ã¯éåæã§åäœãã誰ãé©ããªãã§ãããã ããããããã¯é©æ°çãªã¢ã€ãã¢ã§ãããå€ãã®Webéçºè ãæ¥ãã§ãã®åè»ã®ææµã«ä¹ã£ãŠããŸããã ç§ãã¡ã¯çãããŒãžã®å®å šãªãªããŒããé¿ããå¿ èŠãªéšåã®ã¿ãæŽæ°ãããã£ãã®ã§ãã é©ãã¹ãããšã«ãjQueryã¯æåã®ããŒãžã§ã³ã§ã¯AjaxããµããŒãããŠããŸããã§ããã
åºæ
10. jQueryã³ãŒãã¯ããªãã·ã§ã³ã§ããå Žåã¯äžæ¬åŒ§ã䜿çšããŸããã§ããã
JavaScriptã§ãã¬ãŒã¹ãå¿ èŠãšããªãå Žåã§ãããããã¯æ§é ã«ãã¬ãŒã¹ã䜿çšããããšããå§ãããŸãã äžæ¬åŒ§ã䜿çšãããšãç¹ã«ããŒã ã§äœæ¥ããŠããå Žåã«ãšã©ãŒãé²ãããšãã§ããŸãã äžèšã§èª¬æããJSLint㯠ãäžæ¬åŒ§ããªãããšã誀ããšèŠãªããŸãã ãã ããjQueryã®æåã®ããŒãžã§ã³ã§ã¯ãJohnã¯ãªãã·ã§ã³ã®äžæ¬åŒ§ãçç¥ããããšã奜ã¿ãŸããã ãäœåãªæ¬åŒ§ã¯æ¬åœã«å¥œãã§ã¯ãããŸããã§ããããã®ã¹ã¿ã€ã«ã®ã³ãŒãã¯ç§ãã¡å šå¡ãèŠãããå°æ¥å€ãã®è«ççãšã©ãŒãåŒãèµ·ãããŸãããã
ãããã£ãŠãjQueryã®æåã®ããŒãžã§ã³ã§ã¯ã次ã®ã³ãŒããèŠã€ããããšãã§ããŸãã
if ( !b ) for ( var j in a ) this.style[j] = a[j]; else this.style[a] = b;
äžæ¬åŒ§ã§ã¯ããã®ã³ãŒãã¯æ¬¡ã®ããã«èšè¿°ããå¿ èŠããããŸãã
if ( !b ) { for ( var j in a ) { this.style[j] = a[j]; } } else { this.style[a] = b; }
åºæ
èè 泚 ïŒãã€ãŠã¯ããªãã·ã§ã³ã®äžæ¬åŒ§ã®äœ¿çšãæåŠããããšã奜ãã§ããã ãã®ãããªã³ãŒãã¯èªã¿ããããšæããŸããã ããã«ãäžæ¬åŒ§ã®ãªãã³ãŒãã¯ããã®æã«ç»å Žããæ°ããã¯ãŒã«ãªWebãã¬ãŒã ã¯ãŒã¯ã®æ§æã«äŒŒãŠããŸããã
11. 2006 jQuery APIã¯åŒãç¶ããµããŒããããŠããŸãã
.cssïŒïŒã. toggleïŒïŒã. showïŒïŒãããã³.hideïŒïŒãªã©ã®ãæ°ã«å ¥ãã®jQueryã¡ãœããã¯ãæåã®ããŒãžã§ã³ã«ãããAPIã§åŒãç¶ããµããŒããããŠããŸãã ãããŠããããã®9幎éã§ãå€ãããŒãžã§ã³ãšã®äºææ§ã¯å£ããŠããŸããã ãjQuery 2006ã䜿çšããã³ãŒãã䜿çšããŠãææ°ã®jQueryãããã«æ¥ç¶ããŠãããããæ©èœããå¯èœæ§ã¯ååã«ãããŸãããšJohnæ°ã¯èšããŸãã
åºæ
+ãã§ã«ç¥ã£ãŠãã1ã€ã®äºå®ïŒ
jQueryã¯Webéçºã容æã«ããŸãã
æåã¯jQueryã®æ§æã«æ¹ãããŸããã ç§ã¯åœŒãããã«ç°¡æœã§ççŽã§ããããã©ã®ããã«èããããèŠããŠããŸãã
$ïŒïŒé¢æ°ã®ãããã§ãDOMããªãŒã®èŠçŽ ã®æäœã«ã¯æ°è¡ããããããŸããã§ããã éžæããèŠçŽ ãä¿åãããªããžã§ã¯ããã«ãŒãããŠãã€ãã³ãããªããžã§ã¯ãå ã®åèŠçŽ ã«ãã€ã³ãããããã«ãªããžã§ã¯ããéå§ããå¿ èŠã¯ãããŸããã§ããã DOMèŠçŽ ãéžæããããããä»»æã®æ°ã®ã¡ãœããã«ãã€ã³ãããã ãã§ãã ãããŠãã»ãã®æ°è¡ããããããŸããã ãã®æ©èœãæåã®ããŒãžã§ã³ããjQueryã«ãã£ããšã¯ä¿¡ããããŸããã
jQueryãæåã«ç»å Žãããšãã®ããšãèŠããŠããŸãã Prototype + moo.fxã䜿çšãããšæããŸãã ãããšãéå Žã ã£ããããããŸããã ãŸãã¯ã Prototype + script.aculo.usãããããŸããã ãŸãã¯ããããããã¹ãŠäžç·ã«äœ¿çšãããããããŸããã ãã¡ãããããæç¹ã§ç§ã¯MooToolsã«èœã¡çããŸããã åœæãç§ã¯MooToolsã倧奜ãã§ããã ç§ã圌ã«ã€ããŠã®æ¬ãæžããŸããã ïŒç§ã®æ¬ã®2人ã®ãã€ã€ãŒã ãããšããã«ãšã£ãŠãããªãã¯çŽ æŽãããã§ããããããšãããã€ãç§ãæ¯ããŠãããŸããã ïŒããããjQueryã䜿ããš ããã¹ãŠããã£ãšéããªããŸããã jQueryã¯ãProtoypeãDojoãGWTãšæ¯èŒããŠåçŽãªæ§æãšæŠå¿µãæã£ãŠãããããçµéšã®å°ãªãéçºè ãéãããšãã§ããã®ã§ãJQueryã圹ã«ç«ã¡ãŸããã
ææ°ã®Webãããžã§ã¯ãã®éçºã¯ãå€ãã®ãµãŒãããŒãã£ã®äŸåé¢ä¿ãçµã³ã€ããæ¹åã«åãã£ãŠããŸãã jQueryã¯ãã®åŸåãèªèããŠãããå€æ°ã®ãµãŒãããŒãã£ã©ã€ãã©ãªã§ã®ã¿æ¹åãããŠããŸãã Johnã®ã³ã¡ã³ããèªãã§ãã©ã€ãã©ãªã®äœ¿ããããããããžã§ã¯ãã®æåã®æ¥ããjQueryå²åŠã®åºç€ã§ããããšãæããã«ãªããŸããã
ããšãã°ã次ã®ãããªã³ã¡ã³ããèŠã€ããããšãã§ããŸãã
- ãéåžžã«ã·ã³ãã«ãªã³ãŒããæžãæ©äŒãäžãããã£ãã ç§ã¯ããã«ã€ããŠæ ç±çã§ãããã
- ãç§ã¯ãã€ã.wrapïŒïŒã¡ãœããã倧奜ãã§ããã æåããæžããšãããã®ããšã¯æ¬åœã«èŠçãåŒãèµ·ãããŸãããããŠããã¡ãããåäžã®æ¹æ³ã®åœ¢ã§ãããæã£ãŠããããšã¯éåžžã«äŸ¿å©ã§ãã
jQueryã¯ãåªããããã¥ã¡ã³ãã®éèŠæ§ã匷調ããæ°å°ãªããªãŒãã³ãœãŒã¹ãããžã§ã¯ãã®1ã€ã§ããã åœæããªãŒãã³ãœãŒã¹ãããžã§ã¯ãã«ã¯èŠªãã¿ãããããã¥ã¡ã³ãã¯ãããŸããã§ãã;ããã¯ãªãŒãã³ãœãŒã¹ã³ãŒãã®æåã«å¯Ÿå¿ããŠããŸããã§ããã ä¿¡ããããŠããŸããïŒãããªãã¯ããã°ã©ãã§ãã ããªãã¯ãããç解ããŸããã
2000幎代åã°ã®éçºè åã ã®ãªãŒãã³ãœãŒã¹ãããžã§ã¯ãã ãããŠã圌ã¯éçºè ã®å©äŸ¿æ§ã«ã€ããŠèããŸãããïŒ ã»ããš ïŒ çããã£ãã ãŠãŒã¶ãŒãã¬ã³ããªãŒãªjQueryå²åŠã¯ãç§ã®ãããªå€ãã®éåžžã®Webéçºè ãåŒãä»ããŸããã ãããŠãä»æ¥ã®æåãããªãŒãã³ãœãŒã¹ãããžã§ã¯ã-Bootstrap ã WordPress ã Sass ã Chrome ïŒçµã¿èŸŒã¿ã®éçºè ããŒã«ããããŸãïŒãèŠããšãéçºè ã®ç掻ãç°¡çŽ åãããšããèãã«åºã¥ããŠããŸãã
jQueryã¯ãçŸä»£ã®Webãµã€ãã®æ§ç¯ãæ¯æŽããããŒã«ä»¥äžã®ãã®ã§ãããWebéçºã®æ°ãæãç¯çŽããŸããã JQueryã®æ倧ã®ææã¯ãäœçŸäžãã®ãµã€ãã§äœ¿çšãããŠããããšã§ã¯ãããŸããã ããã¯åãªãå¯ç£ç©ã§ãã ç§ã«ãšã£ãŠãjQueryã§æãéèŠãªããšã¯ãå°ããªã©ã€ãã©ãªïŒããã83 KbïŒããªãŒãã³ãœãŒã¹ã®æåãšWebéçºæ¥çã«æ ¹æ¬çãªå€åããããããããšã§ãã ãžã§ã³ãäœãæãéããããšæã£ãŠããã®ãããŸã£ããèããŠããŸããã ããããããã¯åœŒãæ§ãããªJavaScriptã©ã€ãã©ãªãBarCampã§çºè¡šããŠãã9幎åŸã®ããšã§ãã
John Resigã¯ãjQueryã®æåã®ããŒãžã§ã³ã®ãœãŒã¹ã³ãŒãã«ã€ããŠ40件ã®ã³ã¡ã³ããäœæããŸããã ãããã¯ãã¹ãŠããã«ãããŸãïŒ Annotated jQuery Release ã ãã®èšäºã«ã€ããŠã¯ ããžã§ã³ã®ããã°ã§ãèªãããšãã§ããŸãã ãããŠãjQueryã«é¢ããããã«èå³æ·±ãäºå®ã¯ãå ¬åŒWebãµã€ãã®ãããžã§ã¯ãå±¥æŽããŒãžãèªãããšã§èŠã€ããããšãã§ããŸãã