ã2026幎çãGoã®å§ãæ¹ â ã·ã³ãã«ã§é«éãªããã°ã©ãã³ã°èšèªå ¥é
Goèšèªã£ãŠããèããã©ãã©ããªèšèªãªã®ïŒ
Goã¯Googleã2009幎ã«éçºããããã°ã©ãã³ã°èšèªã ããç¹åŸŽã¯ãã·ã³ãã«ãããã³ã³ãã€ã«ã®éããã䞊è¡åŠçã®æžãããããã®3ã€ãCèšèªã®ãããªå®è¡é床ãæã¡ãªãããPythonã®ããã«èªã¿ãããã³ãŒããæžãããã ãDockerãKubernetesãTerraformãªã©ãã¯ã©ãŠãæä»£ã®äž»èŠããŒã«ã®å€ããGoã§äœãããŠãããã
ãžããïŒå§ããã«ã¯ãŸãäœãããã°ããã®ïŒ
ãŸãgo.devã®å ¬åŒãµã€ãããGoãã€ã³ã¹ããŒã«ããããWindowsãMacãLinuxã©ãã§ã察å¿ããŠããããã€ã³ã¹ããŒã«ããããgo versionãã³ãã³ãã§ããŒãžã§ã³ã衚瀺ãããã°æºåå®äºã次ã«ãããžã§ã¯ããäœããšãã¯ãgo mod init ãããžã§ã¯ãåããå®è¡ãããããã§go.modãã¡ã€ã«ãäœãããŠãäŸåé¢ä¿ã管çã§ããããã«ãªããã ã
åºæ¬çãªææ³ã¯ã©ããªæããªã®ïŒ
Goã¯éçåä»ãèšèªã ãã©ãççž®å€æ°å®£èšïŒ:=ïŒã䜿ãã°åãçç¥ããŠæžããããããšãã°ãname := "ã²ãã"ããšæžãã ãã§ãèªåçã«stringåãšå€æããŠãããã颿°ã®å®çŸ©ã¯ãfunc 颿°å(åŒæ° å) æ»ãå€ã®åããšããã·ã³ãã«ãªåœ¢åŒãä»ã®èšèªãšæ¯ã¹ãŠäºçŽèªããã£ã25åãããªããããèŠããããšãå°ãªãã®ãé åã ãã
䞊è¡åŠçãåŸæã£ãŠèãããã©ãã©ããã£ãŠæžãã®ïŒ
Goã®äžŠè¡åŠçã¯goroutineãšchannelã§å®çŸããããgoroutineã¯é¢æ°åŒã³åºãã®åã«ãgoããšã€ããã ãã§èµ·åã§ãã軜éã¹ã¬ããã®ãããªãã®ãOSã¹ã¬ãããšéã£ãŠæ°åãæ°äžåãåæã«åãããŠã倧äžå€«ãªãã ãchannelã¯goroutineå士ãããŒã¿ãããåãããããã®éè·¯ã§ããch := make(chan string)ãã®ããã«äœããéä¿¡ã¯ãch <- ããŒã¿ããåä¿¡ã¯ãããŒã¿ = <- chããšçŽæçã«æžãããã
æšæºã©ã€ãã©ãªã£ãŠã©ããªãã®ãããã®ïŒ
Goã®æšæºã©ã€ãã©ãªã¯ãšãŠãå å®ããŠããããnet/httpããã±ãŒãžã䜿ãã°ãå€éšãã¬ãŒã ã¯ãŒã¯ãªãã§WebãµãŒããŒãäœãããencoding/jsonã§JSONã®å€æãã§ããããdatabase/sqlã§ããŒã¿ããŒã¹æäœãã§ãããããšãã°WebãµãŒããŒãªãããã³ãã©é¢æ°ãæžããŠhttp.ListenAndServeãåŒã¶ã ãã§èµ·åã§ãããã ããã¬ãŒã ã¯ãŒã¯ã«é ŒããªããŠãå®çšçãªã¢ããªãäœããã®ããGoã®å€§ããªåŒ·ã¿ã ãã
ã³ãã³ãã©ã€ã³ããŒã«ãäœããã£ãŠæ¬åœïŒ
æ¬åœã ãïŒGoã¯ã³ã³ãã€ã«ãããšåäžã®ãã€ããªãã¡ã€ã«ã«ãªããããCLIããŒã«ã®é åžããšãŠãç°¡åãªãã ãcobraãšããã©ã€ãã©ãªã䜿ããšããµãã³ãã³ãããã©ã°ã®åŠçãæ¥œã«å®è£ ã§ããããGitHub CLIãHugoãcobraã§äœãããŠããããgo buildãã§ãã«ãããŠãã§ãããã¡ã€ã«ãã³ããŒããã ãã§ã©ãã§ãåãã®ã¯æ¬åœã«äŸ¿å©ã ãã
åŠç¿ã®ããŒãããããæããŠïŒ
ãŸãã¯A Tour of GoïŒå ¬åŒãã¥ãŒããªã¢ã«ïŒã§ãã©ãŠã¶äžã§åºæ¬ææ³ãåŠãŒããæ¬¡ã«go mod initã§èªåã®ãããžã§ã¯ããäœã£ãŠãgoroutineãšchannelã䜿ã£ãç°¡åãªããã°ã©ã ãæžããŠã¿ãããã®åŸãnet/httpã§WebãµãŒããŒãæ§ç¯ããŠãæåŸã«cobraã§CLIããŒã«ãäœãã°äžéãã®çµéšãç©ãããã
ä»ã®èšèªãšæ¯ã¹ããšããGoã£ãŠã©ãããç«ã¡äœçœ®ãªã®ïŒ
é¢çœã質åã ããGoãšRustã¯ããæ¯èŒããããã©ãç®æãæ¹åãéããã ãRustã¯ãã¡ã¢ãªå®å šæ§ã絶察ã«ä¿èšŒãããããšãéèŠããŠããŠãåŠç¿ã³ã¹ããé«ã代ããã«ã·ã¹ãã ããã°ã©ãã³ã°ã«åŒ·ããäžæ¹Goã¯ãããŒã éçºã§ã®ã·ã³ãã«ããšçç£æ§ããéèŠããŠããŠãããã«æžããŠããã«ãããã€ã§ãããGo 1.18ã§è¿œå ããããžã§ããªã¯ã¹ããå¿ èŠæå°éãã®èšèšã§ãGo Proverbsãšããèšèšå²åŠã§ã¯ãå°ãã®ã³ããŒã¯å°ãã®äŸåããè¯ãããšèšãããŠããããããã·ã³ãã«ãã培åºããŠãããã
Go Proverbsã£ãŠåããŠèããïŒãã£ãšæããŠïŒ
Go Proverbsã¯Goã³ãã¥ããã£ã§å€§åã«ãããŠããæ Œèšéã§ãRob PikeïŒGoã®å ±åèšèšè ïŒãæå±ãããã®ã ãããå ±æãããªãéä¿¡ãããã¯goroutineã®èšèšææ³ãã®ãã®ã§ãã¡ã¢ãªãå ±æãã代ããã«channelã§ããŒã¿ãéãåãããšãæšå¥šããŠããããã€ã³ã¿ãŒãã§ãŒã¹ã倧ããã»ã©æœè±¡åã¯åŒ±ãããšããæ Œèšããã£ãŠãGoã§ã¯io.Readerã®ããã«ã¡ãœããã1ã€ã ãã®ã€ã³ã¿ãŒãã§ãŒã¹ãçæ³ãšãããŠãããã ãããããå²åŠãç¥ã£ãŠãããšãGoçãªèšèšãèªç¶ã«ã§ããããã«ãªããã