Presentations at GoConference 2018 Autumn.
Presentations at GoConference 2018 Autumn.
Goã®APIãæ¸ãã¨ããåèã«ãªãã¦ããããã¹ãã®è©±ã¯é常ã«ããè¦ã¾ããTable Driven Testããã¾ãããã¨ãããµããã¹ãã®å®è¡ã¨ãããã®ãããã®è©±ã¯ããããæ¸ããã¦ãã¾ãã ã¾ãããã¹ããã£ãã·ã¥ãªã©ãåºã¦ãã¾ããã®ã§ãã¦ããããã¹ãå¨ãã®æ©è½ã»ãã¦ãã¦ã¯å å®ãã¦ããã¨æãã¦ã¾ãã ä¸æ¹ã§ãhttptestã使ã£ã¦ãã¹ããµã¼ãã¼ãç«ã¦ããªã¯ã¨ã¹ã/ã¬ã¹ãã³ã¹ã®å 容ãæ¤è¨¼ããå ´åãåä¸ã®ãªã¯ã¨ã¹ããæ¤è¨¼ããç¨åº¦ã®ãµã³ãã«ã«ã¨ã©ã¾ã£ã¦ãããããã¾ãå ±éã§ããããå¦çãæ¸ãã¦ãããã¿ãããªãã¦ãã¦ããªããèªåã§ä¸ããæ¸ãã¨ãªãã¨é常ã«è °ãéããªãã¾ãã äºå®èªåã¯ããããçµé¨ããã¾ããããããã£ãå ±éå¦çã¯æ®æ®µinternalããã±ã¼ã¸ã®ä¸ã®ãtestutilsã¨ãã¦ã¾ã¨ããããªã©ãã¦ãã¾ãã ä»åã¯Goã§ä¸è¨ã®ãããªãã¹ããæ¸ãå ´åãã©ãããå ±éå¦çãå¿ è¦ã¨ãªã£ããããã¼ãã¨ãã¦
ããã¯ããBASE Advent Calendar 2018ã4æ¥ç®ã®è¨äºã§ãã devblog.thebase.in BASEã§ãµã¼ãã¼ãµã¤ãã¨ã³ã¸ãã¢ããã£ã¦ãããæ±å£(@hgsgtk)ã§ããBASE BANKã¨ããBASEã®åä¼ç¤¾ã«ã¦éèäºæ¥ã®ç«ã¡ä¸ããè¡ã£ã¦ãã¾ãã 以åæ稿ãããGoãéç¨ã¢ããªã±ã¼ã·ã§ã³ã«å°å ¥ããéã®ã¬ã¤ã¤æ§é 模索ã®æ è·¯ | Go Conference 2018 Autumn çºè¡¨ã¬ãã¼ãã¨ããè¨äºã®ä¸ã§ãã¬ã¤ã¤æ§é ãæé·ããã¦ããããã®ã¦ããããã¹ãã«ã¤ãã¦è¨åããã¦ããã ãã¦ãã¾ããããã¡ãã®ã¨ã³ããªã¼ã«ã¦é²ãã¦ããã³ã¼ããã¼ã¹ã§ã¯ãå ¨ä½ã§ç´85%ç¨åº¦ã®ãã¹ãã«ãã¬ãã¸ã¨ãªã£ã¦ãã¾ããæ¬æ¥ã¯ããããªGoã®ã¦ããããã¹ãã«ã¤ãã¦ã®å 容ã§ãã ã¦ããããã¹ãã®ç¥è¦ ç¾å¨ãGoã®ã¦ããããã¹ãã«ã¤ãã¦ã®ç¥è¦ã¯æ°å¤ãè¦ããããã¼ãã«é§åãã¹ãã»ãµããã¹ããªã©ã¨ãã£ã
Upon receiving suggestions from readers via Email, Hacker News and Reddit, Iâve updated the article with improvements and fixes. Subsequently a word of thanks to the readers for the suggestions. Weâve been using make as a build tool for one of our projects at HackerRank which is written in Go and it has been working out fairly well. In this post, Iâll point out a few features and intricacies of GN
Goã¢ããã³ãã«ã¬ã³ãã¼ãã®2ã®3æ¥ç®ã®ã¨ã³ããªã¼ã§ãã Goã§ã¯ã¨ã©ã¼å¦çã®æ¹æ³ã¨ãã¦ã¯ããªããã£ããªæ¹æ³ããæä¾ãã¦ããããä»ã®è¨èªã®ã¦ã¼ã¶ã¼ããããã®ããã®è¨ããã¦ãã¾ãããGo2ã§ãããæ¹åããããããããã¼ã¶ã«åéã§ããããæè¦ãåã£ã¦ã¯äºè»¢ä¸è»¢ã¿ãããªæãã§ãGo 1.13ã§ã¯ã ãã¶ãã¨ãªããæãã«æ©è½æ¡å¼µããã¾ãããåºæ¬çãªæ¹åæ§ã¨ãã¦ã¯github.com/pkg/errorsããå°ãæ©è½ãåãè¾¼ãã æãã§ãã ãã§ã«ãæ°å¤ãã®ã¨ã³ããªã¼ãããã¬ã¼ã³ãã¼ã·ã§ã³ããã§Go 1.13ã®å©ç¨è è¦ç¹ã§ã®errorsã®å¤æ´ç¹ã«ã¤ãã¦ã¯è§¦ãããã¦ãã¾ããã®ã§è©³ããã¯ãã¡ããã覧ãã ããããµããªã¼ã¨ãã¦ã¯ä¸è«ãã®ããã±ã¼ã¸ã§åºã¦ãã詳細ãªã¨ã©ã¼ãã©ãããã¦æ±ãããã®ä¾¿å©ãªæ©æ§ããããã追å ãããæãã§ãã ãããã§ã¯ä¸»ã«ã¢ããªã±ã¼ã·ã§ã³ã³ã¼ãã®å®è£ è ã¨ãããã©ã¤ãã©ãªã®å©ç¨è åãã®èª¬æã
Proverbs from @rob_pike's inspiring talk at Gopherfest SV 2015 (video). The Gopher character is based on the Go mascot designed by Renée French and copyrighted under the Creative Commons Attribution 3.0 license. These proverbs are the basis of a talk by Rob Pike and the list may be updated when he next gives the talk. Please read the contribution guidelines before opening an issue to nominate a ne
Flat Application Structure in Go Rather than spending time trying to figure out how to break code into packages, an app with a flat structure would just place all of the .go files in a single package. A flat application structure is what almost everyone begins with when diving into Go. Every program in the Go tour, most exercises in Gophercises, and many others early Go programs donât get broken i
Tyler Bui-Palsulich and Eno Compton 19 March 2019 Introduction This post is part 1 in a series. Part 1 â Using Go Modules (this post) Part 2 â Migrating To Go Modules Part 3 â Publishing Go Modules Part 4 â Go Modules: v2 and Beyond Part 5 â Keeping Your Modules Compatible Note: For documentation on managing dependencies with modules, see Managing dependencies. Go 1.11 and 1.12 include preliminary
ã¯ããã« ä»å¹´ã® 8 æã«ãªãªã¼ã¹ãäºå®ããã¦ãã Go 1.13 ã§ã¯ãGo 1.11 ã§å°å ¥ããã Go modules ã«å ããGo module proxy ã¨ãã£ãæ°ããã¨ã³ã·ã¹ãã ãç»å ´ãã¾ãã ããã§ããããã Go modules ã¯ä½ãè¡ã£ã¦ããã®ãããä½ãã§ããã®ããã©ããã£ãè¦ç´ ã§æ§æããã¦ããã®ããç´¹ä»ãã¾ãã ã¾ããå¤ã Go ãã¼ã¸ã§ã³ãã Go 1.13 ã¸ã¢ãããã¼ãããå ´åãã dep ã Glide ã¨ãã£ããã³ããªã³ã°ãã¼ã«ãã Go modules ã¸ç§»è¡ããéã®æ¸å¿µç¹ãä½µãã¦ç´¹ä»ãã¾ãã å æ¥çºè¡¨ãã "Go Modules and Proxy Walkthrough" ã¯ãã®ãã¹ãããã¼ã¹ã«ãªã£ã¦ãã¾ãã TL;DR ãªäººã¯ã¹ã©ã¤ããè¦ãã®ãããããã§ãã speakerdeck.com Go Modules Go modules ã¨ããä»çµã¿ã¯
ä»ã®è¨èªã«ãªãã人ããåãã¦Goãæ¸ããæã«ãããã«ãããªãã¨æã£ãé¨åã¯ã©ã®ãããªã¨ãããããã®ããé£ãããã¤ã³ãã¯ã©ãããã¨ããæ å ±ãèªåã®çµé¨ããä¼ç¤¾ã®å å¤ã®äººã«èããããã¦ã¾ã¨ãã¦ã¿ã¾ãããã¾ã ã¾ã ããããããã®ã§ãããå¤ãããã®ã§ã¾ãã¯ãããªã¨ããã§ãã³ã³ããã§éçºãããã¨ãããããã¾ãã¾ãå¢ãã¦ããã¨æããã¾ããããã®æã«ã³ã³ããã¨ã®ç¸æ§ãæ群ãªGoããããã使ãå§ãã人ãã©ãã©ãå¢ãã¦ããã¨æãã¾ãã Goã¯ç¹ã«è¨èªã®ã³ã¢ãã·ã³ãã«ã«ãä½ããå®ç¾ããã¨ãã¯ãã®ã·ã³ãã«ãªæ©è½ãçµã¿åããã¦å®ç¾ããããã¨ããã³ã³ã»ããã§ããã¤ã¾ããä»ã®è¨èªã§å®ç¾ããããã¨ã»ã§ãã¦ãããã¨ã«æ¯ã¹ã¦ãGoã¯çµã¿åããï¼ã¤ãã£ãªã ï¼ã§ã«ãã¼ããé åãåºããªãã¾ãããã®ãããã®ã¨ã£ãããã«ãªãæ å ±ãæä¾ãããã¨ããããããGoã触ã人ã«ã¨ã£ã¦ã¤ã¾ãããæ¸ãããã¨ã«ãªãã¨æãã¾ãã Go Conferen
æè¿Go Modulesã使ã£ã¦ãã¦ãã ããããã©ã¯ãã£ã¹ãå®ã¾ã£ã¦ããã®ã§ã¾ã¨ãã¦ã¿ãã å人çãªçµè« Go Modulesã¯ç©æ¥µçã«ä½¿ã£ã¦ããã°ãã å¹¾ã¤ã課é¡ã¯ãã $GOPATH ããåºãå¿ è¦ããªã $GO111MODULE ãé©å®è¨å®ããã°ãã ã©ãã次ã®Go 1.13ããã¯ã©ãã«ç½®ãããé¢ä¿ãªããªã 2ã¤ã®ã¢ã¼ã $GOPATH/src ã«ããã¸ã§ã¯ããç½®ãã¦ããã¨ãä»(Go 1.12)ã®æ¨æºåä½ã¯GOPATHã¢ã¼ãã«ãªããããã¯ã$GOPATH/src 以ä¸ãããµã¼ããã¼ãã£ããã±ã¼ã¸ãèªã¿è¾¼ãããã¾ã§ã®Goã¨åæ§ã®åä½ã«ãªãã¨ãããã¨ã ãã以å¤ã®å ´æã§ã¯ go mod ã³ãã³ãã使ã£ã¦Go Modulesãå©ç¨ãããã¨ãã§ããããããmodule-awareã¢ã¼ãã¨ãããgo.mod 㨠go.sum ã使ã£ã¦ä¾åã©ã¤ãã©ãªã管çããæ¹å¼ã«ãªãããããã®ãã¡ã¤ã«ã¯go m
ç°¡åãªãã£ããããã°ã©ã ã¯ããããã¯ã¼ã¯ããã°ã©ãã³ã°ç¨ã®ãã¬ã¼ã ã¯ã¼ã¯ã§ã¯å®çªã®ãµã³ãã«ããã°ã©ã ã§ãã echo ãµã¼ãã¼ã Hello World ã¨ãããªãããã£ãã㯠FizzBuzz ã¨ãã£ãã¨ããã§ãããã ã¨ããããåãã ãã®ãã£ãããªãã ãã§ãããã«ä½ããããã«ãªãã¾ãããã¾ããã«ãã£ãããä½ããã¨ã§ã ãããã¯ã¼ã¯ããã°ã©ãã³ã°ã§èããªãã¨ãããªãç¹ãã¨ã©ã¼å¦çã®éè¦ãªåºç¤ãå¦ã¶ãã¨ãã§ãã¾ãã ã¨ãããã¨ã§ã Go ã§ã·ã³ãã«ãªãã£ãããå®è£ ãã¦ã¿ã¾ããã (ã½ã¼ã¹ã³ã¼ã) 以éãä½ãèãã¦ã©ãããè¨è¨ãæ¡ç¨ããã®ãã解説ãã¦ããã¾ãã èæ ®ãã¹ããã¤ã³ã ç¹å®ã®ã¯ã©ã¤ã¢ã³ãã¸ã®éä¿¡ã«é·æéå¾ ããããå ´åã«ãä»ã®ã¯ã©ã¤ã¢ã³ãã¸ã®éä¿¡ãé ããªãããã«ããã ã¯ã©ã¤ã¢ã³ããåæããã®ã¯ã (1)ã«ã¼ã å´ãã kick ããå ´å, (2)åä¿¡ã¨ã©ã¼, (3)éä¿¡ã¨ã©ã¼ ã®3
ããã«ã¡ã¯ãã¾ã¡ããã®å·¥è¤ã§ãã ã¾ã¡ããã§ã¯éçºãã¬ã¼ã ã¯ã¼ã¯ã« Rails ãæ¡ç¨ãã¦ãã¾ãããæè¿ã®æ°è¦æ¡ä»¶ã§ã¯ Go è¨èªãæ¡ç¨ãã¦ã¿ã¦ãã¾ãããã®è¨äºã§ã¯ãGo ã§éçºãå§ããã«ããã£ã¦è¡ã£ãã©ã¤ãã©ãªé¸å®ã®ä¸èº«ãç´¹ä»ãããã¨æãã¾ãã é¸å®ã«ããã£ã¦ã¯ãawesome-go ã Qiita ãªã©ã®è¨äºãåèã«ãã¾ããã ModulesGo 1.11 ãã Go modules ãå°å ¥ãããã¨ã®ãã¨ã§ãç´ ç´ã« Go modules ãå©ç¨ãããã¨ã«ãã¾ãããç¹ã«ããããã¨ããªãå©ç¨ãã§ãã¦ãã¾ãã Web Application FrameworkgRPC + grpc-gateway or grpc-web ã»https://github.com/grpc/grpc-go ã»ðproto ã§ã¹ãã¼ãé§åéçºãå¯è½ ã»ð ââï¸REST API ãæä¾ããå ´å㯠grpc-ga
YAPC::Tokyo 2019 ã§çºè¡¨ããå 容ã«ãªãã¾ã
gRPC-WEB ã GA ã¨ãªã£ãããããæã ã®çæ´»ã«ã©ã®ãããªå¤åãããããã®ãã«ã¤ãã¦èããã å¾æ¥ã® gRPC ã®èª²é¡ gRPC 㯠google ãå ¬éãã¦ãã RPC æ¹å¼ã§ãããjava, golang ãªã©ã®è¨èªã§å©ç¨å¯è½ã«ãªã£ã¦ããã gRPC 㯠protocol buffers over HTTP/2 ãåºæ¬ã¨ãã¦ãããããéä¿¡ã multiplexing ãããããschema å®ç¾©ããã£ã¡ããããã®ã§ã¯ã©ã¤ã¢ã³ãå´ã¨ã®ã³ãã¥ãã±ã¼ã·ã§ã³ãããããã ä¸æ¹ãprotocol buffers ã¯binary ã§ããããã«binaryã®åæ±ãè¦æ㪠Browser JavaScript ããã®ã¢ã¯ã»ã¹ãé£ããã¨ããåé¡ããã£ãã grpc-gateway grpc-gateway ã¨ããå®è£ ããã£ã¦ããããå©ç¨ããã° Browser JavaScript ããã®ã¢ã¯ã»ã¹
Dec 10, 2018 å°ãåã«ãGoogleããWireã¨ããDIãã¼ã«ããªãªã¼ã¹ãããããã®ãã¼ã«ã¯å ã Go Cloudã®å é¨ã§ä½¿ããã¦ãããã®ã§ãæ±ç¨çãªãã¼ã«ã¨ãã¦åãåºããã®ã ããã ããã®ãã¼ã«ã®ç¹å¾´ã¯ä¾åã°ã©ãã®è§£æ±ºãã³ã¼ãçæã«ãã£ã¦è¡ãããã¨ããç¹ã§ããªãã¬ã¯ã·ã§ã³ã使ã£ãåçãªDIã¨æ¯ã¹ãã¨ã¨ã©ã¼ãã³ã³ãã¤ã«æã«æ¤åºã§ããã¨ããã¢ããã³ãã¼ã¸ãããã ã¨ããã§ãThe Go Blogã®Compile-time Dependency Injection With Go Cloudâs Wireã«ããã¨ãã³ã¼ãçæã«ããDIã¨ããã¢ã¤ãã£ã¢ã¯Javaã®Daggerã«ã¤ã³ã¹ãã¤ã¢ããããã®ããããèªåã以åãDaggerã«ã¤ã³ã¹ãã¤ã¢ããã¦DIKitã¨ããSwiftã®ã©ã¤ãã©ãªãéçºãããã¨ããããDIKitã¯ä»ãiOSã¢ããªã®éçºã§ä½¿ã£ã¦ãã¦çç£æ§ã«è²¢ç®ãã¦ããå®æãããã
5å¹´åã«è²·ã£ããJava並è¡å¦çããã°ã©ãã³ã° âãã®ãåºç¤ãã¨ãææ°APIãã究ããâããããããèªãã ãè²·ã£ãé ã«ã¯ Perl ãã·ã³ãã«ãª JavaScript ã°ããæ¸ãã¦ããã®ã§ä¸¦è¡ããã°ã©ãã³ã°ãªãã¦ã»ã¨ãã©æ°ã«ãããã¨ããªããå®æããªãã¦èªãã®ãéä¸ã§æ¢ã¾ã£ã¦ãã¾ã£ã¦ããæ¬ã§ã家ãæé¤ãã¦ããã¨ãã«è¦ã¤ãããã®ããã®å¾ã趣å³ã§ Android ã¢ããªãæ¸ããªã© Java ã«è§¦ããæ©ä¼ã¯ãã£ãããã©ãããããã AsyncTask ã使ããããã§ããã«ãã¹ã¬ãããå¼·ãæèãã¦ã³ã¼ããæ¸ããã¨ããªãã£ãã Java並è¡å¦çããã°ã©ãã³ã° âãã®ãåºç¤ãã¨ãææ°APIãã究ããâ ä½è : Brian Goetz,Joshua Bloch,Doug Leaåºç社/ã¡ã¼ã«ã¼: ã½ãããã³ã¯ã¯ãªã¨ã¤ãã£ãçºå£²æ¥: 2006/11/22ã¡ãã£ã¢: åè¡æ¬è³¼å ¥: 30人 ã¯ãªãã¯: 442å
ã¯ããã« ã¾ãå§ãã«è¨ã£ã¦ãããªããã°ãªãã¾ããã gocode ä»ã¾ã§æ¬å½ã«ãããã¨ã ãã®è¨äºã¯ãGo è¨èªæ´10å¹´ã«ãªãåãããã¾ã§æç¨ãã¦ãã Go è¨èªã®ã³ã¼ãè£å®ã½ããã¦ã§ã¢ gocode ã®æ´å²ã¨å績ãããã¦ä»ãgocode èªãããã®å½¹å²ãçµãããã¨ãã¦ãã姿ããã²çããã«ç¥ã£ã¦é ãããã¨ããæããã Go Advent Calendar 2018 ã®è¨äºã¨ãã¦èµ·ããã¾ããããã®è¨äºã§ã¯ gocode ãæ©ãã§ããæ´å²ã¨è¦æ©ãå°ãã§ãçããã«åããæ§ã«è§£èª¬ããã¦é ãã¤ã¤ãããã¦æ¬¡ã«ãã£ã¦ãã Go è¨èªã®ã³ã¼ãè£å®ã®æªæ¥ã«ã¤ãã¦ãç´¹ä»ãããã¨æãã¾ããVim ã«ã¤ãã¦å¤ãã«æ¸ããã¦ãã¾ãããVisual Studio Code ã§ã® Go éçºã«ãå½±é¿ãã話ã§ãã gocode ã¨ã¯ gocode 㯠nsf æ°ãéçºãã Go è¨èªã®ã³ã¼ãè£å®ãµã¼ãã§ãã GitHub
ããã«ã¡ã¯ãã¡ã«ãã¤ã®ã©ã¤ãã©ãªã¨ãä½ãããããã® @vvakame ã§ãã ã¤ã³ãã©ç·¨ã«ç¶ãGraphQLï¼APIï¼ç·¨ã§ãã MTC2018ã®ã«ã³ãã¡ã¬ã³ã¹LPã®GraphQLã«ããAPIå®è£ ã«ã¤ãã¦ç´¹ä»ãã¦ããã¾ãã ãªãã¸ããªããã¡ãã§å ¬éãã¦ããã®ã§æ°ãåãããè¦ã¦ãã£ã¦ãã ããã Playgroundããã£ã¦ããã°ããã¯çãã¦ããç¶æ ã®ã¾ã¾ã ã¨æãã¾ãã GraphQLãã£ã¦ãã çè ã¯æè¿GraphQLãç¹ã«Goè¨èªç¨ã®ã©ã¤ãã©ãªã§ããgqlgenã«å ¥ãè¾¼ãã§ãã¾ãã ããã§ãAPIã®å®è£ ã«GraphQLã使ããã¨ã«ããgqlgenã®ä½¿ãæ¹ã社å ã«ç¤ºããã¤ãã§ã¯ã©ã¤ã¢ã³ãå´ã®äººãã¡ã«GraphQLã®è¯ããä½æãã¦ããããï¼ã¨ããææã§ãã MTCã§ãCSToolãgqlgenã§ãã£ã¦ããï¼ã¨ãã話é¡ãããã¾ãããï¼ â¦ã¨æã£ããã¢ããªã®äººãã¡ã¯Flutterãé¸ã³ãDartã«ã¯
ã©ã³ãã³ã°
ã©ã³ãã³ã°
ã©ã³ãã³ã°
ãªãªã¼ã¹ãé害æ å ±ãªã©ã®ãµã¼ãã¹ã®ãç¥ãã
ææ°ã®äººæ°ã¨ã³ããªã¼ã®é ä¿¡
å¦çãå®è¡ä¸ã§ã
j次ã®ããã¯ãã¼ã¯
kåã®ããã¯ãã¼ã¯
lãã¨ã§èªã
eã³ã¡ã³ãä¸è¦§ãéã
oãã¼ã¸ãéã
{{#tags}}- {{label}}
{{/tags}}