対象èªè
ãä»åã®å¯¾è±¡èªè ã¯ã以ä¸ã®ã¨ããã§ãã
- JavaScriptã«ããã¯ã©ã¤ã¢ã³ããµã¤ãéçºã«æºãã£ã¦ããæ¹
- TypeScriptãCoffeeScriptãDartãªã©ãaltJSæè¡ã«èå³ã®ããæ¹
å¿ è¦ãªç°å¢
- Visual Studio Community 2013ãã¾ãã¯ä»ã¨ãã£ã·ã§ã³
JavaScriptã®åé¡ç¹
ãã¾ããJavaScriptã¯æ±ºãã¦éçºçç£æ§ã®é«ãè¨èªã§ã¯ããã¾ããã
ãä¾ãã°JavaScriptã«ã¯ã¯ã©ã¹ã¨ããæ¦å¿µã¯ããã¾ããã代ããã«ãJavaScriptåºæã®ãããã¿ã¤ãã¨ããæ©è½ã使ã£ã¦ãã¯ã©ã¹ã®ãããªãã®ãå®ç¾©ããå¿ è¦ãããã¾ããããã¯ã¯ã©ã¹ãã¼ã¹ã®ãªãã¸ã§ã¯ãæåè¨èªã«æ £ãã¦ãã大æ¦ã®éçºè ã«ã¨ã£ã¦ããªãã¿ã«ããæ©è½ã®ä¸ã¤ã§ããã¾ããããç¨åº¦ã®è¦æ¨¡ã®ã¢ããªãéçºããã«ã¯æ¬ ãããªãããã±ã¼ã¸ï¼åå空éã®æ¦å¿µãããã¾ããã
ãããã«ãJavaScriptã¯ãã¼ã¿åã«å¯å®¹ãªè¨èªã§ããå¯å®¹ãã¨ããã°èããã¯è¯ããã®ã®ãæ¬æ ¼çãªéçºã§ã¯ããã®å¯å®¹ããããã¾ãããçã¿ãçµæã¨ãã¦ãã°ã®æ½å¨çãªåå ã«ãªãããããããã¾ãã
ãã«ãé¢ããããJavaScriptã使ãç¶ããªããã°ãªããªãã®ã¯ãªãããããã¯ãJavaScriptããã©ã¦ã¶ä¸ã§åä½ããå¯ä¸ã®è¨èªã§ãããå½é¢ãé¸æã®ä½å°ããªãããã§ãããããããHTML5ã®æ®åããã¯ããããFlashï¼Silverlightãªã©RIAï¼Rich Internet Applicationï¼ã®è¡°éãããSPAï¼Single Page Applicationï¼ã®æµ¸éããªã©ã®è¦å ãããè¿å¹´ãWebã¢ããªã§ã¯ã©ã¤ã¢ã³ãéçºãå ããå²åã¯ããå¢ãã¦ãã¾ããJavaScriptã®éçºçç£æ§ãè£ãæ段ã®æä¾ã¯æ¥åã§ãã£ãããã§ãã
ããã£ã¨ããããã ãæ®åãã¦ããJavaScriptããããªãå¥ã®è¨èªã§æ¿ãæ¿ããã®ã¯ç¾å®çã§ã¯ããã¾ããã次æJavaScriptã¨å¼ã°ããECMAScript 6ãæ¤è¨ããã¦ãã¾ããï¼æ³¨1ï¼ããããæ£å¼ãªãªã¼ã¹ããã対å¿ãã©ã¦ã¶ãååã«æ®åããã«ã¯ãã¾ã ã¾ã æéãå¿ è¦ã§ãããã
ãããã§ç»å ´ããã®ããaltJSï¼JavaScriptã®ä»£æ¿è¨èªï¼ã¨å¼ã°ããã¢ããã¼ãã§ããJavaScriptã«èãç®ï¼è¨èªï¼ã被ãã¦ãã¾ããJavaScriptç¹æã®ä½¿ãã«ãããè¦ãé ãã¦ãã¾ããã¨ããèãæ¹ã§ããä¾ãã°altJSã®å¤ãã§ã¯ãC#ãJavaã©ã¤ã¯ãªã¯ã©ã¹ãã¼ã¹ã®ãªãã¸ã§ã¯ãæåæ§æãå©ç¨ã§ãã¾ãã
ãaltJSã¯ãä¸è¬çã«ã¯ãã³ã³ãã¤ã©ã¼ã«ãã£ã¦ãããããJavaScriptã«å¤æããããã®ãå®è¡ããã¾ãã®ã§ãæ¨æºçãªãã©ã¦ã¶ã ãã§åä½ãã¾ãããã©ã°ã¤ã³ãªã©ã®ã¤ã³ã¹ãã¼ã«ã¯å¿ è¦ããã¾ããã
ããã®ä¸ã§ã¯ãããããclassãã¼ã¯ã¼ãã追å ãããäºå®ã§ãã
altJSã¨TypeScript
ã代表çãªaltJSã«ã¯ãRails 3.1以éã§æ¨æºæè¼ããããã¨ããä¸æã«æ®åããCoffeeScriptãã¯ãããGoogleãéçºããDartãJavaScriptã ãã§ãªãJavaï¼C++ï¼PHPãªã©ã«ãå¤æå¯è½ãªHaxeãããã¦ãæ¬ç¨¿ã§æ±ãTypeScriptãªã©ãããã¾ãããããããé¬ãåã£ã¦ãããç¾æç¹ã§ã¯ãããã¡ã¯ãã¹ã¿ã³ãã¼ãã確ç«ããã¾ã§ã«ã¯è³ã£ã¦ãã¾ããã
ããã®ãããªç¶æ³ãåæã¨ãã¦ãã§ã¯ããã¾ãããèè ãTypeScriptãaltJSã®æ¬å½ã¨èããçç±ãããã¤ãæãã¦ããã¾ãã
ï¼1ï¼JavaScriptã®ã¹ã¼ãã¼ã»ããã§ãã
ããã£ããã¨è¨ã£ã¦ãã¾ããªãã°ãTypeScriptã¯ãJavaScriptã®æ¨æºä»æ§ã§ããECMAScript 5ã«å¯¾ãã¦ãéçãªåä»ãã¨ã¯ã©ã¹ãã¼ã¹ã®ãªãã¸ã§ã¯ãæåãå ãããJavaScriptã®ã¹ã¼ãã¼ã»ãããã§ãããã£ã¦ãæ¢åã®JavaScriptã®ã³ã¼ãããã»ã¼ãã®ã¾ã¾ï¼æ¯è¼çå°ãªãä¿®æ£ã§ï¼TypeScriptã®ã³ã¼ãã¨ãã¦åä½ãã¾ãã
ããªãã¸ã§ã¯ãæåæ§æã¯ã次æECMAScript 6ã®ä»æ§ãå åãããå 容ã«ãªã£ã¦ãã¾ãã®ã§ãTypeScriptãå¦ã¶ã¨ãããã¨ã¯æ¬¡ä¸ä»£ã®JavaScriptãå¦ã¶ã¨ãããã¨ã«ãç¹ããã¾ãã
ï¼2ï¼éçºç°å¢ã®é¸æè¢ãè±å¯ã§ãã
ããã¤ã¯ãã½ããçºã®altJSã¨ãããã¨ã§ãã¾ããVisual Studioã¨ã®è¦ªåæ§ã¯ãã«ã¤ãã§ããæ¬ç¨¿å¾åã§ãè¿°ã¹ãããã«ãèªåã³ã³ãã¤ã«æ©è½ãã¯ãããæ§æãã¤ã©ã¤ããIntellisenseããããã°æ©è½ãªã©ãéçºã«å¿ è¦ãªæ©è½ãæåããµãã¼ãããã¦ãã¾ãã
ããã ããTypeScriptããµãã¼ããã¦ããã®ã¯ããªã«ãVisual Studioã ãã§ã¯ããã¾ãããNode.jsã§ãã³ã³ãã¤ã©ã¼ãããã±ã¼ã¸æä¾ããã¦ãã¾ãããSublime Textï¼WebStormï¼Eclipseãªã©ãã¡ã¸ã£ã¼ãªéçºç°å¢ããã§ã«TypeScriptããµãã¼ããã¦ãããã¾ããå¤ãã®éçºè ããããå©ç¨ãã¦ãã¾ããTypeScriptã¯ã.NETéçºè ã®ããã ãã®è¨èªã§ã¯ããã¾ããã
ï¼3ï¼éçºçç£æ§ãåä¸ããåã·ã¹ãã
ãTypeScriptã¯ããã®åã®ã¨ãããåä»ããããJavaScriptã§ããJavaScriptã§ã¯ããã¾ãã§ãã£ãåããTypeScriptã§ã¯å®£è¨æã«æ示ããã®ãåºæ¬ã§ãï¼ãã ããå¿ é ã§ã¯ããã¾ããï¼ãããããéçåä»ããã¨è¨ãã¾ãã
ããã®åã·ã¹ãã ã«ãã£ã¦ãTypeScriptã¯çµ±åéçºç°å¢ã¨ã®è¦ªåæ§ã«åªãã¾ããC#ï¼Javaãªã©ã®è¨èªã§ã¯å½ããåã§ãã£ãåãã§ãã¯ãã³ã¼ãè£å®ã®æ©æµãå½ããåã®ããã«äº«åã§ãã¾ããããã¾ã§ã¯å®è¡ããã¾ã§æ¤åºã§ããªãã£ãåé¡ããã³ã³ãã¤ã«æããããã¯ã¨ãã£ã¿ã¼ä¸ã§ã®ã¿ã¤ãæã«èªèã§ããããããããã°æã®è² æ ãå¤§å¹ ã«è»½æ¸ããã¾ãã