Javaã«ã€ããŠã¯éåžžã«å€ãã®æ¬ããããJavaã«é¢ãããæ¬ããããã€ããããŸãã ãããã«ã¯ãKay HorstmannãšGary Cornellã«ããCore JavaïŒJavaã®ãã·ã¢èªçãProfessionalLibraryïŒãå«ãŸããŸãã ããã¯èšèªèªäœããããã1幎é ããŠç»å Žããããã«ãããã¯ã«é¢ããäž»èŠãªæ å ±æºã®1ã€ã«ãªããŸããã ãããŠã次ã®20幎éã§ã10ã®ãšãã£ã·ã§ã³ã«èããJavaã®æ°ããããŒãžã§ã³ã«é¢ããæ å ±ã綿å¯ã«è£å ãã1äžä»£ä»¥äžã®Javaéçºè ãæé·ããããã«ããŸããã
Kayã¯Javaã®é©æ°ã«åŒãç¶ã泚ç®ããŠããããµã³ã¯ãããã«ãã«ã¯ã®ã«ã³ãã¡ã¬ã³ã¹ã®ç§ã«ãJoker 㯠Java 9ã®åªããç¹ã説æããŸãã ãããŠåœŒã®å°çãèŠè¶ããŠãç§ãã¡ã¯åœŒã«å€ãã®ããšã«ã€ããŠå°ããŸããïŒæ¬ã«åãçµãããšããªã³ã©ã€ã³ã³ãŒã¹ããããã«åã£ãŠä»£ããããšãã§ãããã©ããããããŠåŠçãšæ¥çã®éãããããŠJavaã®æªæ¥ã«ã€ããŠã
-ãã³ã¢Javaããéåžžã«æåã§éèŠã«ãªã£ããšããäºå®ã¯ãäœããã®åœ¢ã§ãã®äœæ¥ã«åœ±é¿ããŸããïŒ ããšãã°ãä»ã®èè ããã培åºçã«ãã¡ã¯ããã§ãã¯ãè¡ãå¿ èŠããããšæããŠããŸããïŒ
-ãã³ã¢Javaãã«ã€ããŠã®èŠªåãªèšèãããããšãã åèè ãå®éã«é©åã«ãã§ãã¯ããŠããããšãé¡ã£ãŠããŸããããããå€ãã®äººã«ãšã£ãŠç¢ºãã§ããããšã¯ç¢ºãã§ãã ãããããCore JavaããåããŠãªãªãŒã¹ããããšããããã€ãã®æžç±ã競åããåã«APIããã¥ã¡ã³ããç¹°ãè¿ããŸããããããã¥ã¡ã³ãã¯å¿ ãããæ£ãããšã¯éããŸããã§ããã ãããçºèŠããã®ã¯ãAPIãå®è¡ããå°ããªïŒãã ããããã¡ããã®äŸã§ã¯ãªãïŒçŸå®çãªããã°ã©ã ãäœæãããšãã§ãã ãããã©ãã»ã©è€éãæ³åããã®ã¯å°é£ã§ããstackoverflow.comã¯ãŸã ã§ã¯ãªããJavaãœãŒã¹ã³ãŒããžã®ã¢ã¯ã»ã¹ã¯å¶éãããŠããŸããã
ãJava Concurrency in Practiceããªã©ã®äžéšã®æ¬ã¯ãã³ãŒãäŸã䜿çšããã«åœç¶ã®ããšãšæã£ãŠããããšãç解ã§ããã»ã©åªããå°é家ã«ãã£ãŠæžãããŠããŸãã ããããæ°ãããã¯ãããžãŒãéçºããããšãå€ãã®æ¬ãæ¥ãã§æžããªããã°ãªããªãããšãèªããŸãããã ãã®å Žåãèè ãè¯ãäŸãæäŸããããšãéåžžã«éèŠã§ãã ã¯ã©ã¹ã«åç©åããããã¡ãœããã«ãWoofããšãMeowãã衚瀺ãããŠããæ¬ãèŠãââãšãæ°ã«å ¥ããªãã ã³ãŒããçŸå®çãªã³ã³ããã¹ãã§èŠããã ç§ã«ãšã£ãŠã®æšæºã¯ãCã«é¢ããå€å žçãªKernigan and Ritchieã®æ¬ã§ãã»ãšãã©ãã¹ãŠã®ã¹ãããããäœæ¥ããã°ã©ã ããã®ãã®ã§ãã
ãã³ã¢Javaããæåã«å ¬éãããJava APIã®å€ãã®ãã®ãæ£ããæ©èœããªãããããã°ã©ããŒã«ãšã£ãŠäžäŸ¿ã§ãããšèšããããšãã圌ãã¯Sun Microsystemsã®ãšãã£ã¿ãŒã«å«ã³ãŸããã ããããããã¯æ¬ã®è©å€ãæ¬åœã«å©ãããšæããŸãã Java SE 9ãšãã£ã·ã§ã³ã«åãçµãã§ããä»ãç§ã¯ãŸã äœãããŸãããã®ããäœãããŸããããªãã®ãã説æããããšããŠããŸãã 幞ããªããšã«ãç§ã®ç·šéè ã«èª°ãæ鳎ãã€ããŸããã
-äœå幎ãã®éã1åã®æ¬ã«åãçµãã§ããŸã-ããã¯äœã§ããïŒ äžéšã®ãã©ã°ã¡ã³ããå€ããªã£ãŠããããã«èŠãããšãã«ãã¬ã¬ã·ãŒããçºçããŸãããããããåãåºããŠæšãŠããããšã¯åã«äžå¯èœã§ãã ããã¯ã®æŽæ°ã¯ã³ãŒãã®ãªãã¡ã¯ã¿ãªã³ã°ã®ããã«èŠããŸããïŒ ãããŠãäœå¹Žãåã«æžããããã®ã¯ããç§ã¯ã©ããªæããªããšãæžããããšããæèŠãåŒã³èµ·ãããŸãããïŒ
-éåžžã«è¯ã質åã§ãã ãã®æ¬ãæžãå§ãããšããç§ã¯æç§æžã®èè ã§ããããéçºè ã§ãããã1ã€ã®ããŒãžã§ã³ã ãã§ãªããããã«æ¬¡ã®ããŒãžã§ã³ã«ã€ããŠèããããšã¯èªç¶ã§ããã ãã®æ¬ã¯ãèšèªãšAPIãšãšãã«æé·ããããã«èšèšãããŠããŸãã ããããAPIãé£èºçã«æé·ãããã³ã¢Javaãã2ã€ã®ååãããªã¥ãŒã ã«å€ãã£ããšããç§ãã¡èªèº«ãçãšåãããã«é©ããŸããã
ã¯ããæ°ãããšãã£ã·ã§ã³ã®äœæ¥ã¯ãªãã¡ã¯ã¿ãªã³ã°ã®ããã«æããŸãã å€ãã®å Žåãæ°ããæ¹æ³ã§äœããè¡ããšãä»ã®ã¢ãããŒããæ代é ãã«ãªããäœçŸãã®ãµã³ãã«ã³ãŒããåŠçããå¿ èŠããããŸãã èªè ãå€ããã®ãšæ°ãããã®ã®æ··åã«ãã£ãŠæ··ä¹±ããªãããã«ãç§ã¯ããããé©åãªãã¹ãŠã®äŸã§æ°ããæ©èœã䜿çšããã®ã奜ãã§ãã åçŽãªã±ãŒã¹ã¯ãã€ã¢ã¢ã³ãæŒç®åã§ããããnew ... <...>ïŒ...ïŒããšãã圢åŒã®åŒãèŠã€ããããã«å¿ èŠã§ããã ããããã©ã ãåŒãè¿œå ããããšããç§ã¯ãµã³ãã«ããã°ã©ã ã®åå以äžãæžãçŽããªããã°ãªããŸããã§ããã
Core Javaã3ããªã¥ãŒã ã«å¢ãããããªãã®ã§ããã¹ãŠã®ãšãã£ã·ã§ã³ã§ããã€ãã®ãã®ãåé€ãããŸãã ãã®äžã«ã¯ããã¯ã誰ãæ°ã«ããªãå€ãããŒãžã§ã³ã®ãã°ã«é¢ããæ å ±ãèšèªã®æ¹åã®ããã«æ代é ãã«ãªã£ããåé¿çããããã³APIã®å€§èŠæš¡ãªãåãåããããããŸãã ãããããããCORBAã®éåžžã«è©³çŽ°ãªèª¬æããããŸãããããããåãé€ãããšã¯éåžžã«ç°¡åãªè§£æ±ºçã§ããã RMIã®èª¬æãåé€ããããšããäžéšã®èªè ã¯æã£ãŠããŸãããã誰ãããããããã¡ã以å€ã®äŸã§æåŸã«äœ¿çšããã®ã¯ãã€ã§ããïŒ ãããŠä»ã次ã®é£ãã決å®ãéžæãããŠããŸãïŒSwingã§äœããã¹ããïŒ
æè¡çãªãšã©ãŒãããã¹ãã«çµã¿èŸŒãŸããããšããããŸãããèªè ãå ±åã§ããããã«ãæ°ä»ãããšã©ãŒã®ãªã¹ããä¿æããŠããŸãã ç§ã¯ãããã®ããã°å ±åããéåžžã«çå£ã«åãæ¢ãããšã©ãŒã1ã€ã®åºçç©ãããé·ãç¶ããªãããã«ããŸãã 幞ããªããšã«ããç§ãããã«æãã ã£ãã®ãããšããç¶æ³ã¯ãã£ãã«èµ·ãããŸããããæãšããŠç§ã®èŠç¹ãçºå±ããããšããããŸãã ããšãã°ããã¹ããããã¯ã©ã¹ãç»å Žãããšããjavapãä»ããéã³ã³ãã€ã«çµæãåŒçšããŠãããŒã«ã«å€æ°ã®ãã£ããã£ãã©ã®ããã«æ©èœãããã詳现ã«èª¬æããŸããã åŸã§èããŸããã ã¡ãœããåŒã³åºããæè¡çã«ã©ã®ããã«æ©èœããããªã©ãåã詳现ã§èª¬æããŸãããïŒ ããããèªè ã¯ãã®ãããªè©³çŽ°ãå¿ èŠãšããŸããã§ããã å®éã«ã¯ãããã°ã©ãã¯ã¡ãœããåŒã³åºããšããŒã«ã«å€æ°ãã£ããã£ã®äž¡æ¹ãåŠçã§ãããšããç¹ã§ã³ã³ãã€ã©ãä¿¡é ŒããæºåãæŽã£ãŠãããããç¡é§ãªè©³çŽ°ã¯åé€ããŸããã
å¥ã®é¢åãªããšã¯ãç¹å®ã®ããŒãžã§ã³ã«é¢é£ããæ å ±ã®å¢å ã§ãã ãJava 6ïŒè²§åŒ±ãªãã®ïŒãããã°ãJava 7以éã§ãããè¡ãããšãã§ããŸããJava9ã§ã¯ãä»ã®ããšãã§ããããã«ãªã£ããããã»ãŒéæã§ããŸããã ããã£ãã¡ãªã³ã¢Javaãã§ã¯ãããšãã°JavaScriptããã§ã«ææããŠããããã°ã©ããŒãæ³åããŠãJavaã®ææ°ããŒãžã§ã³ãã©ã®ããã«æ©èœããããç°¡åã«èª¬æããŸãã ãšãŠãçœããã§ãã ãããããã¡ãããå€ãã®ãŠãŒã¶ãŒã¯ç°ãªãããŒãžã§ã³ã«å¯ŸåŠããããšãäœåãªããããŠãããããåŸæ¥ã®ãã³ã¢Javaãã¯äŸç¶ãšããŠãããèæ ®ããŸãã
-äžéšã®æžç±ã¯éãããèªè ã«ã¢ããŒã«ããŸãããCore Javaã¯éåžžã«ç°ãªãç¥èãšçµéšãæã€ããŸããŸãªäººã ã«ãã£ãŠéãããŠããŸãã ãã¿ããªã®ããã«ãæžãã®ã«èŠåŽããŠããŸãããïŒ ãããã«å¯ŸåŠããã®ã«äœã圹ç«ã¡ãŸããïŒ
-å°é£ããããåå¿è ã®èªè ã«ã¯ãã¹ãŠã®é«åºŠãªè³æã®ç解ãæåŸ ã§ããªãããšã¯é¿ããããŸããã ãªããžã§ã¯ãæåããã°ã©ãã³ã°ã®ã¿ãåŠç¿ããŠããèªè ã¯ãç¶æ¿ãšã€ã³ã¿ãŒãã§ã€ã¹ã泚ææ·±ãç解ãããªãã¬ã¯ã·ã§ã³ãŸãã¯ã¢ãžã¥ãŒã«ãäžlanceããã ãã§ãå°é家ã¯å察ã®ããšãããããšãæåŸ ããŠããŸãã APIã«é¢ããç« ããããšãèªè ã¯èå³ã®ãªãç« ãç°¡åã«ã¹ãããã§ããŸãã
æè¿ã§ã¯ãããã°ã©ãã³ã°ã«é¢ããæ¬ãæåããæåŸãŸã§èªã人ã¯ã»ãšãã©ããŸããã ç§ã®èªè ã®å€ãã¯ãç¹å®ã®ãããã¯å°çšã®ããŒãžãéãã ãã®Safari Booksã䜿çšããŠããŸãã ãããŠãImpatiientã·ãªãŒãºã®æ¬ãæ§é åããŠãåãæ¬ã®ä»ã®å Žæãåžžã«åç §ããã«ããã®åœ¢åŒã§è³æãç°¡åã«ç解ã§ããããã«ããŸããã
-é·å¹Žã«ããã£ãŠJavaã«ã€ããŠæžããŠè©³çŽ°ã«èª¬æãããšããJavaã§ã©ãã ãã®ããšãå®å šã«ééã£ãŠããããšæããŸããïŒ äœãæ¹åããããšããŸãããïŒ
-ãã¡ãããJavaã®ãããªå€§èŠæš¡ã§è€éãªãã©ãããã©ãŒã ã«ãªããšãäœããããããããšããããããããŸãã ãããããã£ãã«ãªãããšã¯ã²ã©ãééã£ãŠããããšã§ããããšãã°ãä»®æ³ãã·ã³ã®å éšåé¡ã§ããã¯ãã ã£ãããªããã£ãåã®ååšã§ãã ïŒãããŠãå°æ¥ãæ°ããããŒãžã§ã³ã®Javaã§ãããä¿®æ£ãããããšãé¡ã£ãŠããŸããïŒ
ãããããã¡ãããå€ãã®å°ããªè¿·æãªèŠçŽ ããããŸãã ããšãã°ãAPIãã¹ããªãŒã ããã€ãé åã«èªã¿èŸŒãã¡ãœãããæäŸããã®ã«20幎ããã£ãã®ã¯ãªãã§ããïŒ Unicode APIããªããããªã«åä»ãªã®ã§ããïŒ ä»ã«ãæ°ååã®ååãä»ããããšãã§ããŸãã
æ®å¿µãªãããä¿®æ£ã¯ããã»ã©ç°¡åã§ã¯ãããŸããã ä»ã®ãªãŒãã³ãœãŒã¹ãããžã§ã¯ãã§ã¯ã誰ããåã«ãã£ãšè¯ããã®ãææ¡ããè°è«ãèµ·ãããæ¹èšãè¡ããããããŠéãç°è°ããªããã°å€æŽãåãå ¥ããããŸãã ãããŠãJavaã®å ŽåããŸã£ããéã§ãã å€æŽãç©æ¥µçã«ä¿é²ããèŠå¶æ§é ãééããã«ã¯ãªãœãŒã¹ãå¿ èŠã§ãã ãã¡ãããããã¯äŸ¿å©ã§ããã€ãŸããJava 1.0ããã°ã©ã ãæ£åžžã«ã³ã³ãã€ã«ãããå¯èœæ§ãé«ãããšãæå³ããŸãã ããããããã¯ãŸãã誰ããã©ããªå€åãããæããã
äŸãšããŠããã®ã¯ã©ã¹ã«mainã¡ãœãããå«ãŸããŠããªãå Žåãã³ãã³ãã©ã€ã³ã§æå®ãããã¯ã©ã¹ã®ã³ã³ã¹ãã©ã¯ã¿ãŒïŒString []ãã©ã¡ãŒã¿ãŒä»ããŸãã¯åŒæ°ãªãïŒãåŒã³åºããŠããã°ã©ã ãå®è¡ããå¿ èŠãããããšãäžåºŠææ¡ããŸããã ç§ãå®è£ ããŸãã-VMã®èµ·åã³ãŒãã¯ããã»ã©è€éã§ã¯ãããŸããã ãªãã§ãããªããšæ°ã«ããã®ïŒ ãªããªããæåã®è¬çŸ©ã§å ¬éãããéçãªãã€ãã¡ã€ã³ã«å¯ŸåŠããå¿ èŠã®ãªãçåŸãæåž«ã«ãšã£ãŠã¯ã倩åœããã®ããã ããã§ãã ãHelloãWorldïŒãã¯æ¬¡ã®ããã«ãªããŸãã
public class Greeter { public Greeter() { System.out.println("Hello, World!"); } }
2çªç®ã®è©Šçšããã°ã©ã ã¯ããéçããå¿é ããããšãªããããã«ãªããžã§ã¯ãã«é£ã³èŸŒãããšãã§ããŸãã
以åã¯ãã®ãããªã¯ã©ã¹ã¯éå§ã§ããªãã£ããããäžäœäºææ§ãšã©ãŒã®ãªã¹ã¯ã¯ãããŸããã§ããã
ç§ã®è¬èãªç³ãåºã¯æ¿èªãããŸãããïŒ ãŸã£ãããããŸããã ãè€éãããããåŸæ¹äºææ§ãè ããå¯èœæ§ãããããšããŠæåŠãããŸããã
ãã ããæéãçµã€ã«ã€ããŠãAPIã®å€ãã®è¿·æãªæ©èœãä¿®æ£ãããå¯èœæ§ããããŸãã ãããããªã©ã¯ã«ã®äººã ã¯ãç§ãã¡ãšåãããã«è ¹ãç«ãŠãŠãããšããäºå®ã®ããã§ãã
ãŸããJava APIã®å質ã«ãã£ãŠã©ãã ãæãªãããŠããããå¿ããªãã§ãã ããã JavaScriptãPythonãC ++ã®APIãããããèŠãŠãé ãããåããŠããªããã®ãããªAPIãèšèšã§ããã®ãçåã«æããŸããã
-ããªãã®æ¬ãJavaãæããã ãã§ãªããããã°ã©ãã³ã°ã¹ã¿ã€ã«ã«ã圱é¿ãäžãããšJavaéçºè ããèããããšããããŸããïŒ
-ããããèªè ããèããããšã¯ãããŸããã ãããã圌ãã¯ãã®ãããªèããèªåèªèº«ã«ä»»ããŠããã®ã§ããã:-)ãããããã£ãšçå£ã«ãç§ã¯éåžžããªãã«ç¹å®ã®ã¹ã¿ã€ã«ã䜿ãããã«èª¬åŸããŸããã ä»ã®èè ãç§ãäœãééã£ãããšãããŠãããšèšã£ããšããããã¯ãã€ãç§ããããããããã®ã§ãç§ã¯åãããšãããªãããã«ããŸãã ããšãã°ãç§ã¯èªè ã«ãªããžã§ã¯ãæåã§ã¯ãªããããæ©èœçã§ããããããåå¿çã§ããã¹ãã ãšèšã£ãŠããã®ã§ã¯ãããŸããã ããŸããŸãªã¢ãããŒãã®å©ç¹ã玹ä»ããèªè ã«éžæã®æ©äŒãäžããŸãã
äŸå€ããããŸãã ç§ã¯Scalaã§æ¬ãæžããŸãããããªãæ確ãªèŠç¹ããããŸãããªããžã§ã¯ãæåæ§ãããããããçŽç²ãªé¢æ°åããã°ã©ãã³ã°ã«åãæ¿ããããªãJavaããã°ã©ããŒã®å€èŠ³ã§ãã ç§ã®èŠè§£ãå ±æããŠããèªè ã¯ããã奜ãã§ããã å ±æããŠããªã人-ããã§ããªãã
ããã¯ãå人çãªæèŠã®ããæ¬ã®å±éºã§ãã ãããããã»ã©çå®ã§ã¯ãªãããããå€æ°æèŠã«ãªããšç¢ºä¿¡ããŠããå Žåãããªãã¯ããªãèªèº«ã®èŽè¡ãå¶éããŸãã Core Javaã®æ¬ã®å Žåãèªè ã«Javaãå¹æçã«äœ¿çšããæ¹æ³ãæããŸããããã以å€ã¯ç¹å®ã®æ¹æ³è«ã説ããŸããã
ãããŒããŒãã·ã«ããæããŠããèŠããããåŒçšã»ã¯ã·ã§ã³ã«åŒçšããããŸããã ããªãã®Javaã®æ¬ã¯ç«¶åããŠããã®ã§ãç§ã¯ç¥ããã-ããã¯åãªãåè«ã§ããããããšã競åããŠããŸããïŒ :)
-çŽç« ä»ã-ãããã ç§ã¯åœŒã«äŒã£ãããšããªãã ååšãããã©ããããç¥ããŸããã ãã¶ããããã¯äººå·¥ç¥èœããã°ã©ã ã®ã³ãŒãåã§ãã åè«ã§ããçŽç« ä»ãå€è¡£:-)ç§ã¯åŒçšã奜ãã§ããã
ç§ã®ç·šéè ã¯ãã€ãŠãç§ã競åããæ¬ã®èè ãšæ¡æãããšã¯ä¿¡ããããªããšèšã£ãŠããŸããã å¥ã«èŠãŸãã ç§ãè³è³ããèè ãããŸãããç§ãæ¡çšããªãã¹ã¿ã€ã«ã®èè ãããŸãã ããããä»ã®äººã¯èªåã®æ¬ãè³Œå ¥ããæããã«æããŠããã®ã§ãç§ã¯åœŒãã«è©±ãã圌ãã®ã¢ãããŒããšåœŒãã®èªè ã«ã€ããŠãã£ãšåŠã³ãŸãã
ããã«å ããŠãç¥èãåŸãããã«èª°ããæ¬ãè²·ã£ããããããªãèŠããããããã§ã¯ãããŸããã ãã人ã¯ç¥èã®å¹»æ³ã奜ã¿ãããèè ã¯æäŸããŸãã
-Udacityã®Javaããã°ã©ãã³ã°å ¥éã³ãŒã¹ã®äœæã«åå ããŸããã ããã°ã©ãã³ã°åŠç¿ã®æªæ¥ã¯ãªã³ã©ã€ã³ã³ãŒã¹ã«ãããšæããŸããïŒ æ¬ã®é¢é£æ§ã¯äœäžããŠããŸããïŒ éçºè ã«ãªããã人ãã€ãŸãæ¬ãMOOCã«ãŸãäœãå§ããŸããïŒ
-ãããçŽ æŽããã質åã§ãã ç§ã®å€§åŠãšUdacityã®å ±åäœæ¥ã®äžç°ãšããŠè¡ãããMOOCã³ãŒã¹ãåè¬ãããšããäœãç¥ããªãã®ã§ãæãæ¹ãæããŸãããšèšãããŸããã ãããŠã圌ãã¯æçšãªãã¯ããã¯ãæããŠãããŸããã ãããªã»ã°ã¡ã³ãã3åã«å¶éããŸãã çããã®ã§ã¯ãªãã質åããŠãã ããã ãã¹ãŠãèŠèŠåããŸãã ãéçºè ã«ãªããã人ã®ããã®æåã®ã¹ããããã®èŠ³ç¹ãããç§ã¯çµæãæ¬åœã«å¥œãã§ãã
ããããUdacityã¯æ¬¡ã®ããã«ãè¿°ã¹ãŠããŸãããçåŸã«æ¬ãèªãããã«èŠæ±ããããšã¯ã§ããŸããã åã ã®ããŒãžã§ããã ãããŠãåŠçã¯ãããå«ã£ãŠããŸããã 圌ãã¯ãç¹å®ã®æ å ±ãèŠã€ããããã ãã«ãããªãä¿®æ£ããå¿ èŠã«æ©ãŸãããŠããŸããã
ãããã£ãŠããããªã³ãŒã¹ïŒMOOCãã©ããïŒãšæ¬ã®ã©ã¡ãããéžæããå¿ èŠãããå Žåã¯ãåžžã«æ¬ãéžæããŸãã ããããç§ã¯çŸåšãããã2ã€ã®éšåãçµã¿åããããããžã§ã¯ãã«åãçµãã§ããŸããæåã®é£çµ¡å ã®å¯Ÿè©±åéšåãšãããæ·±ãç解ãšåèã®ããã®æ¬ã§ãã ãããããããäžçã®è¡ãå ã§ãã
ãããªãèŠãã ãã§ãªããMOOCã¯çŽ æŽããããã®ã«ãªããŸãã 圌ããããªãã«è¡åããèãããããŠåŠã¶çå£ãªã€ã³ã¿ã©ã¯ãã£ããªææãè£ åããŠããã°ããããŠããªããå®éã«è¡åããèãããããŠåŠã¶ãªãã圌ãã¯éåžžã«å¹æçã§ãã ãããããããªãã¯ãªãã¯ããŠèšŒææžãå°å·ããã ãã®å Žåãããã¯ç¥èã®å¹»æ³ã§ãã
-倧åŠãæ°èäŒæ¥ã§ã®çµéšããããŸããã€ãŸããåŠçãšæ¥çã«ç²ŸéããŠããŸãã ãããã®ã³ã³ããã¹ããåãæ¿ããã®ã¯ã©ã®ãããªãã®ã§ããïŒ ããã2ã€ã®äžçã¯äºãã«ã©ã®ãããé¢ããŠããŸããïŒ
-ããã«åºãŸã£ãŠãã誀解ãããã åŠçã¯ãã°ãã°æ¬¡ã®ãããªè³ªåãããŸããããªããªãŒãããã³ã®çè«ãåŠã¶å¿ èŠãããã®ã§ããïŒ æ¬åœã«å¿ èŠãªã®ã¯AngularJSã³ãŒã¹ã§ããã
åŠçãç¹å®ã®ãããžã§ã¯ãã®ããã«AngularJSãå¿ èŠãšããå Žåã圌ã¯AngularJSãåŠã¶ã¹ãã ãšäž»åŒµããŸããã ãããã倧åŠã®ã³ãŒã¹ãšããŠ??? 倧åŠã¯ã20幎åŸãåŒãç¶ãé¢é£ãããã®ãæããã®ã«é©ããŠããŸãã ãããŠåŠã¶ããšãæããŸãã ãã®ããã20幎åŸãå åŠçãXYZãã¬ãŒã ã¯ãŒã¯ãåŠç¿ããå¿ èŠãããå Žåã圌ã¯èªåã§ããããã°ããåŠç¿ããããã®èæ¯ãšã¹ãã«ãç¿åŸããŸãã
倧åŠã§ã¯åœ¹ã«ç«ããªãææãæããã«ã¯è¡ãéãã§ããã4幎éã®ããã°ã©ã ã«ã¯æè»æ§ããªããšèãã人ãããŸãã ããããã¹ãŠã®ãããã«ãŒã¢ã«ãããŒããšããããã£ã°ãªãŒããçŸããã®ã¯ãã®ããã§ãã ç§èªèº«ãã³ã³ãã¥ãŒã¿ãŒãµã€ãšã³ã¹ã®ã«ãªãã¥ã©ã ãã¢ããã°ã¬ãŒãããããã€ãã®æ¹æ³ãèãåºããŸããããŸãããããã®æ¹æ³ã®ããã€ãã¯å¶åºŠäžã®éå£ã®ããã«å®æœãããªãããšãèªããŠããŸãã ããããéäŒçµ±çãªæè²ããã°ã©ã ã¯ä»ã®æ¥µç«¯ãªãã®ã«ãªããååãªåºç€ç¥èãæäŸããŸããã ãŸãã倧åŠãšã¯å¥ã®ç¹ã§ãç°ãªããŸãã圌ãã¯ãç¬åã§å€ãã®ã®ã£ãããåããããšãã§ããæãããæ°ã®ãã人ã«ã®ã¿çŠç¹ãåãããå¿ èŠããããŸãã
倧åŠãšæ¥çã§ã®ä»äºã®ãã1ã€ã®å€§ããªéãã¯ãåŠè¡ç 究ã¯ç¬åµæ§ã«çŠç¹ãåœãŠãŠãããæ¥çã§ã®ä»äºã¯åçŸæ§ã«çŠç¹ãåœãŠãŠããããšã§ãã 倧åŠã¯ããœãããŠã§ã¢ãšã³ãžãã¢ãªã³ã°ãåŠã¶äººãé€ããã³ãŒãã®å質ã«ã€ããŠã»ãšãã©è©äŸ¡ããŠããŸããã ãããã倧åŠã¯ç¬åµçãªç 究ã«éäžããããŠããã®ã§ãããã æ°å¹Žåãç§ã¯ã¹ã€ã¹ã®å°ããªæè²æ©é¢ã§åããŠãããããã§ã¯å°å ã®äŒæ¥ãšååããŠåŠéšãæäžãããŸããã ããã¯ç§ã«ãšã£ãŠè¯ãã¢ã€ãã¢ã®ããã«æããŸããã
-ãããŠã2ã€ã®äžçã®éãã®ããã«ãç£æ¥çã§åœ¹ç«ã€åŠè¡çããã®æåããã¢ã€ãã¢ãåã«ããã«å°éããªããšããããšã¯å€æããŸãããïŒ
ããããèµ·ãã£ãŠãããã©ããã¯ããããŸããããã®ãããå€ãã®åŠè¡çãªææãé©çšãããæ¥çã§ã¯èŠéãããŠããŸããã å€ãã®ãœãããŠã§ã¢äŒæ¥ã«ã¯ãç 究æç®ã«ç²Ÿéããé«åºŠãªåŠäœãæã€åŸæ¥å¡ãããŸãã
ããšãã°ãç¡äººè»äž¡ãèŠãŠãã ããã 倧åŠã§å§ãŸããããªãææ©çã«ç£æ¥ã«ç§»è¡ããŸããã
ãŸãã¯ãããã°ã©ãã³ã°èšèªã®äžçã§ã¯ãã¬ããŒãžã³ã¬ã¯ã·ã§ã³ãèŠãŠãã ããã ããã¯é·å¹Žã®ç 究ããŒãã§ããããç£æ¥ç°å¢ã«é©ãããã®ã«ãªããšããã«æ¡çšãããŸããã ã§ãããã象çã®å¡ã«é ããã貎éãªç¥çç§å¯ã«ã€ããŠã¯ãæ¬åœã«å¿é ããŠããŸããã
-ã¢ã¡ãªã«ãã¹ã€ã¹ããããã ããã«ãªã§ãCSãäžçäžã§æããŸããã ãã®æ£ä¹±ã®åå ã¯äœã§ããïŒ
ãæ è¡ã奜ãã§ããã
-ãããŠãããªãã®ä»äºã®èŠ³ç¹ããããããã®åœããŸãã¯ã³ã³ãã¥ãŒã¿ãŒãµã€ãšã³ã¹ãšãã«ãªã®ã³ã³ãã¥ãŒã¿ãŒãµã€ãšã³ã¹ã®éã«å€§ããªéãã¯ãããŸãããïŒ
ãããã¯ã©ãã§ãåãã§ããã ã©ãã«ã§ãåªç§ãªåŠçãããŸããããããã»ã©åªç§ã§ã¯ãããŸããã§ããã ãŸãããããã ã®åŠçã¯èªåã®å€æã«é Œãããšã«æ £ããŠããŸããã§ããã 圌ãã¯ç§ã«åœŒããã©ã®ããã«è¡åããã¹ããã«ã€ããŠã®æå°ã®è³ªåã絶ããå°ããŸããããããŠç§ã¯åœŒããéåžžã«è³¢ãïŒåœŒãã¯æ¬åœã«ãã®ãããªãã®ã§ã圌ãã¯åŠæ ¡è©Šéšã®çµæã«åŸã£ãŠ1ïŒ ããéžã°ããïŒãšçµ¶ããçããŸããããããŠåœŒãã¯åœŒãèªèº«ã®æèŠã圢æããå¿ èŠããããŸãã ããã¯ãè¬çŸ©ã§æäŸããæè¡æ å ±ãããå€ãã®ããšã圌ãã«æãããšæããŸãã
ã³ã³ãã¥ãŒã¿ãŒãµã€ãšã³ã¹ã®ç§ãã¡ã¯ãææãããªã客芳çã«è©äŸ¡ã§ããåéã§éåžžã«å¹žéã§ãããããŸããŸãªå Žæã®äººã ãããŸãååããŠãããšæããŸãã 圌ããã·ãªã³ã³ãã¬ãŒã«ã€ããŠå®å䞻矩ããããšèšããšããããã¯ããçšåºŠçå®ã§ãã ãã¡ãããç¹å®ã®æ¹æ³ã§ã®ã¿-ç§ãã¡ã¯çãããã°ã©ããšããŠèªåèªèº«ã蚌æããå¹³çãªæ©äŒãäžããããŠããªã人ã ã®è©±ãèããã ããããã³ã³ãã¥ãŒã¿ãµã€ãšã³ã¹ã§ã¯ãããã¯äººã ãäžæ¹ã®åœäºè ããã¡ã€ã³ãããŒãåãåãä»ã®é åãããã¯ããã«åªããŠããŸãã
-ãŠã£ãããã£ã¢ã§ã¯ãæ°å¹Žã«ããã£ãŠæ¬ã§ç¬èªã®ã€ã³ãã³ãã¹ã¿ã€ã«ã䜿çšããŠãããããããæŸæ£ãããšè¿°ã¹ãŠããŸãã ãªãå§ãŸã£ãã®ãããªãæ¢ãŸã£ãã®ãïŒ
-ç©èªã¯ãã®ãããªãã®ã§ãã Cã®å ŽåãKïŒRã¹ã¿ã€ã«ãšOlmanã¹ã¿ã€ã«ããããŸãã
if (args > 0) { printf(args[0]); }
ãããŠ
if (args > 0) { printf("%s\n", args[0]); }
ã¹ããŒã¹ãç¯çŽããããæ³¢æ¬åŒ§ãæãããããã«ã¯ã©ãããã°ããã§ããïŒ ãããããããšä»ã®äž¡æ¹ãå¿ èŠãªå Žåã¯ã©ãã§ããããïŒ ããããã«ã¹ããã³ã®ã¹ã¿ã€ã«ã®åºçªã§ãã
if (args > 0) { printf("%s\n", args[0]); }
人ã ã¯åœŒã奜ãã§ã¯ãªãã£ãã ããã«ã¯æãããªåççãªçç±ã¯ãããŸããã§ããã æžãããšã¯åã«å¥åŠã«æããã ã¹ã¿ã€ã«ã«ã¯ãã¥ãŒãã³ã°ã®ãµããŒãããªãã£ããããçµå±ãç§ã¯ãããããŸããã ã²ãŒã ã¯ããããã«å€ããŸããã§ããã
-æè¿ã¹ã¿ã³ãã©ãŒã倧åŠã§ã¯ãCSã®å ¥éã³ãŒã¹ãå€æŽããJavaã®ä»£ããã«JavaScriptã䜿çšããããšã«ããŸããã ããã«ã€ããŠã©ãæããŸããïŒ
-ã³ã³ãã¥ãŒã¿ãµã€ãšã³ã¹ã®å ¥éã³ãŒã¹ã¯ãå®éã«ã¯ç¹å®ã®èšèªã®ã³ãŒã¹ã§ã¯ãããŸããïŒãããã«ããŠãããããã¹ãã§ã¯ãããŸããïŒã ã«ãŒããšé åãã¢ã«ãŽãªãºã ãå解ãããã³ãããã°ã§ã¯ãçåŸã®åé¡ãçºçããŸãã JavaãC ++ãPythonãJavaScriptã®ãããã䜿çšãããã«é¢ä¿ãªããåŠçã¯public static void mainãJavaScriptã®çŽèŠ³ã«åããæ©èœãããã«ãŒãã§ç«ã¡åŸçããå¯èœæ§ãé«ããªããŸãã
ãããã£ãŠãã³ãŒã¹èªäœãçŠç¹ãåœãŠãŠããªãéããã©ã®èšèªã䜿çšãããã¯éèŠã§ã¯ãããŸããã ãã€ã³ã¿ãŒã«é¢ãã詳现ãçåŸã«è¿·æãããC ++ã®ã³ãŒã¹ãèŠãŸããããããã¯ããã»ã¹ã«å¯äžããŸããã§ããã ãããŠãã¹ã¿ã³ãã©ãŒã倧åŠã«ã¯åžžã«äžæµã®ã³ãŒã¹ããããJavaScriptã䜿çšãããšJavaã䜿çšããå Žåãããæªåããããšã¯ãããŸãããããã以äžã®ããšã¯ãªããšæããŸãã
-ããªãã¯Javaã«ã€ããŠäœå幎ãæžããŠãããæéã®çµéãšãšãã«ç¶æ³ãã©ã®ããã«å€åããããèŠãŠããŸããã Javaã®å°æ¥ã«ã€ããŠã©ãæããŸããïŒ åœŒå¥³ã¯ãã®ããŒã¯ãéããŠãããåŸã ã«äººæ°ã倱ãããŸããïŒ ãããšããŸã å ã«é²ãã§ããŸããïŒScalaãKotlinã®ãããªè¥ãJVMèšèªã¯ãšã³ã·ã¹ãã å šäœãå©ããŸããïŒ
-Javaã®ç»å ŽçŽåŸãæ¥éãªé¢éžã®éãJavaããç©èªã®çµãããã«ãªããšããéåžžã«æ確ãªæèŠããããŸããã å°ããªã¹ããŒãã«ãŒããã匷åãªãµãŒããŒã«è³ããŸã§ãJavaã¯ããããã¹ãŠãææ®ããããã«ãªããŸããã
ããã§å®å šã«ééã£ãŠããããšãããããŸããã Javaã¯ãµãŒããŒã«æ ¹ãããŠããŸãããçŸåšã¯Node.jsãé ã®å¥¥ã«æ¯ã¥ããŠããŸãã æè¡çãªçç±ã§ã¯ãããŸãããããã«ã¹ã¿ãã¯ã®éçºè ã¯ã¯ã©ã€ã¢ã³ãåŽãJavaScriptã§èšè¿°ããããªãããµãŒããŒåŽãJavaã§èšè¿°ãããããã§ãã ä»æ¥ãJava UIããŸãã§ããããšãèãããšãããã¯åé¡ã§ãã ããç§ãJavaã®çã ã£ãããJavaãAndroidã®èšèªã®ãŸãŸã§ããããšã確èªãããã©ãŠã¶ãŒã®JavaããJavaScriptãžã®ãã¯ãããžãŒãä¿é²ããŸããã ããããç§ãJavaã®çã§ã¯ãªãããšã¯æããã§ãã
ãŸããããŒã¿ãµã€ãšã³ã¹ãªã©ã®åéã§ãPythonã«ã€ããŠå€ãã®ç±æãæã£ãŠããŸãã 察å¿ããã©ã€ãã©ãªãJavaã§èšè¿°ã§ããªãã£ãçç±ã¯ãããŸããããJavaã§èšè¿°ãããŠããŸããã ãããŠåœŒãã¯ã³ããªã³ã«ãæçŽãæžããŸããã Scalaã«ã¯ç¬èªã®æ³šç®ãã¹ãé åãç¹ã«SparkããããŸãã
ç§ã®äºæž¬ã¯éåžžã«éå±ã§ãã C / C ++ãå°ç€ã倱ãç¶ããPythonãšJavaScriptãæé·ããæ°ããçŽ æµãªèšèªïŒJVMã ãã§ãªãïŒãèªåèªèº«ã宣èšããããåã人æ°ãéæããããšã¯ãªãã§ãããã ãããŠäœå¹Žãã®éãæè¡ãã¬ã¹ã¯Javaãä»ã§ãéåžžã«äººæ°ãããããšã«é©ããããã§ãããããJavaã¯äœå¹Žãã®é人æ°ã倱ã£ãŠãããšæè¿ãããŠããŸããã
11æ3ã4æ¥ã«ãµã³ã¯ãããã«ãã«ã¯ã§éå¬ããããžã§ãŒã«ãŒäŒè°ã§ãã±ã€ã¯ãJava 9ïŒåªããéšåïŒã¢ãžã¥ãŒã«ã§ã¯ãªãïŒããšã人éã®äžŠè¡æ§ããšãã2ã€ã®ãã¬ãŒã³ããŒã·ã§ã³ãè¡ããŸãã
ãããŠããŸã æ°ã¶æãæ®ã£ãŠããŸãããææ¥ïŒ8æ1æ¥ïŒãžã§ãŒã«ãŒã®ãã±ããã¯äŸ¡æ Œãäžããã®ã§ãä»æ¥è³Œå ¥ããã®ã¯çã«ããªã£ãŠããŸãã