1. Juliaãšã¯
1.1 Juliaã®æŠèŠ
Juliaã¯ãç§åŠèšç®ãæ°å€èšç®ãããŒã¿åæãªã©ã«é©ããããã°ã©ãã³ã°èšèªã§ããé«ã¬ãã«ã®æœè±¡åãè¡ãäžæ¹ã§ãCèšèªãFortranãšåçã®ããã©ãŒãã³ã¹ãçºæ®ããŸããããã¯ãJust-In-Time (JIT) ã³ã³ãã€ã©ã«ããåçã³ã³ãã€ã«ãšãäœã¬ãã«ã®åŠçãå¹çè¯ããã³ããªã³ã°ããèšèšãç¹åŸŽã§ãã
ãã®ååã®ç±æ¥ã¯ãå€ä»£ããŒãã®ãŠãªãŠã¹å®¶ã®å¥³æ§ãã¡ã«ã¡ãªã¿ãŸããããã°ã©ããã«ãªæ°å€èšç®ç°å¢ãšããŠã®åœ¹å²ãæ ã£ãŠãããæ°å€åŠçã«åªããæ§èœãæäŸããŸãã
Juliaã®éçºã¯MITã«ãã£ãŠè¡ãããåçã¯2012幎ã«ãªãªãŒã¹ãããŸããã以æ¥ãäžçäžã®éçºè ãç 究è ãã泚ç®ãéãããã®ã³ãã¥ããã£ã¯æ¥ã æ¡å€§ããŠããŸãã
1.2 Juliaã®ç¹æ§
JULIAã®å€§ããªç¹æ§ã¯ãäžèšã§èšãã°ãé«éæ§ãã§ããJuliaã¯ãPythonãRã®ãããªã¹ã¯ãªããèšèªã®æãããšãCãJavaã®ãããªã³ã³ãã€ã«èšèªã®é床ãå ŒãåããŠããã®ã倧ããªç¹æ§ã§ãã
ãŸããJuliaã¯ãã€ãããã¯åä»ããè¡ããŸããããã®ããã©ãŒãã³ã¹ã¯ãéçåä»ãèšèªãšæ¯ã¹ãŠãéè²ãããŸãããããã¯JITã³ã³ãã€ã©ã®ååšã倧ããå¯äžããŠãããå®è¡æã«ã³ãŒããæ©æ¢°èªã«ç¿»èš³ãããã®æ§èœãåŒãåºããŠããŸãã
ãã®ä»ã®Juliaã®ç¹æ§ãšããŠãåæ£äžŠååŠçãç°¡æãã¯ãã·ã¹ãã ãè±å¯ãªæ°å€èšç®ã©ã€ãã©ãªãªã©ããããŸããããããã¹ãŠãé«æ§èœãªæ°å€èšç®ç°å¢ãæ¯ããå€æ§ãªç§åŠèšç®ãããŒã¿åæã«å¯Ÿå¿ãã匷åãªåºç€ãæäŸããŠããŸãã
1.3 Juliaã®å±æ
çŸåšãJuliaã¯æç¶çã«é²åãç¶ããŠãããããŒã¿ãµã€ãšã³ã¹ãAIãæ©æ¢°åŠç¿ããããŠå€æ§ãªç§åŠæè¡èšç®ã®ãã£ãŒã«ãã§ã®å°äœã確ç«ãã€ã€ãããŸãã
ãŸãããã®ã³ãã¥ããã£ã¯çå®ã«çºå±ããŠãããäžçäžã®ç 究è ããšã³ãžãã¢ãJuliaã®éçºã«è²¢ç®ããŠããŸããããã«ãã£ãŠJuliaã®ãšã³ã·ã¹ãã ã¯ãããã«å€æ§ã§åŒ·åãªãã®ã«ãªã£ãŠããŸãã
Pythonãåºã䜿ãããŠããããŒã¿ãµã€ãšã³ã¹ã®åéã§ããJuliaã®é«éæ§ãšæ¡åŒµæ§ã¯é«ãè©äŸ¡ãããŠãããä»åŸã®å±æã¯å€§ãã«æåŸ ã§ããŸãã
1.4 Juliaã®æŽå²
Juliaã®æŽå²ã¯ã2012幎ã®åçãªãªãŒã¹ããå§ãŸããŸãããã®åœæãJuliaã¯ãæ°ããªç§åŠèšç®ã®ããã®èšèªããç®æããŠèšèšãããŸããã
ãã®åŸããã®æ§èœã®é«ããšæ¡åŒµæ§ã®è¯ããããåŸã ã«ãã®äœ¿çšç¯å²ãåºãã£ãŠãããŸãããç¹ã«ãé«åºŠãªæ°å€èšç®ãå¿ èŠãšããç 究è ããšã³ãžãã¢ããã®æ¯æãåãã§ãã
è¿å¹Žã§ã¯ãããŒã¿ãµã€ãšã³ã¹ãAIåéã§ã®å©çšãå¢ããŠããŠããŸãããã®æã€é«éãªèšç®æ§èœãšãPythonãä»ã®ã¹ã¯ãªããèšèªããã®ç°¡åãªç§»è¡æ§ãè©äŸ¡ããããã®å©çšè ã¯å¢ãç¶ããŠããŸãã
2. ãã¬ãŒã ã¯ãŒã¯ãšã¯
äžè¬ã«ããã¬ãŒã ã¯ãŒã¯ïŒFrameworkïŒãšã¯ãå šäœã®éªšçµã¿ãåºæ¬çãªæµããæäŸããªãããåã ã®æ©èœãç¬èªã«éçºã§ããããã«ãããœãããŠã§ã¢ã®èšèšæŠå¿µã§ãããã®ã³ã³ã»ããã¯ããããããœãããŠã§ã¢éçºãç¹ã«ãŠã§ãã¢ããªã±ãŒã·ã§ã³ãããŒã¿åæãœãããŠã§ã¢ãªã©ã§éåžžã«éå®ãããŠããŸãã
ãã®èšäºã§ã¯ãç¹ã«ãã®äžã§ãJuliaããã°ã©ãã³ã°èšèªçšã®ãã¬ãŒã ã¯ãŒã¯ã«çŠç¹ãåœãŠãŠè§£èª¬ããŸããJuliaã¯ãç§åŠèšç®ãããŒã¿åæãªã©ã«ç¹åããé«æ§èœãªããã°ã©ãã³ã°èšèªã§ããã®ãã¬ãŒã ã¯ãŒã¯ããŸããã®ç¹æ§ã掻ããããã®ãšãªã£ãŠããŸãã
ããã§ã¯ãŸãããã¬ãŒã ã¯ãŒã¯ã®æŠèŠã«ã€ããŠèª¬æããŸãã
2.1 ãã¬ãŒã ã¯ãŒã¯ã®æŠèŠ
ãã¬ãŒã ã¯ãŒã¯ã¯ããœãããŠã§ã¢éçºã®ããã®ã骚çµã¿ãã§ããããã®äžã«å«ãŸããã³ãŒããããŒã«ãã©ã€ãã©ãªãªã©ãéçºè ã«ããé«åºŠãªæ©èœããæ©ãéçºã¹ããŒããæäŸããŸãã
å ·äœçã«ã¯ããã¬ãŒã ã¯ãŒã¯ã«ã¯ã«ãŒãã£ã³ã°æ©èœãORMïŒObject-Relational MappingïŒãªã©ããŠã§ãã¢ããªã±ãŒã·ã§ã³éçºã«å¿ èŠäžå¯æ¬ ãªåºæ¬æ©èœãäºãçµã¿èŸŒãŸããŠããŸããããã«ãããéçºè ã¯ãããã®åºæ¬çãªéšåãå床äœãçŽãæéãã解æŸãããçŠç¹ãããžãã¹ããžãã¯ãæ°æ©èœã®å®è£ ã«éäžããããšãã§ããŸãã
Juliaã®ãã¬ãŒã ã¯ãŒã¯ããŸãããããäžè¬çãªãã¬ãŒã ã¯ãŒã¯ã®ç¹æ§ãæã€ãšãšãã«ãJuliaèšèªã®ç¹æ§ãæ倧éã«æŽ»ããããèšèšãããŠããŸãã
2.2 ãã¬ãŒã ã¯ãŒã¯ã®å©ç¹
ãŸãããã¬ãŒã ã¯ãŒã¯ã®æ倧ã®å©ç¹ã¯ããã®å¹çæ§ã§ããéçºè ã¯ãã¬ãŒã ã¯ãŒã¯ãæäŸããå€ãã®äŸ¿å©ãªæ©èœãå©çšããããšã§ãéçºæéãççž®ããã³ã¹ããåæžããããšãå¯èœã§ãã
ãŸãããã¬ãŒã ã¯ãŒã¯ãå©çšããããšã§ãã³ãŒãã®æŽåæ§ãå¯èªæ§ãé«ããããšãã§ããŸããæ¢åã®ãã¬ãŒã ã¯ãŒã¯ãçšããããšã§ãå šãŠã®éçºè ãåãèŠåãä»æ§ã«åŸãããšãã§ããçµæçã«å®å šæ§ãä¿å®æ§ã®é«ãã³ãŒããæžãããšãå¯èœãšãªããŸãã
ããã«ãJuliaã®ãã¬ãŒã ã¯ãŒã¯ã¯ç§åŠèšç®ãããŒã¿åæãšãã£ãç¹å®ã®ã¿ã¹ã¯ã«åªããŠããŸããããã¯Juliaã®ãã¬ãŒã ã¯ãŒã¯ããJuliaèšèªã®é«æ§èœãªç¹æ§ãæ倧é掻çšãã€ã€ããããã®ã¿ã¹ã¯ãå¹çè¯ãè¡ãããã®æ©èœãæäŸããããã§ãã
2.3 ãã¬ãŒã ã¯ãŒã¯ã®ãã¡ãªãã
äžæ¹ããã¬ãŒã ã¯ãŒã¯ã«ã¯ããã€ãã®ãã¡ãªãããååšããŸãããŸãäžã€ç®ã¯ãåŠç¿ã³ã¹ãã§ãããã¬ãŒã ã¯ãŒã¯ã¯ç¹å®ã®èšèšååãæŠå¿µã«åºã¥ããŠããããã®èŠç¹ãç解ãé©åã«äœ¿çšããããã«ã¯ãããçšåºŠã®æéãšåŽåãå¿ èŠãšãªããŸãã
ãŸãããã¬ãŒã ã¯ãŒã¯ã¯å€æ©èœã§ããäžæ¹ã§ããã®äžã«ã¯å¿ èŠãšããªãæ©èœãŸã§ãå«ãŸããŠããŸãããããã®äœ¿ããªãæ©èœã®ååšã¯ããªãœãŒã¹ãç¡é§ã«æ¶è²»ããããã·ã¹ãã ã®è€éæ§ãé«ããåå ãšãªãåŸãŸãã
ããã«ããã¬ãŒã ã¯ãŒã¯ã¯ãã°ãã°ãç®±ãã®ãããªãã®ã§ããããã®ãç®±ãã®å€ã«åºãããšããã°ãæ°ããªè§£æ±ºçãèªåã§èŠã€ããªããã°ãªããªãå ŽåããããŸããããã¯ãäžéšã®éçºè ã«ãšã£ãŠã¯å¶çŽãšæãããããããããŸããã
2.4 ãã¬ãŒã ã¯ãŒã¯ã®éžã³æ¹
ãã¬ãŒã ã¯ãŒã¯ãéžã¶éã«ã¯ãéçºããäºå®ã®ã¢ããªã±ãŒã·ã§ã³ã®çš®é¡ãèŠä»¶ãèªèº«ã®ã¹ãã«ã¬ãã«ãçµéšãªã©ãåºã«ãåãã¬ãŒã ã¯ãŒã¯ã®ç¹æ§ãæäŸããæ©èœãè©äŸ¡ããã¹ãã§ãã
äŸãã°ãç¹å®ã®é åã«ç¹åããã¢ããªã±ãŒã·ã§ã³ãéçºããäºå®ã§ãããªãããã®é åã«ç¹åãããã¬ãŒã ã¯ãŒã¯ãéžã¶ãšè¯ãã§ããããJuliaã®ãã¬ãŒã ã¯ãŒã¯ã¯ç§åŠèšç®ãããŒã¿åæã«ç¹åããŠããããã®ãããªã¢ããªã±ãŒã·ã§ã³ã®éçºã«ã¯æé©ãªéžæãšèšããŸãã
ãŸãã倧èŠæš¡ãªãããžã§ã¯ããæ åœããå ŽåãæéãéãããŠããå Žåãªã©ãå¹çæ§ãéèŠãããã·ãã¥ãšãŒã·ã§ã³ã§ã¯ãå©çšå¯èœãªæ©èœãè±å¯ãªãã¬ãŒã ã¯ãŒã¯ãéžã¶ãšè¯ããããããŸããããã®äžæ¹ã§ã现ããã³ã³ãããŒã«ãå¿ èŠãªå ŽåãåŠç¿ã³ã¹ããæãããå Žåãªã©ã«ã¯ãã·ã³ãã«ãªãã¬ãŒã ã¯ãŒã¯ãéžã¶ãšè¯ãã§ãããã
3. Juliaã®ãã¬ãŒã ã¯ãŒã¯è§£èª¬
Juliaã®ãã¬ãŒã ã¯ãŒã¯ãšã¯ãäž»ã«æ°å€èšç®ãããŒã¿åæã®é åã§ããå©çšãããããã°ã©ã ã«ãããåå°ãšãªãéšåã®ããšãæããŸããããã§ã¯å ·äœçã«è§ŠããŠãããŸãããã
3.1 Juliaã®ãã¬ãŒã ã¯ãŒã¯ã®åºæ¬æŠå¿µ
Juliaã®ãã¬ãŒã ã¯ãŒã¯ã¯ãJuliaèšèªã«ãã£ãŠéçºãããç¹å®ã®ç®çã®ããã®ãœãããŠã§ã¢ãã¬ãŒã ã¯ãŒã¯ã§ããããã¯ãœãããŠã§ã¢ã®æµ·ç¶¿å±€ã®ãããªãã®ã§ãç¹å®ã®åé¡é åã«å¯Ÿãããœãªã¥ãŒã·ã§ã³ãæäŸããéçºè ãããå¹ççã«ã³ãŒããæžãããã®æé ããã¿ãŒã³ãæäŸããŸãã
ãã¬ãŒã ã¯ãŒã¯ã¯åãªãã©ã€ãã©ãªãã¢ãžã¥ãŒã«ã®éåäœã§ã¯ãªããå®éã®ã¢ããªã±ãŒã·ã§ã³ã®éªšçµã¿ã圢æããŸããããã«ãããéçºè ã¯ç¹å®ã®æ©èœãè¿œå ãŸãã¯ä¿®æ£ããããšã容æã«ãªããŸãã
Juliaã®ãã¬ãŒã ã¯ãŒã¯ã«ã¯å€ãã®ç¹åŸŽãããããããããéçºè ã®å€æ§ãªããŒãºã«å¯Ÿå¿ããŠããŸããã§ã¯æ¬¡ã«ããã®ç¹æ§ã«ã€ããŠè©³ããèŠãŠãããŸãããã
3.2 Juliaã®ãã¬ãŒã ã¯ãŒã¯ã®ç¹æ§
Juliaã®ãã¬ãŒã ã¯ãŒã¯ã¯ãæ°å€èšç®ãããŒã¿åæãšãã£ããšãªã¢ã§é«ãããã©ãŒãã³ã¹ãçºæ®ããŸããããã¯Juliaãéçåä»ãèšèªã®é床ãšåçåä»ãèšèªã®æè»æ§ãå ŒãåããŠããããã§ãã
å ããŠãJuliaã®ãã¬ãŒã ã¯ãŒã¯ã¯ã¢ãžã¥ãŒã«ã现ããåå²ãããŠãããããå¿ èŠãªéšåã ããåãåºããŠäœ¿çšã§ãããšããå©ç¹ããããŸããããã«ãããé«åºŠã«ã«ã¹ã¿ãã€ãºå¯èœãªéçºç°å¢ãå®çŸããŸãã
æåŸã«ãJuliaã®ãã¬ãŒã ã¯ãŒã¯ã¯ãªãŒãã³ãœãŒã¹ã§ãããããã³ãã¥ããã£ã«ããè±å¯ãªãã©ã°ã€ã³ãã©ã€ãã©ãªãå©çšã§ããŸãã
3.3 Juliaã®ãã¬ãŒã ã¯ãŒã¯ã®å©çšæ¹æ³
Juliaã®ãã¬ãŒã ã¯ãŒã¯ãå©çšããããã«ã¯ãŸãJuliaèšèªã®åºæ¬çãªç¥èãå¿ èŠã§ãããã®äžã§ãã³ãŒãã®èªã¿æžããå¯èœã«ãªã£ãããã¬ãŒã ã¯ãŒã¯ã®å ¬åŒããã¥ã¡ã³ããŒã·ã§ã³ãåç §ããŸãããã
å ·äœçãªå©çšæ¹æ³ã¯ãã¬ãŒã ã¯ãŒã¯ã«ããç°ãªããŸãããããã±ãŒãžã®ã€ã³ã¹ããŒã«ããå§ãããã¬ãŒã ã¯ãŒã¯ç¹æã®é¢æ°ãæ§æã䜿çšããŠããã°ã©ã ãæžãããšãäžè¬çã§ãã
ãã®éçšã§çåãåºãŠããå Žåã¯ãJuliaã³ãã¥ããã£ãæäŸãããã©ãŒã©ã ãGitHubã¬ããžããªã掻çšãããšè¯ãã§ãããã
3.4 Juliaã®ãã¬ãŒã ã¯ãŒã¯ã®å¿çšäŸ
Juliaã®ãã¬ãŒã ã¯ãŒã¯ã¯å€å²ã«ãããåéã§ã®å¿çšãå¯èœã§ããå ·äœçã«ã¯ãçµ±èšåæãæ©æ¢°åŠç¿ãããŒã¿ããžã¥ã¢ã©ã€ãŒãŒã·ã§ã³ãªã©ãæããããŸãã
äŸãã°ãçµ±èšåæã®å°é家ã¯Juliaã®ãã¬ãŒã ã¯ãŒã¯ã䜿ã£ãŠããŒã¿ã«å¯ŸããŠé«éãªèšç®ãè¡ãããšãã§ããŸããããã«ãããäžé£ã®çµ±èšæäœãé«å¹çã§å®æããããšãã§ããŸãã
ãŸãããã€ãªã€ã³ãã©ããã£ã¯ã¹ãéèå·¥åŠãéåç©çåŠãªã©ç¹å®åéåãã®ãã¬ãŒã ã¯ãŒã¯ãååšããŸãããããã¯ãã®åéç¹æã®èšç®éçšãç°¡ç¥åãã圹å²ãæãããŸãã
4. Juliaã®ãã¬ãŒã ã¯ãŒã¯ãšä»èšèªãã¬ãŒã ã¯ãŒã¯ãšã®æ¯èŒ
Juliaã®ãã¬ãŒã ã¯ãŒã¯ã¯ãæ°åŠçåŠçãããŒã¿ãµã€ãšã³ã¹ã«æé©åãããŠããäžæ¹ã§ãä»ã®ããã°ã©ãã³ã°èšèªã®ãã¬ãŒã ã¯ãŒã¯ãšæ¯èŒããããšã§ããã®ç¹æ§ãšå©ç¹ãããç解ããããšãã§ããŸãã以äžã§ã¯ãéèŠãªããã°ã©ãã³ã°èšèªã§ããPythonãRãScalaãJavaã®ãã¬ãŒã ã¯ãŒã¯ãšJuliaã®ãã¬ãŒã ã¯ãŒã¯ãæ¯èŒããŠãããŸãã
æ¯èŒå¯Ÿè±¡ã¯ããããã®èšèªãäžè¬çã«çšãããããã¬ãŒã ã¯ãŒã¯ãšãªããŸããããããã®ãã¬ãŒã ã¯ãŒã¯ã®ç¹æ§ãç解ããããšã§ãã¿ã¹ã¯ãšç¶æ³ã«æé©ãªãã¬ãŒã ã¯ãŒã¯ã®éžæã«ã€ãªããã§ãããã
ãªãããã®æ¯èŒã¯ç¹å®ã®ãã¬ãŒã ã¯ãŒã¯ãäžèœã§ãããšãããã®ã§ã¯ãªãããããŸã§äžã€ã®èŠç¹ããã®è©äŸ¡ãšãªããŸããçšéã奜ã¿ã«ãã£ãŠé©åãªãã¬ãŒã ã¯ãŒã¯ã¯å€ããããã詳现ãç解ããäžã§éžæããããšã倧åã§ãã
4.1 Juliaã®ãã¬ãŒã ã¯ãŒã¯ãšPythonãã¬ãŒã ã¯ãŒã¯ã®æ¯èŒ
Pythonãã¬ãŒã ã¯ãŒã¯ã¯ãDjangoãFlaskãªã©ã®ãŠã§ãéçºã«éç¹ã眮ãããã®ãããPandasãNumpyãªã©ã®ããŒã¿åæã«ç¹åãããã®ãŸã§å¹ åºãçš®é¡ãååšããŸããPythonã¯ãã®èªã¿ããããšã©ã€ãã©ãªã®è±å¯ãã§ç¥ãããŠããŸãã
äžæ¹ã§ãJuliaã¯ãã®å®è¡é床ã®éããšãæ°åŒã®æ±ããããããããŒã¿åæãæ°å€èšç®ã«åããŠããŸãããŸããJuliaã®ãã«ããã©ãã€ã æ§ã¯ãã®æ¡åŒµæ§ãé«ããŠããŸãããã®ããã倧èŠæš¡ãªæ°å€èšç®ãããŒã¿åé¡ãæ±ãå ŽåãJuliaã®ãã¬ãŒã ã¯ãŒã¯ãæå©ãšãããŸãã
ããããPythonã«ã¯Juliaã«ã¯ãªãè±å¯ãªã©ã€ãã©ãªããã¬ãŒã ã¯ãŒã¯ãååšããäžççã«ããã®å©çšè ãå€ãããã®æ å ±éã¯Juliaããã®ããŸãããã®ãããååŠè ã«ã¯Pythonã®ãã¬ãŒã ã¯ãŒã¯ã®æ¹ãåãçµã¿ããããšèšããã§ãããã
4.2 Juliaã®ãã¬ãŒã ã¯ãŒã¯ãšRãã¬ãŒã ã¯ãŒã¯ã®æ¯èŒ
Rãã¬ãŒã ã¯ãŒã¯ã§ã¯ãShinyãPlumberãªã©ãããŒã¿ã®å¯èŠåãWebãµãŒãã¹äœæã«ç¹åãããã¬ãŒã ã¯ãŒã¯ãååšããŸãããŸããRã¯çµ±èšè§£æãšããŒã¿åæã«åªããŠããŠããã®æ©èœã¯è±å¯ã§ãã
察ããŠJuliaã¯ãç§åŠèšç®ãæ°å€èšç®ã«ãããŠããã©ãŒãã³ã¹ãçºæ®ããŸããRãšæ¯èŒãããšãJuliaã¯ããäžè¬çãªçšéã«å¯Ÿå¿ããŠãããšèšããŸãã
ãã ãRã®å°éæ§ã¯ãç¹å®ã®åæäœæ¥ã«å¯ŸããŠéåžžã«æçšã§ããã®è±å¯ãªçµ±èšã¢ãã«ãå¯èŠåææ³ã¯ä»èšèªã®è¿œéãèš±ããŸããããã®ãããçµ±èšè§£æãããŒã¿ã®å¯èŠåãäž»ãªç®çã§ããã°ãRãã¬ãŒã ã¯ãŒã¯ãé©ããŠãããšèšããã§ãããã
4.3 Juliaã®ãã¬ãŒã ã¯ãŒã¯ãšScalaãã¬ãŒã ã¯ãŒã¯ã®æ¯èŒ
Scalaãã¬ãŒã ã¯ãŒã¯ã§ã¯ãPlayãAkkaãªã©ã䞊ååŠçãåæ£ã·ã¹ãã ã«ç¹åãããã¬ãŒã ã¯ãŒã¯ããããŸãããŸããScalaã¯Javaãšã®èŠªåæ§ãé«ããJavaã®ã©ã€ãã©ãªãå©çšå¯èœã§ãã
Juliaãã¬ãŒã ã¯ãŒã¯ã®å©ç¹ã¯ãã®ããã©ãŒãã³ã¹ãšæ¡åŒµæ§ã«ãããŸãã倧èŠæš¡æ°å€èšç®ãè€éãªããŒã¿åŠçã«ãŠãããã®ãã«ããã©ãã€ã æ§ã掻ããããšã§å¹ççãªã³ãŒããæžãããšãå¯èœã§ãã
Scalaã®ãã¬ãŒã ã¯ãŒã¯ã¯é«ã䞊ååŠçèœåãšè±å¯ãªæ©èœæ§ãåããŠããŸããäžæ¹ãJuliaã®ãã¬ãŒã ã¯ãŒã¯ã¯ãã®ããã©ãŒãã³ã¹ãšç°¡æœãªã³ãŒãäœæãå¯èœãªç°å¢ã«åªããŠããŸããåæ£ã·ã¹ãã ã䞊ååŠçãå¿ èŠãªå Žåã¯Scalaãé«éãªæ°å€èšç®ãæ±ããããå Žåã¯Juliaãããããæå¹ã§ãããã
4.4 Juliaã®ãã¬ãŒã ã¯ãŒã¯ãšJavaãã¬ãŒã ã¯ãŒã¯ã®æ¯èŒ
Javaãã¬ãŒã ã¯ãŒã¯ã«ã¯ãSpringãHibernateãªã©ããšã³ã¿ãŒãã©ã€ãºã¬ãã«ã®éçºã«å¯Ÿå¿ããè±å¯ãªãã¬ãŒã ã¯ãŒã¯ãååšããŸãããŸããJavaã¯ãã®ããŒã¿ããªãã£ãšå®å®æ§ã§é«ãè©äŸ¡ãåŸãŠããŸãã
察ããŠJuliaã®ãã¬ãŒã ã¯ãŒã¯ã¯ãã®é«éãªå®è¡é床ãšæ°å€èšç®ã«ç¹åããèšèšãããããŒã¿ãµã€ãšã³ã¹ãAIéçºãªã©ã«åããŠããŸããããããªãããäžçäžã§å©çšãããŠããJavaã«æ¯ã¹ããšããã®æ®å床ãšæ å ±éã§ã¯è¥å¹²å£ãéšåããããŸãã
Javaãã¬ãŒã ã¯ãŒã¯ãšJuliaãã¬ãŒã ã¯ãŒã¯ã®éžæã¯ãéçºã®èŠæš¡ãç®çã«ãããŸãã倧èŠæš¡ãªéçºãæçãããšã³ã·ã¹ãã ãæ±ãããªãJavaãæ°ããªæè¡ã®å°å ¥ãæ°å€èšç®ãäž»ãªç®çã§ããã°Juliaã®ãã¬ãŒã ã¯ãŒã¯ãæå¹ã§ãããã
5. Juliaãã¬ãŒã ã¯ãŒã¯ã®éžæåºæº
Juliaã®ãã¬ãŒã ã¯ãŒã¯ãéžæããéã®åºæºã¯å€å²ã«ããããŸããããã®ã»ã¯ã·ã§ã³ã§ã¯ãããžã§ã¯ãã®ç¹æ§ãããã©ãŒãã³ã¹ã察å¿ããã©ã€ãã©ãªã®è±å¯ãããããŠã³ãã¥ããã£ã®æŽ»å床ãèžãŸããŠèª¿æ»ããé©åãªãã¬ãŒã ã¯ãŒã¯ãéžæããæ¹æ³ã詳ããæãäžããŸãã
ãã¬ãŒã ã¯ãŒã¯ãéžæããéã«ã¯ããã®ãã¬ãŒã ã¯ãŒã¯ãä»ã®ã©ã®ãã¬ãŒã ã¯ãŒã¯ãããåªããæ©èœãæã£ãŠãããããŸããããã®æ©èœããããžã§ã¯ãã®èŠä»¶ãæºããããéèŠã§ããç¹æ§ãããã©ãŒãã³ã¹ãã©ã€ãã©ãªã®æ§èœãã³ãã¥ããã£ã®æŽ»çºããé«ããã°ããã ããã¬ãŒã ã¯ãŒã¯ã®æçšæ§ãšä¿¡é Œæ§ãé«ãŸããŸãã
ãã®ãããåãã¬ãŒã ã¯ãŒã¯ã®è©å€ãã¬ãã¥ãŒãå ¬åŒããã¥ã¡ã³ããŒã·ã§ã³ããã§ãã¯ããè©äŸ¡åºæºã«ããããããã®ãéžã³ãŸãããã
5.1 ãããžã§ã¯ãã®ç¹æ§ã«ããéžæ
èªåã®ãããžã§ã¯ãã«ã©ã®ãã¬ãŒã ã¯ãŒã¯ãæé©ãã¯ããããžã§ã¯ãèªäœã®ç¹æ§ã«å€§ãã圱é¿ãåããŸããçš®ã ã®ã¢ããªã±ãŒã·ã§ã³ãæ±ããå ·äœçãªèŠæ±ã«ããã䟡å€ãããã¬ãŒã ã¯ãŒã¯ã¯å€åããã§ãããã
ããšãã°ã倧èŠæš¡ãªããŒã¿åæãå¿ èŠãªãããžã§ã¯ãã§ã¯ããã®æ©èœããµããŒããããã¬ãŒã ã¯ãŒã¯ãéžæãã¹ãã§ããäžæ¹ã§ããããã¯ãŒã¯ããã°ã©ãã³ã°ã«éç¹ã眮ãããããžã§ã¯ãã§ã¯ããã®éšåã§åªããæ§èœãçºæ®ãããã¬ãŒã ã¯ãŒã¯ãæé©ãšãªããŸãã
ãã®ããã«ããããžã§ã¯ãã®ç¹æ§ãç解ããããã«åããããã¬ãŒã ã¯ãŒã¯ãéžæããããšã¯ããããžã§ã¯ãæåã®éµãšãªããŸãã
5.2 ããã©ãŒãã³ã¹ã«ããéžæ
ããäžã€ã®åºæºãšããŠããã¬ãŒã ã¯ãŒã¯ã®ããã©ãŒãã³ã¹ãèæ ®ããŸããäžéšã®ãã¬ãŒã ã¯ãŒã¯ã¯é«éãªã³ãŒãå®è¡ãå¯èœã§ã倧éã®ããŒã¿ãåŠçããããè€éãªèšç®ãè¡ã£ããããäžã§åªããæ§èœãæäŸããŸãã
äžæ¹ãä»ã®ãã¬ãŒã ã¯ãŒã¯ã§ã¯ãã®ãããªããã©ãŒãã³ã¹ãæäŸã§ããªããããããŸããããã³ãŒãã®å¯èªæ§ãšç¶æ管çã®å®¹æãã«åªããŠããã®ãããããŸãããã©ã¡ããéèŠãã¯ãããžã§ã¯ãã®èŠä»¶ãšç®çã«ãããŸãã
ãããã£ãŠããã¬ãŒã ã¯ãŒã¯ã®ããã©ãŒãã³ã¹ç¹æ§ãåºã«éžæããã¹ãã§ãã
5.3 察å¿ããã©ã€ãã©ãªã®è±å¯ãã«ããéžæ
ãã¬ãŒã ã¯ãŒã¯ããµããŒãããã©ã€ãã©ãªã®æ°ãšçš®é¡ãããã¬ãŒã ã¯ãŒã¯ã®éžæåºæºã®äžã€ã§ãããããã®ã©ã€ãã©ãªã¯ãç¹å®ã®æ©èœã®è¿ éãªéçºãå¯èœã«ããå šäœçãªã³ãŒãã£ã³ã°ããã»ã¹ãå©ããŸãã
å¿ èŠãªã©ã€ãã©ãªãè±å¯ã«æã£ãŠãããã¬ãŒã ã¯ãŒã¯ãéžæãããšãéçºæéãå€§å¹ ã«ççž®ããããæ©ããããã¯ããåžå Žã«æå ¥ããããšãå¯èœãšãªããŸãã
ãŸãã广倧ãªã©ã€ãã©ãªã¯åé¡è§£æ±ºã®éžæè¢ãå¢ãããããç¹å®ã®èª²é¡ã«çŽé¢ããéã®æè»æ§ãæäŸããŸãã
5.4 ã³ãã¥ããã£ã®æŽ»å床ã«ããéžæ
掻åçãªã³ãã¥ããã£ãæã€ãã¬ãŒã ã¯ãŒã¯ã¯ãéçºè ãè¿ éã«è³ªåã解決ããããæ°ãããã£ãŒãã£ãŒãç¿åŸãããããã®ã«å©ããšãªããŸãã
ãŸãã掻çºãªã³ãã¥ããã£ã¯ãã°ã®ä¿®æ£ãæ°æ©èœã®è¿œå ãæ©ãããã®ãã¬ãŒã ã¯ãŒã¯ãé·ãç¶ç¶ããŠãµããŒãããç¶ããå¯èœæ§ã瀺ãææšãšããªããŸãã
ãã®ããã«ãã³ãã¥ããã£ã®æŽ»å床ã¯ãã¬ãŒã ã¯ãŒã¯éžæã®éèŠãªåŽé¢ã§ããããããžã§ã¯ãã®é·æçãªæåã«å¯æ¥ã«é¢é£ããŠããŸãã
6. Juliaãã¬ãŒã ã¯ãŒã¯ã§ã®éçºãã¹ããã©ã¯ãã£ã¹
Juliaãã¬ãŒã ã¯ãŒã¯ã掻çšããŠéçºãé²ããéã®ãã¹ããã©ã¯ãã£ã¹ãã玹ä»ããŸããããã§ã¯ãJuliaãã¬ãŒã ã¯ãŒã¯ç¹æã®éçºã¹ã¿ã€ã«ããããã©ãŒãã³ã¹åäžã®ããã®ææ³ãããã«æå¹ãªã³ãã¥ããã£å©çšæ¹æ³ã«ã€ããŠèª¬æããŸãã
ãããã®ãã¹ããã©ã¯ãã£ã¹ãç解ããå®éã®éçºã«æŽ»çšããããšã§ãJuliaãã¬ãŒã ã¯ãŒã¯ãæ倧éã«å©çšããããšãå¯èœã«ãªããŸãã
ããã§ã¯ãããããã®é ç®ã«ã€ããŠè©³ããèŠãŠãããŸãããã
6.1 ã³ãŒãã£ã³ã°ã¹ã¿ã³ããŒãã®é©çš
Juliaãã¬ãŒã ã¯ãŒã¯ã䜿ã£ãéçºã§ã¯ãäžå®ã®ã³ãŒãã£ã³ã°ã¹ã¿ã³ããŒãã®é©çšãæšå¥šãããŠããŸããããã«ãã£ãŠã³ãŒãã®å質ãåäžããéçºè ãå ±æããããã³ãŒããæžãããšãå¯èœã«ãªããŸãã
ã³ãŒãã£ã³ã°ã¹ã¿ã³ããŒããé©çšããããšã§ãç¹å®ã®ã«ãŒã«ã«åŸã£ãã³ãŒããæžãäºãã§ãããã°ã®çºçãæžããããšãå¯èœã§ããããã«ãä»ã®éçºè ãšã®å ±åäœæ¥ãã¹ã ãŒãºã«é²ããããŸãã
Juliaãã¬ãŒã ã¯ãŒã¯ã«ã¯ãå ·äœçãªã³ãŒãã£ã³ã°ã¹ã¿ã³ããŒããå ¬åŒããã¥ã¡ã³ããŒã·ã§ã³ã§æäŸãããŠããŸãããããåèã«ããªããã質ã®é«ãã³ãŒããæžãããšãå¿ãããŸãããã
6.2 ãã¹ãé§åéçºã®ããã
Juliaãã¬ãŒã ã¯ãŒã¯ã§ã¯ããã¹ãé§åéçºãæšå¥šãããŠããŸããããã¯ãã³ãŒãã®å質ãåäžããããã°ã®æ€åºã容æã«ããããã®æ¹æ³è«ã§ãã
ãã¹ãé§åéçºã§ã¯ãæåã«ãã¹ãã±ãŒã¹ãæžãããã®ãã¹ããéãããã«ã³ãŒããæžããŸããããã«ãããæåããå質ã®é«ãã³ãŒããæžãããšãå¯èœã«ãªããŸãã
Juliaãã¬ãŒã ã¯ãŒã¯ã«ã¯ããã¹ãããŒã«ãçµã¿èŸŒãŸããŠãããéçºè ãã¡ã¯ç°¡åã«ãã¹ãé§åéçºãåãå ¥ããããšãã§ããŸãã
6.3 ããã©ãŒãã³ã¹ã®æé©åææ³
Juliaãã¬ãŒã ã¯ãŒã¯ã䜿ãå©ç¹ã®äžã€ãããã®é«ããã©ãŒãã³ã¹ã§ããããããæé©ãªããã©ãŒãã³ã¹ãåŸãããã«ã¯ãç¹å®ã®ææ³ãçšããããšãæ±ããããŸãã
äŸãã°ãJuliaã§ã¯åå®å šæ§ãéèŠããåçãªåå€æŽãé¿ããããšãæšå¥šãããŠããŸããããã«ããé«éãªå®è¡ãå¯èœã«ãªããŸãããŸããå€æ¬¡å é åãå¹ççã«æ±ãããã®ææ³ãååšããŸãã
ãããã®æé©åææ³ãç解ãé©çšããããšã§ãJuliaã®çã®åãåŒãåºãããšãå¯èœã«ãªããŸãã
6.4 ã³ãã¥ããã£ã§ã®ç¥èå ±æã®ä»æ¹
Juliaãã¬ãŒã ã¯ãŒã¯ã¯ã¢ã¯ãã£ããªãªãŒãã³ãœãŒã¹ã³ãã¥ããã£ãæã£ãŠããŸããéçºè ã¯ããã®ã³ãã¥ããã£ã掻çšããããšã§ãæ°ããªç¥èãåŸãããšãå¯èœã§ãã
äŸãã°ãGitHubãJulia Discourseãªã©ã®ãã©ãããã©ãŒã ã掻çšããä»ã®éçºè ãšã³ãŒããå ±æããããåé¡è§£æ±ºã®ããã®ã¢ããã€ã¹ãåŸããããããšãã§ããŸãã
çµéšè±å¯ãªéçºè ããã®ãã£ãŒãããã¯ãåŸãããšã¯ãèªèº«ã®ã¹ãã«ãåäžãããäžã§éåžžã«äŸ¡å€ã®ããããšã§ããæ¯éãã³ãã¥ããã£ã掻çšããŠJuliaãã¬ãŒã ã¯ãŒã¯ã§ã®éçºãé²ããŠãããŸãããã