Java ãšãã®ãšã³ã·ã¹ãã ã«ã€ããŠã®ççŽãªæèŠ
åºå
ž:
Dev.to ããŠãç§ã®ã¡ã€ã³èšèªã C# ã§ããããšãèªããŸãããããããã㯠Java ãšãã®åšå²ã®ãšã³ã·ã¹ãã ã«é¢ããç§ã®å
¬å¹³ãªæèŠã§ããç§ã¯ Java 㧠bash ã³ãã³ããé »ç¹ã«äœ¿çšããŸãããããã®æ¬ ç¹ããã¹ãŠèªèããŠããŸãããããšãã°ãJava ã«ã¯ããããã£ããªãããã€ãã£ãã«ã¯ã€ãã³ããæ§é äœãæŒç®åã®ãªãŒããŒããŒãããªããJava 10 ãŸã§ã¯æšè«ããªãã£ãããããvarãã¯ãããŸããããã¹ãŠã C# ã«ãããŸãããŸããLINQãvarãenum ããªããããJava ã«ã¯ bash ã䜿çšããŸãããããã§ããç¹ã« Android çšã®ã¢ããªã±ãŒã·ã§ã³ãäœæãããšãã¯ãã¡ããããã®ä»ã®ããšã§ã Java ã§ããªãã®éãæžããŸããç§ã®æåã®ãããžã§ã¯ãã Java ã§ãããããã§ãéææ¥ã®å€æ¹ãç·æ¥ã®ãããç§ã¯æ°æéç¶ã㊠Java ã§æžããªããã°ãªããŸããã§ããããããŠç§ãäœãçºèŠãããšæããŸããïŒã¹ããªãŒã ïŒ
ã©ããã Java 8 ã§ã¹ã¬ãããå°å
¥ãããããã§ãããããŠç§ã¯ããã«ã€ããŠäœãç¥ããŸããã§ããïŒç¥ããªã人ã®ããã«èª¬æãããšãStreams 㯠LINQ ã® Java å®è£
ã§ãããŸããJava 10 ã«ã¯åæšè«ãããããšãããããŸããããã®ãããJava ã«ã¯ var é¢æ°ãè¿œå ãããŸãããç§ã®ç¥èãã©ãã»ã©å€ãã®ãä¿¡ããããŸããããæ£çŽãªãšãããããã«ã¯çç±ããããŸããããã® 2 ã€ã®ããšãç§ã®èãæ¹ã«å€§ããªå€åããããããŸãããJava ã¯åžžã«äŸå€ããã§ãã¯ããŸãããC# ã¯ãã§ãã¯ããªãããšããåç¥ã§ãã? æ£çŽãC# ã®ãã®æ©èœãæ¬åœã«æãããšæã£ãŠããŸããã¯ããæ§é ãããããã£ãªã©ã¯ãããŸãããããªããŠããšã§ãããããšã¬ã¬ã³ãã§ã! Java ã®èšèšã«ãããéçºè
ã¯ããå
ç¢ãªã¢ããªã±ãŒã·ã§ã³ãäœæããå¿
èŠããããšæããŸããäžæ¹ã.NET ã®äžçã§ã¯ãããã¯äž»ã«ããã°ã©ãã®è£éã«ä»»ãããŠããŸããããããå¶éã奜ãéçºè
ãããŸãããèªç±ã奜ãéçºè
ãããŸããã©ã¡ãã®èšèªãéåžžã«å®å
šã§ãããJava ã«ã¯æããã«ããããªåªäœæ§ããããŸããã§ã¯ããªã倧äŒæ¥ã¯ Java ã奜ãã®ã§ãããã? ããçããããã£ãæ°ãããŸãïŒç§ãæãã€ã©ã€ã©ããã®ã¯ãã€ã³ã¿ãŒãããäžã§èŠãããã»ãšãã©ã®ã³ãŒãäŸã§ã¯ããããã®é«åºŠãªæ©èœãåžžã«äœ¿çšãããŠããããã§ã¯ãªããšããããšã§ã...æ°ãã Java éçºè
ãã³ãŒã ããŒã¹å
šäœã« 'var' ãæžãããŠããã®ãèŠãããããæãã§ãããã ã圌ã¯çºçããã§ãããïŒã¹ããªãŒã ã«ã€ããŠã¯ã©ãã§ãã? ã¹ããªãŒã ãšã¯äœã§ãã? Java éçºè
㯠For ã«ãŒãã倧奜ãã§ããå®éãJava ã®äžçã§ã¯ foreach ã«ãŒããããéåžžã«ãŸãã§ã (ããããããã«ã¯çç±ããããŸããFor ã«ãŒãã®æ¹ãã¯ããã«æé©åãããŠããŸã)ããããããããã¯æªãæ©èœã§ã¯ãããŸãããããã«èšã£ãŠãããŸããããããã®æ©èœã¯çŽ æŽãããã§ããAndroid ã¢ããªãäœæããŠãããšãã«ãAndroid API ã®ã»ãšãã©ã©ãã«ã enum ã䜿çšãããŠããªãããšã«æ°ã¥ããšãæ¬åœã«å¿ãçã¿ãŸããAndroid ã¯äœå¹Žãåã«æžããããã®ãªã®ã§ãããã¯åœç¶ã®ããšã§ããç§ãæãã€ã©ã€ã©ããã®ã¯ãAndroid ã§ã¢ã¯ãã£ããã£ã®çµæé¢æ°ã䜿çšããå¿
èŠããããã³ã«ã次ã®ããã«å®æ°ã䜿çšããªããã°ãªããªãããšã§ãã
int PICK_IMAGE_FROM_GALLERY = 3000 å
åŒãããã¯ã¯ã¬ã€ãžãŒã§ãïŒããã§ããäžçäžã®äººã
ããããåãå
¥ããããã«ãªããŸããããããŠç§ããããJava ã«ã¯ãã€ãã£ã ã€ãã³ãã®å®è£
ããããŸãããC# ã®ãããªã€ãã³ããšããªã²ãŒããããã°ããã£ãã®ã§ãã... (Java èšèªã®äœæè
ã®çããããããèªãã§ãããªããã€ãã³ããè¿œå ããå¿
èŠããããŸãããã§ã«ã€ãã³ããæã£ãŠããå ŽåããŸãã¯äœæäžã®å Žåã¯ããç¥ãããã ããã ïŒãããã§ãJava ãšã³ã·ã¹ãã ã®æ倧ã®æ¬ é¥ãšãªãå¯èœæ§ã®ãããã®ã説æããŸããããã¥ã¡ã³ããŒã·ã§ã³ïŒïŒïŒOracle ã® Web ãµã€ãã«ããä¹±éã§åœ¹ã«ç«ããªãããã¥ã¡ã³ãã¯ã2007 幎ã®ã¬ãã«ã§ã¯æãã§æ代é
ãã«èŠããŸããã³ãŒãäŸãåžžã«ããããã§ã¯ãããŸãããæ¯èŒççããæ©èœã API ã¡ãœãããæ¢ãå§ãããšãéå±ãªå®çŸ©ã宣èšãåŒæ°ããããå±ããããã±ãŒãžãèŠã€ããã ãã§ããããã¯äžåçã ãšæããŸããããã¯äžåçã ãšæããŸãããïŒã³ãŒãã¹ããããã¯ãããŸããã? ãã®ãããç§ãã¡éçºè
ã¯ãStackOverflow ãªã©ã®ãã©ãŒã©ã ããTutorialsPoint ãªã©ã®ä»ã®ããã°ã©ãã³ã° Web ãµã€ãã«å€§ããäŸåããå¿
èŠããããŸãããã®æ©èœã瀺ãåªããã³ãŒãäŸãéåžžã«åœ¹ç«ã€å ŽåããããŸãããããŸã圹ã«ç«ããªãå ŽåããããŸããMicrosoft ã® C# ããã¥ã¡ã³ããš Oracle ã® Java ããã¥ã¡ã³ããæ¯èŒããããšããå§ãããŸãã倩ãšå°ã»ã©ã§ããä¿¡ããããªãïŒè¡ã£ãŠç¢ºèªããŠãã ãã:
Oracleãš
MicrosoftãMicrosoft ãµã€ãã®ããã¥ã¡ã³ãã¯ãšãŠãçŸããã§ããããŒã¯ã¢ãŒãããããŸãïŒç§ãã¡éçºè
ã¯ããŒã¯ã¢ãŒãã«å€¢äžã§ããOracle ã®ããã¥ã¡ã³ãã«ã€ããŠã¯ã©ãã§ãã? å
ã»ã©ãèšããŸãããã2007 幎ããã®ãŸãŸã§ãããããããåœæã¯ããŒã¯ã¢ãŒãã¯ãªãã£ãã®ã§ããããïŒãšããããšã§ãJavaã¯ãããïŒãšããããšãèšãããã®ã§ãããããããã®èšèªã¯ããã¥ã¡ã³ããå€ããªã£ãŠããããã«å€§ããªåœ±é¿ãåããŠããŸãããããã¯ã»ãšãã©ãå€ãããã¥ã¡ã³ããå€ãããã¥ã¢ã«ã§ãããã¹ã¬ãããå€æ°ãåæåãªã©ã®å¿
èŠãªæ°æ©èœã«ã€ããŠã¯åŒ·èª¿ãããŠããŸãããæè¿ã§ã¯ãJava ã¯æ代é
ãã«ãªãå§ããŠãããKotlin ã«åã£ãŠä»£ããããã ãããšèšãããŠããŸãããç§ã¯ããã¯æããŸãããããšããããæ¬åœã ã£ããšããŠãã圌ã¯åœŒå¥³ã®ä»£ããã«é·ãã¯ãªããªãããã§ããããã«ã¯äœå¹ŽãããããŸããScala ãããã眮ãæããããšããããšãèŠããŠããŸãã? ããã§äœãèµ·ãã£ãã®ã§ããããïŒJava ã¯äŸç¶ãšã㊠JVM ãšã³ã·ã¹ãã å
šäœãæ¯é
ããŠããŸãããã ããScala ã Java ãšã¯äž»ã«æ©èœé¢ã§å€§ããç°ãªãããšã¯èªããŸããããŠãæåŸã«... Java ã®äžçã§æãæåçãªããšããã 1 ã€ãããŸããããã¯JDKãååŸããŠããŸããJDK ãããŠã³ããŒãããã®ãé£ããã®ã¯ãªãã§ãã? ã€ãŸããJDK ãå¿
èŠãªå Žåãç°¡å㪠Google æ€çŽ¢ã§ Oracle Web ãµã€ãã衚瀺ãããããã«ã¢ã¯ã»ã¹ããŠå¿
èŠãª JDK ã®ããŒãžã§ã³ãèŠã€ããããšãã§ããŸãããããŸã§ã¯æ¯èŒçç°¡åã§ãããããŠã³ããŒãããã«ã¯ç»é²ãå¿
èŠã§ããJDK ãããŠã³ããŒãããã ãã§ãªããOracle ã§ã¢ã«ãŠã³ããäœæããæ¯é±ã¡ãŒã«ãåŠçããå¿
èŠãããã®ã¯ãªãã§ãããã? Java ã¯æåãããªãŒãã³ãœãŒã¹ã§ããããšã«çæããŠãã ãããC# ãšã¯ç°ãªãã2015 幎ã«ãªãŒãã³ãœãŒã¹ã«ãªã£ãã®ã¯ã€ãæè¿ã§ããããã§ãç§ã¯ãã§ã«ã€ã©ã€ã©ããŠãGoogleæ€çŽ¢çµæã®2çªç®ã®Webãµã€ãã«ã¢ã¯ã»ã¹ããŸããOpenJDK ãµã€ãã瀺ããŠããŸãããã㧠JDK ãèŠã€ããŠããããŠã³ããŒãããã¯ãªãã¯ããŸããããã (é©ããããšã«!) ä»ã®ãµã€ããã JDK å®è£
ãžã®ãªã³ã¯ãæäŸãããŠããŸãããµã€ãã®äžã«ã¯ããã®ããŸããŸãã Oracle ããããŸãããRed Hat ãµã€ããžã®ãªã³ã¯ããããŸããã¯ããRed Hat ã¯çŽ æŽãããã§ããäžçã®ãªãŒãã³ãœãŒã¹äŒæ¥ã®å
é§è
ã® 1 ã€ã§ããããããŸããã圌ãã®ãŠã§ããµã€ãã«è¡ããŸãïŒããããããŠã³ããŒãããŠã¿ãŸãïŒãã®ãªã³ã¯ãã¯ãªãã¯ããŠãæ¢ããŠãã JDK ããŒãžã§ã³ãèŠã€ããŸããç§ãããã«ç»é²ããªããã°ãªããŸãã... (åçãªæ²é») ããã¯ãã æ²ããã§ã... ã¯ãœïŒãã®äººãã¡ã®äœãåé¡ãªã®ã§ããããïŒæåŸã«ãç§ã¯è«Šã㊠Chocolatey ãã€ã³ã¹ããŒã«ããŸã (apt-get ã«äŒŒãŠããŸãããWindows çšã§ããããã¯ãåºãé
åžããã䜿çšãããŠãã Windows çšã®æåã®ããã±ãŒãž ãããŒãžã£ãŒã ãšæããŸã)ããããã£ãŠãããããã¹ãŠè¡ã£ãåŸãPowerShell ã§ãchoco install jdk-1.8ãã®ãããªç°¡åãªã³ãã³ããèšè¿°ããå¿
èŠããããŸãããããŠç§ã¯ãããããŸãïŒ(C# éçºè
ã§ããã°ãç»é²ãªã©ãè¡ããã«ãããã 2 ïœ 3 åã®ã¯ãªãã¯ã§ .Net SDK ãå
¥æããã®ãããã«ç°¡åãããåç¥ã§ããã)ãç§ã®é·ãæçŽã®çµè«ãšããŠãJava ã¯åªããããã°ã©ãã³ã°èšèªã§ããããã¯çŸãããä¿¡é Œæ§ãé«ãã(ç§ã®æèŠã§ã¯) äžçã§æé«ã® IDEãJetBrains ã®æå㪠IntelliJ IDEA ãåããŠããŸããããã«ãJava ã«ã¯éåžžã«åœ¹ç«ã€ã³ãã¥ããã£ãšå€§èŠæš¡ã§å€æ§ãªãšã³ã·ã¹ãã ããããŸããç§ã¯ C# éçºè
ãšããŠãããèšã£ãŠããŸã...ããããããã¥ã¡ã³ããæŽæ°ããå¿
èŠããããŸããã³ãŒãäŸãAPIãJDK ãç°¡åã«å
¥æã§ããããã«ããå¿
èŠããããŸããå
šäœãšããŠãJava ã¯æ£ããæ¹åã«é²ãã§ãããæè¿äººæ°ãå°ãèœã¡èŸŒãã§ãããããããŸããããã ãããšãã£ãŠ Java ããªããªãããã§ã¯ãããŸãããé·å¹Žã«ããããäžçæé«ã®èšèªãªã¹ãã®ãããã«åèšãç¶ããŠããŸããç§ã¯åžžã« Java ã䜿çšããŠãããä»åŸã䜿çšãç¶ããã€ããã§ãã
2021 幎ã«æ€èšãã¹ã 3 ã€ã®æ°ãã Java ããŒã«
åºå
ž:
OpenSource è¿å¹Žã人工ç¥èœãæ©æ¢°åŠç¿ãKubernetes ã«é¢é£ãããããžã§ã¯ããå®è£
ããããã« PythonãGoãNode.js ãç©æ¥µçã«äœ¿çšãããŠããã«ãããããããJava ãã¯ãããžã¯äŸç¶ãšããŠãšã³ã¿ãŒãã©ã€ãº ã¢ããªã±ãŒã·ã§ã³éçºã«ãããŠéèŠãªåœ¹å²ãæãããŠããŸããDeveloper Economy ã«ãããšã2020 幎ã®ç¬¬ 3 ååæã«ã¯äžçäžã« 800 äžäººã®ãšã³ã¿ãŒãã©ã€ãº Java éçºè
ãããŸããã
Java ããã°ã©ãã³ã°èšèªã¯ 25 幎以äžååšããŠãããåžžã«æŽæ°ãããŠããŸããã¢ããªã±ãŒã·ã§ã³ãšãã£ãªã¢ã匷åã§ããæ°ããããŒã«ããã¬ãŒã ã¯ãŒã¯ãç»å ŽããŠããŸããJava ãã©ãããã©ãŒã ã®å€§éšåã¯ãåçåäœã䌎ãé·æéå®è¡ããã»ã¹ãå®è£
ããããã«äœæããããµãŒããŒãŸãã¯ä»®æ³ãã·ã³äžã§å®è¡ãããããã«èšèšãããŠããŸãããã㯠2014 幎㫠Kubernetes ã³ã³ããã®ç»å Žã«ããå€ãããŸãããKubernetes äžã§ Java ãå®è¡ããéã®æ倧ã®èª²é¡ã¯ãã¡ã¢ãª ãããããªã³ãã®åæžã«ããã¢ããªã±ãŒã·ã§ã³ã®ããã©ãŒãã³ã¹ã®æé©åãèµ·åæéãšå¿çæéã®é«éåããã¡ã€ã« ãµã€ãºã®åæžã§ãã
3 ã€ã®æ°ãã Java ãã¬ãŒã ã¯ãŒã¯ãšããŒã«
Java éçºè
ã¯ã人æ°ã®ããããŒã«ããªãŒãã³ãœãŒã¹ ãããžã§ã¯ãã Java ã¢ããªã±ãŒã·ã§ã³ã«çµ±åããæãç°¡åãªæ¹æ³ãåžžã«æ¢ããŠããŸããæ°ããé«æ§èœããŒã«ã«ãããéçºã®çç£æ§ã倧å¹
ã«åäžããããå€ãã®äŒæ¥ãå人ã®éçºè
ã Java ã¹ã¿ãã¯ã䜿çšããããšã奚å±ãããŸããä»æ¥ã¯ã3 ã€ã®æ°ãã Java ãã¬ãŒã ã¯ãŒã¯ãšããŒã«ã«ã€ããŠèª¬æããŸãã
Quarkus ã¯ãã¯ã©ãŠã ãã€ã¯ããµãŒãã¹ãšãµãŒããŒã¬ã¹ ã¢ããªã±ãŒã·ã§ã³ãéçºããããã«èšèšãããŠããŸããKubernetes ãªã©ã®ã³ã³ãã ãªãŒã±ã¹ãã¬ãŒã·ã§ã³ ãã©ãããã©ãŒã ã§ã¯ãèµ·åæéãçããã¡ã¢ãªåžžé§ã»ãã (RSS) ãµã€ãºãå°ãããã¡ã¢ãªå¯åºŠãé«ããªããŸããJRebel ã®ç¬¬ 9 åå¹Žæ¬¡å ±åæžã«ãããšãJava éçºè
ã®éã§ã® Quarkus ã®äœ¿çšç㯠6% å¢å ããŸãã (å幎㯠1% æªæº)ãMicronaut ãš Vert.x ã¯ãããã 4% ãš 2% ã«æé·ããŸãã (æšå¹Žã¯çŽ 1% å¢å )ã
Eclipse JKube ã䜿çšãããšãJava éçºè
ã¯ãDockerãJibããŸã㯠Source-To-Image ãã«ãæŠç¥ã䜿çšããŠãã¯ã©ãŠãããŒã¹ã® Java ã¢ããªã±ãŒã·ã§ã³ã«åºã¥ããŠã³ã³ãã㌠ã€ã¡ãŒãžãäœæããŸãããŸãããã®ããŒã«ã¯ã³ã³ãã€ã«æã« Kubernetes ããã³ OpenShift ãããã§ã¹ããçæãããããã°ãç£èŠãããã³ãã° ããŒã«ã®ãšã¯ã¹ããªãšã³ã¹ãåäžãããŸãã
MicroProfile ã¯ãæ°ãããã¬ãŒã ã¯ãŒã¯ãå°å
¥ããããã¢ããªã±ãŒã·ã§ã³å
šäœããªãã¡ã¯ã¿ãªã³ã°ãããããããšãªããJava ãã€ã¯ããµãŒãã¹ã®ãšã³ã¿ãŒãã©ã€ãº ã¢ãŒããã¯ãã£ã®æé©åã«é¢é£ããåé¡ã解決ããŸããããã«ãMicroProfile ä»æ§ (äŸ: HealthãOpen TracingãOpen APIãFault ToleranceãMetricsãConfig) ã¯ãJakarta EE å®è£
ã«åãããŠé²åãç¶ããŠããŸãã
çµè«
ã©ã® Java ãã¬ãŒã ã¯ãŒã¯ãããŒã«ããšã³ã¿ãŒãã©ã€ãº Java éçºè
ã«ãšã£ãŠæé©ã§ããããèšãã®ã¯å°é£ã§ããJava ã¹ã¿ãã¯ãæ¹åããäŒæ¥ã®ããžãã¹ã®æé·ãå éããæ©äŒãããéããæ°ãããã¬ãŒã ã¯ãŒã¯ãããŒã«ããã©ãããã©ãŒã ãç»å ŽããããšãæåŸ
ã§ããŸãã2021 幎㫠Java ã¢ããªã±ãŒã·ã§ã³ãæ¹åã§ãããã©ããã確èªããŠãã ããã
GO TO FULL VERSION