1. TypeScriptãšã¯ïŒ
TypeScriptã¯ãè¿å¹Žæ³šç®ãéããŠããããã°ã©ãã³ã°èšèªã®äžã€ã§ããWebéçºãäžå¿ã«å€ãã®ãããžã§ã¯ãã§æ¡çšãããŠããããã®äººæ°ã®çç±ãšããŠå€ãã®ç¹åŸŽãå©ç¹ãæããããŸãã
1.1. TypeScriptã®ç¹åŸŽãšå©ç¹
TypeScriptã¯ãMicrosoftã«ãã£ãŠéçºããããªãŒãã³ãœãŒã¹ã®ããã°ã©ãã³ã°èšèªã§ãããã®åã®éããJavaScriptã®ã¹ãŒããŒã»ãããšããŠèšèšãããŠãããJavaScriptã®ãã¹ãŠã®æ©èœã«å ããéçåä»ããã€ã³ã¿ãŒãã§ãŒã¹ãªã©ã®åŒ·åãªæ©èœãæã£ãŠããŸãã
ãã®éçåä»ãã®ç¹åŸŽã¯ã倧èŠæš¡ãªãããžã§ã¯ããããŒã ã§ã®éçºã«ãããŠããã°ãæ©æã«çºèŠããã³ãŒãã®å質ãåäžãããããã«éåžžã«æå¹ã§ãããŸããTypeScriptã¯åŒ·åãªãšãã£ã¿ã®ãµããŒããæã£ãŠãããã³ãŒãè£å®ããªãã¡ã¯ã¿ãªã³ã°ãå®çŸ©ãžã®ãžã£ã³ããªã©ã®æ©èœãå©çšããããšãã§ããŸãã
ããã«ãTypeScriptã¯å€§èŠæš¡ãªã³ãã¥ããã£ãæã£ãŠãããå€ãã®ã©ã€ãã©ãªããã¬ãŒã ã¯ãŒã¯ãTypeScriptã®ãµããŒããæäŸããŠããŸããããã«ãããæ¢åã®JavaScriptã®ã³ãŒãããŒã¹ãTypeScriptã«ç§»è¡ããéã®ããŒãã«ãäœããªã£ãŠããŸãã
1.2. JavaScriptãšã®éã
JavaScriptã¯ãWebããŒãžã®åçãªæ¯ãèããå¶åŸ¡ããããã®èšèªãšããŠåºãç¥ãããŠããŸããäžæ¹ãTypeScriptã¯JavaScriptã®ã¹ãŒããŒã»ãããšããŠèšèšãããŠãããããJavaScriptã®ãã¹ãŠã®æ©èœãæã¡ã€ã€ãããã«å€ãã®æ©èœãè¿œå ããŠããŸãã
æã倧ããªéãã¯ãåè¿°ã®éãéçåä»ãã®ãµããŒãã§ããJavaScriptã¯åçåä»ãèšèªã§ãããå€æ°ã®åã¯å®è¡æã«æ±ºå®ãããŸããããããTypeScriptã§ã¯ã³ãŒããæžã段éã§å€æ°ã®åãæå®ããããšãã§ããããã«ããåã«é¢ãããšã©ãŒãã³ã³ãã€ã«æã«æ€åºããããšãã§ããŸãã
ãŸããTypeScriptã¯ã€ã³ã¿ãŒãã§ãŒã¹ããžã§ããªã¯ã¹ãåå空éãªã©ãJavaScriptã«ã¯ååšããªãé«åºŠãªæ©èœãæäŸããŠããŸãããããã®æ©èœã¯ã倧èŠæš¡ãªã¢ããªã±ãŒã·ã§ã³ã®éçºãã©ã€ãã©ãªã®èšèšã«ãããŠãã³ãŒãã®æ§é ãæŽçããåå©çšæ§ãåäžãããããã«åœ¹ç«ã¡ãŸãã
2. TypeScriptã掻çšããå¯æ¥ã®ã¡ãªãã
è¿å¹ŽãTypeScriptã®äººæ°ãé«ãŸãäžãå¯æ¥ãšããŠã®TypeScriptã®å©çšãå¢å ããŠããŸãããã®èæ¯ã«ã¯ãTypeScriptã掻çšããå¯æ¥ãæã€å€ãã®ã¡ãªããããããŸãã
2.1. éèŠã®é«ãŸããšåžå ŽäŸ¡å€
Webéçºã®äžçã§ã¯ãTypeScriptã®éèŠãæ¥éã«é«ãŸã£ãŠããŸããç¹ã«ã倧èŠæš¡ãªãããžã§ã¯ãããšã³ã¿ãŒãã©ã€ãºã¬ãã«ã®ã¢ããªã±ãŒã·ã§ã³éçºã§ã¯ãTypeScriptã®æã€éçåä»ããé«åºŠãªæ©èœãè©äŸ¡ãããŠããŸãããã®ãããTypeScriptã®ã¹ãã«ãæã€éçºè ã¯ãåžå ŽäŸ¡å€ãé«ãŸã£ãŠãããå€ãã®äŒæ¥ãã¯ã©ã€ã¢ã³ãããã®æ±äººãäŸé Œãå¢å ããŠããŸãã
ãŸããTypeScriptã掻çšããããšã§ããã°ã®å°ãªããä¿å®æ§ã®é«ããå質ã®è¯ãã³ãŒããæžãããšãã§ãããããã¯ã©ã€ã¢ã³ãããã®ä¿¡é ŒãåŸããããªããŸããããã«ãããå¯æ¥ãšããŠã®åå ¥ã®å®å®ããããè¯ãæ¡ä»¶ãžã®ã¢ã¯ã»ã¹ãå¢ããå¯èœæ§ããããŸãã
2.2. å€æ§ãªãããžã§ã¯ããžã®åå
TypeScriptã¯ãããã³ããšã³ãéçºã ãã§ãªããããã¯ãšã³ããã¢ãã€ã«ã¢ããªã±ãŒã·ã§ã³ã®éçºã«ãå©çšãããŠããŸãããã®ãããTypeScriptã®ã¹ãã«ãæã€ããšã§ãå€æ§ãªãããžã§ã¯ããžã®åå ãå¯èœãšãªããŸãã
äŸãã°ãReactãVue.jsãAngularãªã©ã®äººæ°ã®ãã¬ãŒã ã¯ãŒã¯ãã©ã€ãã©ãªã¯ãTypeScriptãšã®çµ±åãé²ããããŠããããããã®ãããžã§ã¯ãã§ã®éçºçµéšãç©ãããšãã§ããŸãããŸããNode.jsãå©çšããããã¯ãšã³ãã®éçºããReact NativeãIonicãå©çšããã¢ãã€ã«ã¢ããªã±ãŒã·ã§ã³ã®éçºã«ãTypeScriptã¯æŽ»çšãããŠããŸãã
ãã®ããã«ãTypeScriptãåŠã¶ããšã§ãWebãµã€ããWebã¢ããªã±ãŒã·ã§ã³ãã¢ãã€ã«ã¢ããªãªã©ãããŸããŸãªãããžã§ã¯ãã«åå ãããã£ã³ã¹ãå¢ããå¯æ¥ãšããŠã®çµéšãã¹ãã«ãåºããããšãã§ããŸãã
3. å¯æ¥ã§ã®æ¡ä»¶ç²åŸã®ã³ã
å¯æ¥ãšããŠã®ããã°ã©ãã³ã°ã¯ãæè¡åã ãã§ãªããæ¡ä»¶ç²åŸã®ã¹ãã«ãæ±ããããŸããç¹ã«ãTypeScriptã®ãããªäººæ°ã®ããæè¡ã掻çšããå Žåã競åãå€ããªããããå·®å¥åã®ãã€ã³ãããã£ãããšæã¡åºãããšãéèŠã§ãã
3.1. ãããã£ãŒã«ã®å å®
å€ãã®ããªãŒã©ã³ã¹ã®ãã©ãããã©ãŒã ã§ã¯ããããã£ãŒã«ãæåã®ã¢ããŒã«ãã€ã³ããšãªããŸãããã®ãããèªåã®ã¹ãã«ãçµéšãéå»ã®å®çžŸããã£ãããšèšèŒããèŠã人ãèå³ãæã€ãããªå 容ã«ããããšã倧åã§ãã
ç¹ã«ãTypeScriptã®ã¹ãã«ãã¢ããŒã«ããéã«ã¯ãå ·äœçãªãããžã§ã¯ãã®çµéšãã䜿çšãããã¬ãŒã ã¯ãŒã¯ãã©ã€ãã©ãªã®æ å ±ã詳ããèšèŒãããšè¯ãã§ãããããŸããããŒããã©ãªãªãµã€ããžã®ãªã³ã¯ããGitHubã®ãªããžããªãªã©ãå®éã®ã³ãŒãã確èªã§ããæ å ±ããã©ã¹ãšãªããŸãã
3.2. å®çžŸã®ã¢ããŒã«
æ¡ä»¶ãç²åŸããããã«ã¯ãä¿¡é Œãéåžžã«éèŠã§ãããã®ãããéå»ã®å®çžŸãã¯ã©ã€ã¢ã³ãããã®è©äŸ¡ãæšèŠæãªã©ãç©æ¥µçã«ã¢ããŒã«ããããšã§ãæ°ããã¯ã©ã€ã¢ã³ãããã®ä¿¡é ŒãåŸããããªããŸãã
ç¹ã«ãTypeScriptã掻çšãããããžã§ã¯ãã®æåäºäŸããå°é£ãä¹ãè¶ããçµéšãªã©ãå ·äœçãªãšããœãŒãã亀ããŠã¢ããŒã«ããããšã§ãä»ã®éçºè ãšã®å·®å¥åãå³ãããšãã§ããŸãã
3.3. ãããã¯ãŒãã³ã°ã®éèŠæ§
æè¡ã®äžçã§ã¯ã人èãéåžžã«éèŠã§ããç¹ã«ãæ°ããæè¡ããã¬ã³ãããã£ããããããã«ã¯ãåãåéã®ãããã§ãã·ã§ãã«ãšã®äº€æµãæ¬ ãããŸããã
ãªã³ã©ã€ã³ã®ã³ãã¥ããã£ããTypeScriptã«é¢ããå匷äŒãã»ãããŒãªã©ã«åå ããããšã§ãæ°ããæ å ±ãã¹ãã«ãåŸãã ãã§ãªããæ¡ä»¶ã®çŽ¹ä»ãå ±åéçºã®ãã£ã³ã¹ãå¢ããã§ãããããŸããèªåã®ç¥èãçµéšãå ±æããããšã§ãèªåã®ãã©ã³ããç¯ãããšãå¯èœã§ãã
4. 人æ°ã®ããTypeScriptå¯æ¥ãã©ãããã©ãŒã
è¿å¹ŽãTypeScriptã®ã¹ãã«ãæã€éçºè ã«ãšã£ãŠãå€ãã®å¯æ¥ãã©ãããã©ãŒã ãå©çšãããŠããŸãããããã®ãã©ãããã©ãŒã ã掻çšããããšã§ãäžçäžã®ã¯ã©ã€ã¢ã³ããšç¹ãããå€æ§ãªæ¡ä»¶ã«ææŠããããšãã§ããŸãã
4.1. Upworkã®æŽ»çšæ¹æ³
Upworkã¯ãäžçæ倧ã®ããªãŒã©ã³ã¹ããŒã±ãããã¬ã€ã¹ã®äžã€ã§ããå€ãã®ã¯ã©ã€ã¢ã³ãããããžã§ã¯ããæçš¿ããããªãŒã©ã³ãµãŒãããã«å¿åãã圢åŒãšãªã£ãŠããŸãã
Upworkã§ã®æ¡ä»¶ç²åŸã®ã³ãã¯ããããã£ãŒã«ã®å å®ãéå»ã®è©äŸ¡ã®åäžã§ããç¹ã«ãTypeScriptã®ã¹ãã«ã掻ãããå®çžŸãããŒããã©ãªãªããã£ãããšã¢ããŒã«ããããšã§ãé«é¡ãªæ¡ä»¶ãé·æã®ãããžã§ã¯ããç²åŸãããããªããŸãã
4.2. Freelancerã§ã®æ¡ä»¶ç²åŸ
FreelancerããŸãã倧æã®ããªãŒã©ã³ã¹ããŒã±ãããã¬ã€ã¹ã®äžã€ã§ãããã¡ããUpworkãšåæ§ã«ãå€ãã®æ¡ä»¶ãæçš¿ãããŠãããTypeScriptã®ã¹ãã«ã掻ããããšãã§ããŸãã
Freelancerã§ã¯ãã³ã³ãã¹ããšãã圢åŒã§ã®æ¡ä»¶ãå€ããããèªåã®ã¹ãã«ãçŽæ¥ã¢ããŒã«ãããã£ã³ã¹ãå¢ããŸãããŸããæåå ±é ¬åã®æ¡ä»¶ãå€ããããå®åã掻ãããŠåå ¥ãå¢ããããšãã§ããŸãã
4.3. ToptalãšArcã®ç¹åŸŽ
ToptalãšArcã¯ãé«åºŠãªã¹ãã«ãæã€ãããã§ãã·ã§ãã«åãã®ãã©ãããã©ãŒã ã§ããç¹ã«Toptalã¯ãããã3%ã®ããªãŒã©ã³ãµãŒã ããåå ã§ãããšããå³ããéžå®åºæºããããŸãã
ãããã®ãã©ãããã©ãŒã ã§ã¯ãTypeScriptãã¯ãããšããå é²çãªæè¡ãæ±ããé«é¡ãªæ¡ä»¶ãå€ããçµéšãã¹ãã«ã掻ãããŠé«åå ¥ãåŸãããšãã§ããŸãããã ããåå ããããã®éžå®ããã»ã¹ãå³ãããããååãªæºåãšçµéšãå¿ èŠã§ãã
5. TypeScriptã®åŠç¿ãªãœãŒã¹
ããã°ã©ãã³ã°ã®åŠç¿ã¯ãé©åãªãªãœãŒã¹ãå©çšããããšã§ãå¹ççã«ã¹ãã«ãç¿åŸããããšãã§ããŸããTypeScriptãäŸå€ã§ã¯ãããŸããããã®ã»ã¯ã·ã§ã³ã§ã¯ãTypeScriptã®åŠç¿ã«åœ¹ç«ã€ãªãœãŒã¹ããå®è·µçãªãããžã§ã¯ãã®ã¢ã€ãã£ã¢ã玹ä»ããŸãã
5.1. ããããã®æžç±ãšãŠã§ããµã€ã
å€ãã®åªããæžç±ããŠã§ããµã€ããTypeScriptã®åŠç¿ã«åœ¹ç«ã£ãŠããŸããåå¿è ããäžçŽè ãŸã§ãããããã®ã¬ãã«ã«åããããªãœãŒã¹ãååšããŸãã
æžç±ã§ã¯ã”TypeScript Deep Dive“ã”Mastering TypeScript“ãªã©ãè©äŸ¡ãããŠããŸãããããã®æžç±ã¯ãåºæ¬çãªæ§æããé«åºŠãªãã¯ããã¯ãŸã§ãå¹ åºãã«ããŒããŠããŸãã
ãŠã§ããµã€ãã§ã¯ãTypeScriptã®å ¬åŒããã¥ã¡ã³ãããStack Overflowã®TypeScriptã¿ã°ãMDN Web Docsãªã©ãéåžžã«åèã«ãªããŸãããããã®ãµã€ãã¯ãå ·äœçãªåé¡ã®è§£æ±ºãæ°ããæ©èœã®åŠç¿ã«åœ¹ç«ã¡ãŸãã
5.2. å®è·µçãªãããžã§ã¯ãã®ã¢ã€ãã£ã¢
çè«çãªåŠç¿ã ãã§ãªããå®éã«æãåãããŠãããžã§ã¯ããäœæããããšã§ãæ·±ãç解ãå®è·µçãªã¹ãã«ãç¿åŸããããšãã§ããŸãã
äŸãã°ãTypeScriptãå©çšããŠãã·ã³ãã«ãªToDoã¢ããªãã倩æ°äºå ±ã¢ããªãã«ã¬ã³ããŒã¢ããªãªã©ãäœæããããšã§ãåºæ¬çãªæ§æããã¬ãŒã ã¯ãŒã¯ã®å©çšæ¹æ³ãåŠã¶ããšãã§ããŸãã
ããã«äžçŽè åããšããŠãTypeScriptã掻çšããEã³ããŒã¹ãµã€ããããªã¢ã«ã¿ã€ã ãã£ããã¢ããªãAPIã®éçºãªã©ãææŠãã䟡å€ããããŸãããããã®ãããžã§ã¯ããéããŠãããŒã¿ããŒã¹ã®æäœãå€éšAPIã®é£æºãèªèšŒæ©èœã®å®è£ ãªã©ãå®è·µçãªã¹ãã«ãç¿åŸããããšãã§ããŸãã
6. ãŸãšã
ãã®èšäºãéããŠãTypeScriptã掻çšããå¯æ¥ã®é åããæ¡ä»¶ç²åŸã®ããã®ã³ããããã«ã¯åŠç¿ãªãœãŒã¹ãªã©ãå€å²ã«ãããæ å ±ãæäŸããŸãããæåŸã«ãTypeScriptå¯æ¥ã®å°æ¥æ§ããç¶ç¶çãªã¹ãã«ã¢ããã®éèŠæ§ã«ã€ããŠè§ŠããŠã¿ãŸãããã
6.1. TypeScriptå¯æ¥ã®å°æ¥æ§
TypeScriptã¯ããã®éçåä»ãã®ç¹æ§ãJavaScriptãšã®äºææ§ãªã©ãå€ãã®å©ç¹ãæã€èšèªãšããŠæ³šç®ãããŠããŸããç¹ã«ã倧èŠæš¡ãªãããžã§ã¯ããããŒã éçºã«ãããŠããã®åãçºæ®ããŸãã
è¿å¹Žãå€ãã®äŒæ¥ããããžã§ã¯ããTypeScriptãå°å ¥ããŠããããã®éèŠã¯ä»åŸãå¢å ãããšäºæž¬ãããŸãããã®ãããªèæ¯ãããTypeScriptãã¹ãã«ã»ããã«å ããããšã¯ãå¯æ¥ãšããŠã®æ¡ä»¶ç²åŸããã£ãªã¢ã¢ããã«éåžžã«æå©ãšèšããã§ãããã
6.2. æ¡ä»¶ç²åŸã®ããã®ç¶ç¶çãªã¹ãã«ã¢ãã
æè¡ã®äžçã¯æ¥ã é²åããŠããŸããæ°ãããã¬ãŒã ã¯ãŒã¯ãã©ã€ãã©ãªãç»å Žããæ¢åã®ãã®ãã¢ããããŒããããäžãç¶ç¶çãªåŠç¿ã¯å¿ é ãšãªããŸãã
TypeScriptã®ã¹ãã«ã ãã§ãªããé¢é£ããæè¡ãããŒã«ãææ°ã®ãã¬ã³ããªã©ããã£ããã¢ããããããšã§ãããå€ãã®æ¡ä»¶ã«å¿åããããšãã§ããèªåã®åžå ŽäŸ¡å€ãé«ããããšãã§ããŸãããŸããæ°ããç¥èãæè¡ãåŠã¶ããšã¯ãããã°ã©ãã³ã°ã®æ¥œãããã¢ãããŒã·ã§ã³ã®ç¶æã«ãç¹ãããŸãã
æåŸã«ãTypeScriptã掻çšããå¯æ¥ã¯ãæè¡çãªã¹ãã«ã ãã§ãªããã³ãã¥ãã±ãŒã·ã§ã³èœåããããžã§ã¯ã管çã®ã¹ãã«ãèŠæ±ãããå Žé¢ãå€ãã§ãããããã®ã¹ãã«ãç¶ç¶çã«ç£šããããå€ãã®æ¡ä»¶ãç²åŸããæåãåããããã®åå°ãç¯ããŠãããŸãããã
åèæç®
- TypeScript Jobs | Upwork™ – Upworkã§ã®TypeScripté¢é£ã®ä»äºã®ãªã¹ããæäŸããŠããŸãããã£ãªã¢ãåé²ãããããã®æåããé¢ä¿ãç¯ãããã®æ å ±ãæ²èŒãããŠããŸãã
- 27 Best Freelance TypeScript Developers For Hire In August 2023 – Upwork – 2023幎8æã®Upworkã§ã®ãããTypeScriptéçºè ã®ãªã¹ããšãã¯ã©ã€ã¢ã³ãã®è©äŸ¡æ å ±ãæ²èŒããŠããŸãã
- Typescript Jobs for August 2023 | Freelancer – Freelancerã§ã®TypeScripté¢é£ã®ä»äºã®ãªã¹ããšãTypeScriptã®åºæ¬æ å ±ãæäŸããŠããŸãã
- 11 Best Freelance TypeScript Developers [Hire in 48 Hours] | Toptal® – Toptalã§ã®ãããTypeScriptéçºè ã®ãªã¹ããšãToptalã®ãµãŒãã¹ã«é¢ãã顧客ã®å£°ãæ²èŒããŠããŸãã
- Hire Top TypeScript Developers (Updated Daily) | Arc – Arcã§ã®ãããTypeScriptéçºè ã®ãªã¹ããšãArcã®ãµãŒãã¹ã®ç¹åŸŽã玹ä»ããŠããŸãã