-- ·|­û / µù¥U -- ¡@
¡@±b¸¹¡G
¡@±K½X¡G
¡@ | µù¥U | §Ñ°O±K½X
3/26 ·s®Ñ¨ì¡I 3/19 ·s®Ñ¨ì¡I 3/14 ·s®Ñ¨ì¡I 12/12 ·s®Ñ¨ì¡I
ÁʮѬyµ{¡EQ & A¡E¯¸°È¯d¨¥ª©¡E«ÈªA«H½c
¢x 3ds Max¢x Maya¢x Rhino¢x After Effects¢x SketchUp¢x ZBrush¢x Painter¢x Unity¢x
¢x PhotoShop¢x AutoCad¢x MasterCam¢x SolidWorks¢x Creo¢x UG¢x Revit¢x Nuke¢x
¢x C#¢x C¢x C++¢x Java¢x ¹CÀ¸µ{¦¡¢x Linux¢x ´O¤J¦¡¢x PLC¢x FPGA¢x Matlab¢x
¢x Àb«È¢x ¸ê®Æ®w¢x ·j¯Á¤ÞÀº¢x ¼v¹³³B²z¢x Fluent¢x VR+AR¢x ANSYS¢x ²`«×¾Ç²ß¢x
¢x ³æ´¹¤ù¢x AVR¢x OpenGL¢x Arduino¢x Raspberry Pi¢x ¹q¸ô³]­p¢x Cadence¢x Protel¢x
¢x Hadoop¢x Python¢x Stm32¢x Cortex¢x Labview¢x ¤â¾÷µ{¦¡¢x Android¢x iPhone¢x
¥i¬d®Ñ¦W,§@ªÌ,ISBN,3dwoo®Ñ¸¹
¸Ô²Ó®ÑÄy¤ÀÃþ

Go·LªA°È¹ê¾Ô

( ²Åé ¦r)
§@ªÌ¡G¼Bª÷«G¡@µÛÃþ§O¡G1. -> µ{¦¡³]­p -> Go»y¨¥
ĶªÌ¡G
¥Xª©ªÀ¡G¾÷±ñ¤u·~¥Xª©ªÀGo·LªA°È¹ê¾Ô 3dWoo®Ñ¸¹¡G 54029
¸ß°Ý®ÑÄy½Ð»¡¥X¦¹®Ñ¸¹¡I

¡i¯Ê®Ñ¡j
NT°â»ù¡G 445 ¤¸

¥Xª©¤é¡G2/1/2021
­¶¼Æ¡G380
¥úºÐ¼Æ¡G0
¯¸ªø±ÀÂË¡G
¦L¨ê¡G¶Â¥Õ¦L¨ê»y¨t¡G ( ²Åé ª© )
¥[¤JÁʪ«¨® ¢x¥[¨ì§Úªº³Ì·R
(½Ð¥ýµn¤J·|­û)
ISBN¡G9787111674122
§@ªÌ§Ç¡@|¡@ĶªÌ§Ç¡@|¡@«e¨¥¡@|¡@¤º®e²¤¶¡@|¡@¥Ø¿ý¡@|¡@§Ç
(²Åé®Ñ¤W©Ò­z¤§¤U¸ü³sµ²¯Ó®É¶O¥\, ®¤¤£¾A¥Î¦b¥xÆW, ­YŪªÌ»Ý­n½Ð¦Û¦æ¹Á¸Õ, ®¤¤£«OÃÒ)
§@ªÌ§Ç¡G

ĶªÌ§Ç¡G

«e¨¥¡G

·í¤µ¥@¬É¡A³n¥óªº³W¼Ò¶V¨Ó¶V¤j¡B¥\¯à¶V¨Ó¶V´_Âø¡A¬ãµo¹Î¶¤ªº³W¼Ò¤]Åܱo¶V¨Ó¶V¤j¡A¹Bºû¤H­û©M¬ãµo¤H­û¤§¶¡ªº¤u§@¥æ¶°¶V¨Ó¶V¦h¡C¦b³o­Ó¤j«e´£¤U¡A·LªA°È¼Ò¦¡¦b¤j«¬¶µ¥Ø¤¤¶}©l­·Ãû¡C

¥»®Ñ¹ï¨Ï¥ÎGo»y¨¥¶i¦æ·LªA°È¶}µo°µ¤F¥þ­±²Ó­Pªº¤¶²Ð¡A¥]¬A·LªA°Èªº°ò¦ª¾ÃÑ¡B·LªA°Èªº©î¤À¡B·LªA°È¶iµ{¶¡³q«H¡]IPC¡^¡B·LªA°Èªº¤À¥¬¦¡¨Æ°ÈºÞ²z¡B»â°ìÅX°Ê³]­p¡]DDD¡^¡B·LªA°È¤¤ªº´ú¸Õ¡B°ò¤_ES-CQRSªº·LªA°È¹ê½î¡B·LªA°È¥Í²£Àô¹Ò©M«ùÄò¥æ¥Iµ¥¡C¥»®Ñ¤ñ¸û¥þ­±¦a¹ï·LªA°È¶i¦æ¤F¤¶²Ð¡A¦Ó¥B¹ï¤_¨C­Óª¾ÃÑÂI³£µ¹¥X¤F§Þ³N¹ê²{©M¹ê¨Ò¥N½X¡A¤ñ¦p·LªA°È¶iµ{¶¡³q«H³¡¤À­«ÂI¤¶²Ð¤FgRPC¡AES-CQRS³¡¤À«hµ¹¥X¤FGo»y¨¥ªº¨ãÅé¹ê²{¡C¦b¤¶²Ð§¹ª¾ÃÑÂI¤§¦Z¡A¥»®Ñµ¹¥X¤F¤@¨Çºî¦X©Êªº®×¨Ò¡A¤ñ¦p²Ä10³¹¡B²Ä22³¹µ¥¡A¦}³q¹LGitHub´£¨Ñ¤F§¹¾ãªº¥i¹B¦æªº¥N½X¡A¥iÀ°§U¦³°ò¥»Go»y¨¥»yªkª¾ÃѪºÅªªÌºÉ§Ö¤F¸Ñ¡B´x´¤·LªA°È¼Ò¦¡¡C

¤£¦Pªº»y¨¥¹ï¤_·LªA°Èªº¹ê²{³£¤£¬Û¦P¡C¬°¤FÅýŪªÌ§ó²`¤J¦a¤F¸ÑGo»y¨¥ªº·LªA°È¹ê²{¼Ò¦¡¡A¥»®Ñ«e6³¹²`¤J¤¶²Ð¤FGo»y¨¥ªº»yªkª¾ÃÑ¡A¥]¬AGo»y¨¥µ{§Ç°ò¦¡A°ò¥»¼Æ¾ÚÃþ«¬¡A¦r²Å¦ê»P´_¦X¼Æ¾ÚÃþ«¬¡A¨ç¼Æ¡B¤èªk¡B±µ¤f©M¤Ï®g¡A¦}µo½sµ{¡A¥]©M¥N½X´ú¸Õµ¥¡C¹ï¤_¤w¸g¼ô½m´x´¤Go»y¨¥ªºÅªªÌ¨Ó»¡¡A«e6³¹¥i¥H²¤¹L¡A©ÎªÌ§Ö³tÂsÄý¤@¹M¡C

¥»®Ñ¥Øªº

¥»®Ñ¬O¬°Go»y¨¥¶}µoªÌ©M§Æ±æ¶i¤JGo·LªA°È¶}µo»â°ìªºÅªªÌ·Ç³Æªº¡A¥¦¤£¬O¤@¥»¶È¤¶²Ð·LªA°Èªº®Ñ¡A¦³¤@¥bªº½g´T¬O¦b¤¶²ÐGo»y¨¥ªºª¾ÃÑ¡A©Ò¥H¯S§O¾A¦X¦³Java¡BPythonµ¥¨ä¥L½sµ{°ò¦¦Ó§Æ±æÂà¨ìGo»y¨¥½sµ{ªºÅªªÌ¾\Ū¡C

¥»®Ñ°£¤F¸Ô²Ó¦a¤¶²Ð¬ÛÀ³ªº²z½×ª¾ÃÑ¥H¥~¡AÁÙ°t³Æ¤F¥Ü¨Ò¥N½X¡A©Ò¦³¥N½X§¡¤w¦bGitHub¤W¶}·½¡AŪªÌ¥i¥HÃäŪ®ÑÃä¹ê½î¡C§Æ±æ³q¹L³oºØ¤è¦¡Åý§ó¦hªº¤uµ{®v¨ü¯q¡AÀ°§U¥L­Ì±N©Ò¾Çª¾ÃѺɧÖÂà¤Æ¬°¥Í²£¤O¡C

¥»®Ñ¤º®e

¥»®Ñ¤À¬°¥|­Ó³¡¤À¡A§¹¾ã²[»\¤F±qGo»y¨¥¨ì·LªA°Èªº¦U­Ó¤è­±¡C¨C¤@³¡¤À³£´£¨Ñ¤F¥Ü¨Ò¥N½X©Î¹ê¾Ô¶µ¥Ø¡AŪªÌ¥i¥HÃä¾Ç²ßÃä°Ê¤â½m²ß¡C

²Ä¤@³¡¤À¬OGo»y¨¥°ò¦¡]²Ä1¡ã7³¹¡^¡A¥]¬AGo»y¨¥ªº°ò¦»yªk¡BGo»y¨¥ªº°ò¥»¯S©Ê©MGo»y¨¥ªº¹ê¾Ô¶µ¥Ø¡CGo»y¨¥ªº°ò¦»yªk³¡¤À¥]¬AÅܶq¡B°ò¥»¼Æ¾ÚÃþ«¬¡B©U§£¦^¦¬¾÷¨î¡B¦r²Å¦ê©M´_¦XÃþ«¬µ¥¡C¹ï¤_¦r²Å¦êªº¤¶²Ð¡A­«ÂIÁ¿¸Ñ¤FGo»y¨¥¦r²Å¦êªº¯SÂI¤Î¦sÀx¤è¦¡¡C¥t¥~¡A²Ä¤@³¡¤ÀÁÙ¤¶²Ð¤FGo»y¨¥¨½ªºslice¦p¦ó¦sÀx¡B¦p¦ó¾Þ§@¡CGo»y¨¥¹ïsliceªº¨Ï¥Î«D±`ÀWÁc¡A¦Óstruct¬O¦bGo»y¨¥¨S¦³Ãþªº±¡ªp¤U¹ï«Ê¸Ëªº¨ãÅéÅé²{¡Astruct¬O¼Æ¾ÚÃþ«¬ªº®Ö¤ß¡CGo»y¨¥ªº°ò¥»¯S©Ê³¡¤À¥]¬AGo»y¨¥ªº°ò¥»¨ç¼Æ¡B¤èªk¡B±µ¤f¡B¤Ï®g¤Î¦}µoµ¥¤º®e¡CGo»y¨¥¨S¦³Ãþ¡A¥¦¦p¦ó¹ê²{­±¦V¹ï¶Hªº½Ñ¦h¯S©Ê©O¡H¤ñ¦p«Ê¸Ë¡B¦hºAµ¥¡C¨ç¼Æ©Mgoroutine¬Ûµ²¦X¤S·|¥X²{¤°¤\±¡ªp¡HŪªÌ¾Ç²ß¥»³¡¤À¤º®e¦Z¹ïGo»y¨¥ªºÆF¬¡©Ê·|¦³©Ò²z¸Ñ¡CGo»y¨¥ªº¦}µo³q¹Lgoroutine©Mchannel¹ê²{¡A»yªk«Ü²³æ¡A¦ý²z½×ª¾Ãѻݭn²M·¡²z¸Ñ¡CGo»y¨¥ªº¹ê¾Ô¶µ¥Ø³¡¤À¥D­n¤¶²Ð¤FGo»y¨¥¦Û±aªº´ú¸Õ¤u¨ã©M¤@­Ó¹ê¾Ô¶µ¥Ø¡C³o­Ó¼ÒÀÀ¶µ¥Ø¹ï¥»³¡¤À«e­±ªºª¾ÃѶi¦æ¤FÁ`µ²©M´_²ß¡C

²Ä¤G³¡¤À¬OGo»y¨¥¶i¶¥¡]²Ä8¡ã10³¹¡^¡A¥D­n¤º®e¬OGo»y¨¥ªº¦}µo½sµ{¶i¶¥¡BGo»y¨¥ªºWeb½sµ{¥H¤Îºî¦X¹ê¾Ô¡C¦}µo½sµ{¶i¶¥¤ÎWeb½sµ{³¡¤À¤À§O¤¶²Ð¤F¥i¥H©Ó¾á°ª­t¸üªº½uµ{¦À¹ê²{¥H¤ÎGo»y¨¥¨½ªºWeb½sµ{¡CGo»y¨¥ªº¦}µo©Ê¯à«D±`±j¡A¥u­n§âgoroutine¥Î¦n¡Aµ²¦X³]­p¼Ò¦¡¡A´N¥i¥H³]­p¥XÀu¨qªº°ª¦}µoªA°È¡C¦ÓGo»y¨¥ªºWeb½sµ{´N§ó¬°¤è«K¡A¬Æ¦Ü¥u¨Ï¥Î¼Ð·Ç¼Ò¶ô´N¥i¥H¼g¥XWebµ{§Ç¡C¥t¥~¡A¥»³¡¤ÀÁÙ·|¤¶²Ð¤@­Óºî¦X®×¨Ò¡A¤£¶È¹ï²Ä¤@³¡¤À¤Î²Ä¤G³¡¤À©Ò¾Çªºª¾ÃѶi¦æÁ`µ²©M´_²ß¡A¦P®ÉÁÙ¤¶²Ð¤FWeb½sµ{±`¥Îªºgin®Ø¬[¡C

²Ä¤T³¡¤À¬O·LªA°È²z½×¡]²Ä11¡ã18³¹¡^¡A¥D­n¤º®e¥]¬A·LªA°È¼Ò¦¡ªº²z½×°ò¦¡B·LªA°Èªº¶iµ{¶¡³q«H¡B·LªA°Èªº¤À¥¬¦¡¨Æ°ÈºÞ²z¡B»â°ìÅX°Ê³]­p¡]DDD¡^¡B·LªA°È´ú¸Õ¡BDocker¤ÎES-CQRSµ¦²¤¡C¦b·LªA°È¼Ò¦¡ªº²z½×°ò¦³¡¤À¡A¸Ô²Ó¤¶²Ð¤F¦UºØ¼Ò¦¡ªººtÅÜ¡A¦}¥Bµ¹¥X¤F¨ãÅ骺¥Ü¨Ò¥N½X¡C¶iµ{¶¡³q«H³¡¤À¥D­n¤¶²Ð¤FGo»y¨¥¤¤ªº±`¥Î¶iµ{³q«H¤è¦¡¡Xprotobuf¡BgRPC©Mconsul¡A¬O·LªA°Èªº§Þ³N¤Jªù¡C¦b·LªA°Èªº¤À¥¬¦¡¨Æ°ÈºÞ²z³¡¤À¹ï¤À¥¬¦¡¨Æ°ÈºÞ²zªº¤è¦¡¶i¦æ¤F±´°Q¡A¹ï¤£¦P©î¤À¤è¦¡ªºÀu¯ÊÂI¶i¦æ¤F¹ï¤ñ¡A¨ä¤¤­«ÂI¤¶²Ð¤FSaga¡A¦}¥Bµ¹¥X¤F¥N½X¹ê²{¡C»â°ìÅX°Ê³]­p¡]DDD¡^³¡¤À¤¶²Ð¤F¨ä¦bGo»y¨¥¤¤ªº¹ê²{¡A¦}µ¹¥X¤F¬ÛÃöªº·§©À¡A¤ñ¦p»E¦X¡B»E¦Xªº¼Ò¦¡¡A¦¹¥~¡AÁÙ®i¥Ü¤F¤@­Ó¼ÒÀÀ¹ê²{¡C·LªA°È´ú¸Õ³¡¤À¤¶²Ð¤F´ú¸Õªº°ò¥»¤èªk¡A«Øijµ²¦X²Ä¤@³¡¤À¤¤Go¥N½X´ú¸Õ¶i¦æ¾\Ū¡CDocker³¡¤À­«ÂI¤¶²Ð¤FDockerªº°ò¥»­ì²z¤Î¨Ï¥Î¤èªk¡CDocker¤@¯ë¬O¥Ñ¹Bºû¤H­û¾Þ§@ªº¡A¤£¹L¤uµ{®v¤]»Ý­n¹ïDocker¦³¤@©wªº¤F¸Ñ¡A¥H«K¤_¶}µo·LªA°È¡C³Ì¦Z¡A¥»³¡¤À¤¶²Ð¤F·LªA°È¤¤ªºª¾¦Wµ¦²¤¡XES-CQRS¦bGo»y¨¥¤¤ªº¹ê²{¡C

²Ä¥|³¡¤À¬O·LªA°È¹ê¾Ô¡]²Ä19¡ã22³¹¡^¡A¥]¬A·LªA°Èªº¥Í²£Àô¹Ò¡B¤é§Ó©MºÊ±±¡B«ùÄò¥æ¥I¡B¹ê¾Ô¶µ¥Ø¡C¥Í²£Àô¹Ò³¡¤À­«ÂI¤¶²Ð¤F¥Í²£Àô¹Òªº¦w¥þ¡A¥H¤ÎÀ³¥Î¡B¹Bºû©M¥~³¡¦w¥þµ¥¤º®e¡A³o¬O¤uµ{®v¦b¹ê¾Ô¤¤¥²¶·¤F¸Ñªºª¾ÃÑ¡C¤é§Ó©MºÊ±±¬O·LªA°È¶}µo¥²¶·Ãöª`ªº¤º®e¡A¤@¥¹·LªA°È³B¤_¹B¦æª¬ºA¡A¤uµ{®v´N¥i¥H³q¹L¤é§Ó©MºÊ±±¤u¨ã¨Ó¶EÂ_ªA°È¡C«ùÄò¥æ¥I¡A©ÎªÌ»¡DevOps¡A¬O·LªA°È¶}µo©M³¡¸p¹Lµ{¤¤¥²¤£¥i¤Öªºª¾ÃÑ»â°ì¡A¥¦¬O¤@­Ó«D±`¤jªº¸ÜÃD¡A¥»®Ñ¯¸¦bGo»y¨¥ªº¨¤«×¹ï¨ä¶i¦æ¤F¤¶²Ð¡A¦}µ¹¥X¤F¹ê½î®×¨Ò¡A¥Øªº¬OÅý¶}µo¤H­û§ó¦n¦a²z¸Ñ«ùÄò¥æ¥I¡C¹ê¾Ô¶µ¥Ø¨Ï¥ÎGo kit®Ø¬[¶i¦æ¼ÒÀÀ¡CGo kit®Ø¬[¬OGo»y¨¥»â°ì«D±`µÛ¦Wªº®Ø¬[¡A©Ò¥H¥»®Ñ¿ï¾Üµ²¦X¦¹®Ø¬[¹ï«e­±¤¶²Ðªºª¾ÃѶi¦æ¹ê¾ÔÀ³¥Î¡C

¥»®Ñ¾A¦XªºÅªªÌ

¥»®Ñ¾A¦X¦³¨ä¥L»y¨¥½sµ{¸gÅç©ÎªÌGo½sµ{°ò¦ªºÅªªÌ¾\Ū¡A¦pªG§¹¥þ¨S¦³½sµ{°ò¦¡A«Øij­º¥ý¾\ŪD&KªºThe Go Programming Language¡]¡mGoµ{§Ç³]­p»y¨¥¡n¡^¡C

¥»®Ñ¦³§U¤_¦³¨ä¥L»y¨¥½sµ{°ò¦¡]¤ñ¦pJava¡BPython¡BC++¡^ªº¤uµ{®vÂà¨ìGo»y¨¥ªº·LªA°È¹ê²{¶µ¥Ø¤¤¡C

¦¹¥~¡A¹ï¤_¹ïGo»y¨¥©M·LªA°È·P¿³½ìªº¦bŪ¤j¾Ç¥Í¨Ó»¡¡A¥»®Ñ¤]¬O¤£¿ùªº¿ï¾Ü¡A®Ñ¤¤Â×´Iªº®×¨Ò¤£¶È¯àÀ°§U¾Ç¥Í¾Ç²ßª¾ÃÑ¡A¤]¯àÅý¾Ç¥Í´£«e¤F¸Ñ¤uµ{¶µ¥Øªº¥N½X¬[ºc¡B´ú¸Õ¤u¨ãµ¥¡C

¥N½X¬ù©w³W­S

¬°¤FŪªÌ¾\Ū¤è«K¡A¯S³W©w®Ñ¤¤ªº¥N½X®æ¦¡¦p¤U¡G

book/chapter0/sample.go

1. package main

2. import (

3. "fmt"

4. )

5. func main() {

6. fmt.Println("Go¥N½X¥Ü¨Ò!")

7. }

1¡^¥N½X¬q¤W¤è·|µ¹¥X·½½Xªº¨ãÅé¸ô®|¡AŪªÌ¥i¥H°Ñ¦Ò½m²ß¡A³o¼Ë¤]¤è«KŪªÌ¦b¥»®Ñ°t®Mªº·½½X¤¤¬d§ä¹ïÀ³ªº·½½X¡C

2¡^¬°¤F¸ÑÄÀ¤è«K¡A¥N½X¤j³£´£¨Ñ¤F¦æ¸¹¡A¦pªG»Ý­n¯S§O»¡©ú¡A·|¥H¦æ¸¹¬°¯Á¤Þ¶i¦æ»¡©ú¡C

3¡^¦pªG¦]¬°±Æª©°ÝÃD¥N½X¥X²{¤F´«¦æ¡A¦æ¸¹¤£·|¼W¥[¡C´«¨¥¤§¡A¨C­Ó¦æ¸¹ÄY®æ¹ïÀ³½s¿è¾¹¤ºªº¤@¦æ¥N½X¡C

1. $go version

2. go version go1.12.6 darwin/amd64

1¡^©R¥O¦æªº¿é¤J¤]¬O±a¦³¦æ¸¹ªº¡C

2¡^©R¥O¦æ²Î¤@¥H$¶}©l¡A¤£§t¦³$ªº¤@¯ë¬O©R¥O°õ¦æµ²ªG¡C

¹ï¤_¯S§O­«­nªº¦a¤è¡Aµ§ªÌ·|³æ¿Wµ¹¥X»¡©ú¡]¦³¡§»¡©ú¡¨©Î¡§ª`·N¡¨ªº´£¥Ü¤º®e¡^¡C

§ó¦h«H®§

¬°¤F§ó¦n¦a¨Ï¥Î¥»®Ñ¡A«ØijŪªÌ·Ç³Æ¤@»O¹q¸£¡A°t³ÆWindows¡BMacOS©ÎªÌLinux¾Þ§@¨t²Î§¡¥i¡C¥»®Ñ«e¨â³¡¤Àªº¥N½Xµ§ªÌ¦bMacÀô¹Ò¤¤´ú¸Õ¹L¡A¨ä¥L¾Þ§@¨t²Î¤U¨Ï¥Î³o¨Ç¥N½X¤]¨S¦³°ÝÃD¡C®Ñ¤¤¦Z­±¨â³¡¤Àªº·½½X§¡¬Oµ§ªÌ¦bMac¹q¸£¤W¶}µo¡B¦bCentOS7.6¨t²Î¤W´ú¸Õ¹Lªº¡A¬°ÁקK¤£¥²­nªºbug¡A«ØijŪªÌªº·LªA°ÈÀô¹Ò¤]¨Ï¥ÎCentOS7.6¨t²Î¡C
¤º®e²¤¶¡G

ÀHµÛ¤¬Ápºô©M³n¥óªº¤j«¬¤Æ¡B´_Âø¤Æ¡A¬ãµo¹Î¶¤ªº³W¼Ò¶V¨Ó¶V¤j¡A¹Bºû©M¬ãµo¤H­ûªº¤u§@¥æ¶°¶V¨Ó¶V¦h¡A³n¥óªº­¡¥N³t«×¤]¶V¨Ó¶V§Ö¡C¦b³o­Ó¤j«e´£¤U¡A·LªA°È¼Ò¦¡¦b¤j«¬¶µ¥Ø¤¤¶}©l­·Ãû¡CGo»y¨¥¦]¨ä²¼äªº»yªk¡B°ª®Äªº¶}µo®Ä²v©MÀu¨qªº©Ê¯àµ¥½Ñ¦h¤ÑµMÀu¶Õ¼sªxÀ³¥Î¤_¤¬Ápºô¤½¥q¡C¶V¨Ó¶V¦hªº°ª¦}µoÀ³¥Î¨Ï¥ÎGo»y¨¥¶i¦æ¶}µo¡C¥»®Ñ¥H¹ê½îªº¨¤«×¥þ¤è¦ì¤¶²Ð¦p¦ó³q¹LGo»y¨¥¹ê²{·LªA°È¼Ò¦¡¡C



¥»®Ñªº¥D­n¤º®e©M¯S¦â

­±¦V©Ò¦³¤uµ{®v¡A§Y«K¬O¨S¦³Go»y¨¥°ò¦ªºJava¡BPHP¡BPython¤uµ{®v¤]¥i¥Hª½±µ¤W¤â¨Ï¥Î¡A®Ñ¤¤¹ïGo»y¨¥¶i¦æ¤F¥þ­±ºë·Òªº¤¶²Ð¡C¡§µ¹¤p¥ÕªºGo»y¨¥·LªA°È¹ê¾Ô®ÑÄy¡¨¬O¥»®Ñ³e¬ï©l²×ªº¼g§@¥Øªº¡A®Ñ¤¤¥N½Xª`ÄÀ¸Ô²Ó¡B²z½×¸ÑÄÀ§Î¶H¡C

¹ï¤_·LªA°È¼Ò¦¡¡A®Ñ¤¤¦}¥¼ª½±µµ¹¥X®Ø¬[¡A¦Ó¬O±q²z½×¼h­±¤J¤â¶i¦æ¤F±´°Q¡AÅýŪªÌ¡§ª¾¨äµM¡Aª¾¨ä©Ò¥HµM¡¨¡C

¥]§t¤j¶q®×¨Ò¡A¹ï¤_­«­nªº¤º®e³£µ¹¥X¤F®×¨Ò¤Î¬ÛÃö¤ÀªR¡A¥B¨C¤@³¡¤À³£¦³¤@­Ó®×¨Ò±q0¶}©l¤ÀªR¡Bºc«Ø¡A«ü¾ÉŪªÌ±q¨Ï¥Îªº¨¤«×¥h«ä¦Ò¦p¦ó¬¡¾Ç¬¡¥Î¡A¦}¦bGitHub¤W´£¨Ñ¤F¥i¹B¦æªº§¹¾ã¥N½X¡C

¥»®Ñ¦Û©l¦Ü²×³£³ò¶Go»y¨¥¡B·LªA°È©M¹ê¾Ô³o¤T¤j¯S¦â¡A¥þ®Ñ±qGo»y¨¥ªº°ò¦¤Þ¤J¡A¨ìGo»y¨¥ªº¶i¶¥¡B·LªA°Èªº²z½×¡A¦A¨ì³Ì¦Zªº·LªA°È¹ê¾Ô¡A³£µ¹¥X¤F§Þ³N¹ê²{©M¹ê¨Ò¥N½X¡AÅý¦³½sµ{°ò¦ªºÅªªÌ¥i¥H²`¤J²L¥X¦a¾Ç²ß©M¹ê½î¡C



¥»®Ñ°w¹ïGo»y¨¥¶i¦æ·LªA°È¶}µo°µ¤F¥þ­±²Ó­Pªº¤¶²Ð¡A®Ñ¤¤¤º®e¥]¬A¥|¤j³¡¤À¡C

²Ä¤@³¡¤À¬°Go»y¨¥°ò¦¡]²Ä1¡ã7³¹¡^¡A¥]¬AGo»y¨¥°ò¦»yªk¡BGo»y¨¥°ò¥»¯S©Ê©MGo»y¨¥¹ê¾Ô¶µ¥Øµ¥¤º®e¡C

²Ä¤G³¡¤À¬°Go»y¨¥¶i¶¥¡]²Ä8¡ã10³¹¡^¡A¥D­n¤¶²ÐGo»y¨¥ªº¦}µo½sµ{¶i¶¥¡BGo»y¨¥Web½sµ{¥H¤Îºî¦X¹ê¾Ô¡C

²Ä¤T³¡¤À¬°·LªA°È²z½×¡]²Ä11¡ã18³¹¡^¡A¥]¬A·LªA°È¼Ò¦¡ªº²z½×°ò¦¡B·LªA°Èªº¶iµ{¶¡³q«H¡B·LªA°Èªº¤À¥¬¦¡¨Æ°ÈºÞ²z¡B»â°ìÅX°Ê³]­p¡]DDD¡^¡B·LªA°È´ú¸Õ¡BDocker¤ÎES-CQRSµ¦²¤¡C¨ä¤¤¡A·LªA°È¶iµ{¶¡³q«H­«ÂI¤¶²Ð¤FgRPC¡AES-CQRSµ¦²¤³¡¤Àµ¹¥X¤FGo»y¨¥ªº¹ê²{¡C

²Ä¥|³¡¤À¬°·LªA°È¹ê¾Ô¡]²Ä19¡ã22³¹¡^¡A³o¤@³¡¤À³q¹L¹ê¾Ô¶µ¥ØÁ¿¸Ñ¤F·LªA°Èªº¥Í²£Àô¹Ò¡B¤é§Ó©MºÊ±±¡B«ùÄò³¡¸pµ¥¤º®e¡C

®Ñ¤¤¨C¤@³¡¤À³£´£¨Ñ¤F¥Ü¨Ò¥N½X©Î¹ê¾Ô¶µ¥Ø¡A¨ÑŪªÌÃä¾Ç²ßÃä°Ê¤â¹ê½î¡AºÉ¶q°µ¨ìÅý¦³Go»y¨¥°ò¦ªº¤HºÉ§Ö¤F¸Ñ¡B´x´¤·LªA°È¼Ò¦¡¡C
¥Ø¿ý¡G

²Ä¤@³¡¤À¡@Go»y¨¥°ò¦
²Ä1³¹¡@Go»y¨¥µ{§Ç°ò¦ 2
1.1¡@Hello¡AWorld¡I 2
1.2¡@Åܶq¡B«ü°w¤Î½á­È 5
1.2.1¡@Åܶq©M±`¶q 5
1.2.2¡@«ü°w 8
1.2.3¡@½á­È 9
1.3¡@¥]¤Î§@¥Î°ì 10
1.4¡@¿ï¾Ü©M´`Àô 12
1.5¡@©U§£¦^¦¬ 13
1.6¡@¤pµ² 15
²Ä2³¹¡@°ò¥»¼Æ¾ÚÃþ«¬ 16
2.1¡@¾ã«¬ 17
2.1.1¡@¾ã«¬¨ú­È­S³ò 17
2.1.2¡@¹Bºâ²Å 18
2.2¡@¯BÂI«¬ 19
2.3¡@´_¼Æ©M¥¬º¸Ãþ«¬ 21
2.4¡@®æ¦¡¤Æ»¡©ú²Å 22
2.5¡@¤pµ² 22
²Ä3³¹¡@¦r²Å¦ê»P´_¦X¼Æ¾ÚÃþ«¬ 23
3.1¡@¦r²Å¦ê©M¼Æ²Õ 23
3.1.1¡@¦r²Å¦ê 24
3.1.2¡@¼Æ²Õ 26
3.2¡@slice 27
3.2.1¡@µ²ºc©w¸q 27
3.2.2¡@°ò¥»¾Þ§@ 28
3.2.3¡@append 30
3.2.4¡@copy 31
3.2.5¡@¨ä¥L 32
3.3¡@map 33
3.3.1¡@©w¸q 33
3.3.2¡@°ò¥»¾Þ§@ 33
3.4¡@struct 35
3.4.1¡@µ²ºc©w¸q 36
3.4.2¡@°ò¥»¾Þ§@ 37
3.4.3¡@²Õ¦X 38
3.5¡@JSON 40
3.6¡@¤pµ² 40
²Ä4³¹¡@¨ç¼Æ¡B¤èªk¡B±µ¤f©M¤Ï®g 41
4.1¡@¨ç¼Æ 41
4.1.1¡@¨ç¼Æªº©w¸q 41
4.1.2¡@³¬¥] 42
4.1.3¡@§@¥Î°ì 43
4.1.4¡@¦hªð¦^­È¤ÎÅܪø°Ñ¼Æ 45
4.1.5¡@deferÃöÁä¦r 46
4.2¡@¤èªk 46
4.3¡@±µ¤f 50
4.4¡@¤Ï®g 54
4.5¡@¤pµ² 57
²Ä5³¹¡@¦}µo½sµ{ 59
5.1¡@¨óµ{ 59
5.1.1¡@®Ö¤ß·§©À 60
5.1.2¡@goroutineªº°ò¥»¨Ï¥Î 60
5.1.3¡@sync.WaitGroup 62
5.2¡@³q¹D 64
5.2.1¡@channel¼g¤J¼Æ¾Ú 64
5.2.2¡@channel±µ¦¬¼Æ¾Ú 65
5.2.3¡@¥Hchannel§@¬°¨ç¼Æ°Ñ¼Æ 66
5.2.4¡@½w¦schannel 67
5.2.5¡@select 70
5.2.6¡@¶W®ÉÀˬd 71
5.3¡@pipeline 74
5.4¡@¤pµ² 76
²Ä6³¹¡@¥]©M¥N½X´ú¸Õ 77
6.1¡@¥]¤ÎGo¤u¨ã 77
6.1.1¡@¥]¾É¤J 78
6.1.2¡@Go¤u¨ã 79
6.2¡@¥N½XÀu¤Æ 84
6.2.1¡@Go¥N½XªºÀu¤Æ 84
6.2.2¡@©Ê¯à¤ÀªR 84
6.3¡@´ú¸Õ 90
6.3.1¡@¥\¯à´ú¸Õ¨ç¼Æ 91
6.3.2¡@°ò·Ç´ú¸Õ¨ç¼Æ 93
6.3.3¡@¥Ü¨Ò¨ç¼Æ 96
6.4¡@¤pµ² 98
²Ä7³¹¡@ºî¦X¹ê¾Ô®×¨Ò 99
7.1¡@®×¨Ò»Ý¨D 99
7.2¡@³q«H¨óij 100
7.3¡@ªA°È¾¹ºÝ 104
7.4¡@«È¤áºÝ 109
7.5¡@¤pµ² 116
²Ä¤G³¡¤À¡@Go»y¨¥¶i¶¥
²Ä8³¹¡@¦}µo½sµ{¶i¶¥ 118
8.1¡@ÄvºA»P¦}µo¼Ò¦¡ 118
8.1.1¡@¼Æ¾ÚÄvºA 118
8.1.2¡@¦}µo­ì²z 123
8.2¡@sync¥] 126
8.2.1¡@sync.Mutex¤¬¥¸Âê 126
8.2.2¡@sync.RWMutex¦hŪ¼gÂê 128
8.2.3¡@sync.Once 130
8.2.4¡@sync.Cond 131
8.2.5¡@sync.Pool 134
8.2.6¡@sync.Map 136
8.3¡@context¥] 138
8.3.1¡@À³¥Î³õ´º 138
8.3.2¡@©w¸q 139
8.3.3¡@Ä~©Ó 141
8.3.4¡@¥Ü¨Ò 142
8.4¡@¤u§@¦À 145
8.5¡@¤pµ² 151
²Ä9³¹¡@Go Web½sµ{ 152
9.1¡@net/http¥] 152
9.1.1¡@Go Web¤u§@ªº°ò¥»­ì²z 152
9.1.2¡@http¸Ô¸Ñ 156
9.2¡@Web®Ø¬[ 162
9.2.1¡@¿ï¾Ü®Ø¬[ 162
9.2.2¡@httprouter®Ø¬[ 163
9.3¡@Web©³¼hªA°È 165
9.3.1¡@Scoket²¤¶ 165
9.3.2¡@TCP Socket 166
9.3.3¡@UDP Socket 169
9.3.4¡@WebSocket 171
9.4¡@¤¤¶¡¥ó 174
9.4.1¡@°ò¥»¥Îªk 174
9.4.2¡@¶i¶¥¥Îªk 176
9.5¡@¼Æ¾Ú®w³X°Ý 179
9.5.1¡@database/sql±µ¤f 180
9.5.2¡@sqlx 182
9.6¡@¤pµ² 183
²Ä10³¹¡@ºî¦X®×¨Ò 184
10.1¡@®×¨Ò»Ý¨D 184
10.2¡@¶µ¥Ø¥N½X¥¬§½ 186
10.3¡@°t¸m©M¤é§Ó 187
10.3.1¡@°t¸m 188
10.3.2¡@¤é§Ó 190
10.4¡@¼Ò«¬ 191
10.5¡@gin®Ø¬[ 193
10.6¡@¤pµ² 196
²Ä¤T³¡¤À¡@·LªA°È²z½×
²Ä11³¹¡@·LªA°È 198
11.1¡@·LªA°È²¤¶ 198
11.1.1¡@¤°¤\¬O·LªA°È 198
11.1.2¡@·LªA°Èªº¥Ñ¨Ó 198
11.1.3¡@·LªA°È»P·LªA°È¬[ºc 199
11.2¡@¨t²Î¬[ºcªººt¶i 199
11.2.1¡@³æÅé¬[ºc 200
11.2.2¡@««ª½¬[ºc 201
11.2.3¡@SOA 201
11.2.4¡@·LªA°È¬[ºc 202
11.3¡@¤pµ² 205
²Ä12³¹¡@·LªA°È¤Æµ¦²¤ 206
12.1¡@·LªA°È¬[ºc­·®æ 206
12.1.1¡@¨C­ÓªA°È³£¾Ö¦³¿W¥ßªº¼Æ¾Ú®w 206
12.1.2¡@°ò¤_APIªº¼Ò¶ô¤Æ 207
12.2¡@·LªA°È¤Æ¶iµ{¤¤ªº­«ÂI°ÝÃD 207
12.2.1¡@·LªA°Èªº³q«H 207
12.2.2¡@¨Æ°ÈºÞ²zªº¤@­P©Ê 208
12.2.3¡@·LªA°È¼Æ¾Ú¬d¸ß 208
12.2.4¡@·LªA°È³¡¸p 208
12.2.5¡@·LªA°È¥Í²£Àô¹ÒºÊ±± 209
12.2.6¡@·LªA°Èªº¦Û°Ê¤Æ´ú¸Õ 209
12.3¡@·LªA°Èªº©î¤À 209
12.3.1¡@©î¤Àªº«ü¾É­ì«h 210
12.3.2¡@¨Ì¾Ú·~°È¯à¤O©î¤À 210
12.3.3¡@¨Ì¾Ú»â°ìÅX°Ê³]­p©î¤À 211
12.3.4¡@ªA°ÈAPIªº©w¸q 213
12.4¡@¤pµ² 214
²Ä13³¹¡@·LªA°È¤¤ªº¶iµ{¶¡³q«H 215
13.1¡@·LªA°È¤¤ªº¶iµ{¶¡³q«H·§­z 215
13.1.1¡@¥æ¤¬¼Ò¦¡ 215
13.1.2¡@API©w¸q 217
13.2¡@protobuf®æ¦¡ 217
13.2.1¡@protobuf²¤¶ 217
13.2.2¡@protobufªºÂ²³æ¨Ï¥Î 217
13.3¡@gRPC¥] 219
13.3.1¡@net/rpc¥] 219
13.3.2¡@gRPC²¤¶ 221
13.3.3¡@Go»y¨¥¹ê²{gRPC½Õ¥Î 222
13.4¡@·LªA°Èµo²{¡Gconsul 224
13.5¡@¤pµ² 226
²Ä14³¹¡@·LªA°È¤¤ªº¤À¥¬¦¡¨Æ°ÈºÞ²z 227
14.1¡@·LªA°È¤Uªº¨Æ°ÈºÞ²z 227
14.1.1¡@­±Á{ªºÃøÃD 227
14.1.2¡@SRPªº§é°J 228
14.2¡@·LªA°È¤¤³B²z¨Æ°Èªº´XºØ¤è¦¡ 229
14.2.1¡@ÁקK¸ó·LªA°Èªº¨Æ°È 229
14.2.2¡@°ò¤_XA¨óijªº¨â¶¥¬q´£¥æ¨óij 229
14.2.3¡@³Ì²×¤@­P©Ê©M¸ÉÀv 231
14.3¡@Saga¼Ò¦¡ 234
14.3.1¡@Saga¼Ò¦¡¤¶²Ð 234
14.3.2¡@½s±Æ¼Ò¦¡ 235
14.3.3¡@½s°t¼Ò¦¡ 237
14.4¡@Saga¼Ò¦¡ªºGo»y¨¥¥Ü¨Ò 238
14.4.1¡@Saga¹ï¶HªºGo»y¨¥¹ê²{ 238
14.4.2¡@¤¤¥¡¨ó½Õ¾¹ªºGo»y¨¥¹ê²{ 239
14.5¡@¤pµ² 243
²Ä15³¹¡@»â°ìÅX°Ê³]­pªºGo»y¨¥¹ê²{ 244
15.1¡@»E¦X¼Ò¦¡¤¶²Ð 244
15.2¡@¨Ï¥Î»E¦X¼Ò¦¡ 247
15.2.1¡@»E¦X¾Ö¦³©ú½TªºÃä¬É 247
15.2.2¡@»E¦Xªº³W«h 248
15.2.3¡@»E¦XÁû²É«× 250
15.2.4¡@¨Ï¥Î»E¦X³]­p·~°ÈÅÞ¿è 250
15.3¡@»â°ì¨Æ¥ó 251
15.4¡@Go»y¨¥»â°ì¼Ò«¬ªº¼ÒÀÀ¹ê²{ 252
15.4.1¡@»E¦X 253
15.4.2¡@¹êÅé©M­È¹ï¶H 253
15.4.3¡@ªA°È 255
15.5¡@¤pµ² 257
²Ä16³¹¡@·LªA°È¤¤ªº´ú¸Õ 258
16.1¡@´ú¸Õª÷¦r¶ð 258
16.2¡@³æ¤¸´ú¸Õ 260
16.3¡@¨Ì¿àª`¤J©Mmock´ú¸Õ 263
16.4¡@¦æ¬°ÅX°Ê¶}µo 266
16.5¡@¨Ï¥ÎDocker Compose´ú¸Õ 272
16.6¡@¤pµ² 275
²Ä17³¹¡@·LªA°È¹B¦æÀô¹Ò¡GDocker 276
17.1¡@Docker¤¶²Ð 276
17.1.1¡@Docker¤ÞÀº 276
17.1.2¡@¦uÅ@¶iµ{ 277
17.1.3¡@Ãè¹³¤Î®e¾¹ 277
17.1.4¡@­Ü®w 278
17.1.5¡@¼Æ¾Ú¨÷ 278
17.2¡@¹B¦æ²Ä¤@­ÓDocker®e¾¹ 279
17.2.1¡@Docker¦w¸Ë 279
17.2.2¡@HelloWorldµ{§Ç¥Ü¨Ò 279
17.2.3¡@¹B¦æ´_Âø¤@ÂIªº®e¾¹ 280
17.3¡@Docker¼Æ¾Ú«ù¤[¤Æ 282
17.3.1¡@¼Æ¾Ú¨÷ 282
17.3.2¡@bind mount 284
17.4¡@Dockerºôµ¸ 285
17.4.1¡@¾ô±µÅX°Ê¤Î¦Û©w¸qbridge 285
17.4.2¡@Host¼Ò¦¡¡BOverlay¼Ò¦¡¤ÎNone¼Ò¦¡ 288
17.5¡@¤pµ² 289
²Ä18³¹¡@Go»y¨¥°ò¤_ES-CQRSªº·LªA°È¹ê½î 290
18.1¡@²z½×¤¶²Ð 290
18.1.1¡@¨Æ¥ó·¹·½ 290
18.1.2¡@©R¥O¬d¸ß¾³d¤ÀÂ÷ 291
18.2¡@ES-CQRS¦bGo»y¨¥¤¤ªº¹ê²{¥Ü¨Ò 292
18.2.1¡@»Ý¨D 293
18.2.2¡@¤ÀªR»P³]­p 293
18.2.3¡@®Ö¤ß¹ê²{ 296
18.3¡@¤pµ² 299
²Ä¥|³¡¤À¡@·LªA°È¹ê¾Ô
²Ä19³¹¡@¥Í²£Àô¹Òªº·LªA°È¦w¥þ 302
19.1¡@¥[±K©Mñ¦W 302
19.1.1¡@¹ïºÙ±KÆ_¥[±K 302
19.1.2¡@¤½Æ_±K½X 303
19.1.3¡@X.509¼Æ¦rÃÒ®Ñ 303
19.1.4¡@TLS/SSL 304
19.2¡@¥~³¡¦w¥þ 304
19.2.1¡@¨¾¤õùÙ 304
19.2.2¡@­¶­±À³¥Îªº¨¾¤õùÙ 305
19.2.3¡@APIºôÃö 305
19.2.4¡@DDoS«OÅ@ 306
19.3¡@À³¥Î¦w¥þ 307
19.3.1¡@§ðÀ»ªÌ¦p¦ó¶¹L¨¾¤õùÙ 308
19.3.2¡@¿é¤J®ÕÅç 308
19.3.3¡@TLS 310
19.3.4¡@¦brest¤¤¶i¦æ¼Æ¾Ú«OÅ@ 313
19.3.5¡@JWT 314
19.3.6¡@¤j®ø®§ªº«D¹ïºÙ¥[±K 315
19.4¡@¹Bºû¦w¥þ 316
19.4.1¡@­×¸É®e¾¹ 316
19.4.2¡@³n¥ó§ó·s 317
19.4.3¡@­×¸ÉÀ³¥Îµ{§Ç¥N½X 317
19.4.4¡@¤é§Ó 317
19.5¡@¤pµ² 317
²Ä20³¹¡@¤é§Ó©MºÊ±± 318
20.1¡@¤é§Ó³Ì¨Î¹ê½î 319
20.2¡@«ü¼Ð 319
20.2.1¡@«ü¼Ð¼Æ¾ÚÃþ«¬ 320
20.2.2¡@©R¦W¬ù©w 320
20.2.3¡@¦sÀx©M¬d¸ß 322
20.2.4¡@Grafana 323
20.3¡@¤é§Ó°O¿ý 326
20.3.1¡@¨ã¦³ÃöÁpIDªº¤À¥¬¦¡¸òÂÜ 326
20.3.2¡@ElasticSearch¡BLogstash©MKibana 327
20.3.3¡@Kibana 328
20.4¡@²§±` 330
20.5¡@¤pµ² 332
²Ä21³¹¡@«ùÄò¥æ¥I 333
21.1¡@«ùÄò¥æ¥I²¤¶ 333
21.1.1¡@¤â°Ê³¡¸p 334
21.1.2¡@«ùÄò¥æ¥Iªº¦n³B 334
21.1.3¡@«ùÄò¥æ¥I­±­±Æ[ 335
21.1.4¡@«ùÄò¥æ¥Iªº¹Lµ{ 337
21.2¡@®e¾¹½s±Æªº¿ï¶µ©M°ò¦¬[ºc 338
21.3¡@Terraform 339
21.3.1¡@´£¨ÑªÌ 340
21.3.2¡@Terraform°t¸m¤J¤fÂI 341
21.3.3¡@VPC¼Ò¶ô 342
21.3.4¡@¿é¥XÅܶq 346
21.3.5¡@³Ð«Ø°ò¦¬[ºc 348
21.4¡@À³¥Î­S¨Ò 348
21.4.1¡@«ùÄò³¡¸pªº¤u§@¬yµ{ 349
21.4.2¡@ºc«Ø 352
21.4.3¡@´ú¸Õ 353
21.4.4¡@°ò·Ç´ú¸Õ 354
21.4.5¡@ÀRºA¥N½X´ú¸Õ 354
21.4.6¡@¶°¦¨´ú¸Õ 355
21.4.7¡@³¡¸p 356
21.4.8¡@«_·Ï´ú¸Õ 357
21.4.9¡@ºÊ±±©M¹wĵ 357
21.5¡@¤pµ² 359
²Ä22³¹¡@¨Ï¥ÎGo kit®Ø¬[ºc«Ø·LªA°È 360
22.1¡@³Ð«ØªA°È 361
22.1.1¡@´ú¸Õ 361
22.1.2¡@Go»y¨¥¤¤ªººc³y¨ç¼Æ 362
22.1.3¡@¨Ï¥Îbcrypt¶i¦æHash³B²z¦}ÅçÃÒ±K½X 363
22.2¡@¨Ï¥Î½Ð¨D©MÅTÀ³¹ï¤èªk½Õ¥Î¶i¦æ«Ø¼Ò 364
22.2.1¡@Go kit¤¤ªººÝÂI 365
22.2.2¡@¬°ªA°È¤èªk³]©w²×ÂI 366
22.2.3¡@¤£¦P¯Å§Oªº¿ù»~ 366
22.2.4¡@±NºÝÂI¥]¸Ë¨ìªA°È¹ê²{¤¤ 367
22.3¡@¨Ï¥ÎGo kit¹ê²{¤@­ÓHTTPªA°È¾¹ 368
22.4¡@Go kit¤¤ªºgRPCªA°È¾¹ 368
22.5¡@³Ð«ØªA°È¾¹©R¥O 371
22.5.1¡@¨Ï¥ÎGo kitºÝÂI 373
22.5.2¡@¹B¦æHTTPªA°È¾¹ 373
22.5.3¡@¹B¦ægRPCªA°È¾¹ 373
22.5.4¡@¨¾¤îmain¨ç¼Æ¬ðµM²×¤î 374
22.5.5¡@³q¹LHTTP¨Ï¥ÎªA°È 374
22.6¡@ºc«Ø¤@­ÓgRPC«È¤áºÝ 375
22.6.1¡@¨Ï¥ÎªA°Èªº©R¥O¦æ¤u¨ã 376
22.6.2¡@¦bCLI¤¤¸ÑªR°Ñ¼Æ 377
22.7¡@ªA°È¤¤¶¡¥óªº³t²v­­¨î 378
22.7.1¡@Go kit¤¤ªº¤¤¶¡¥ó 378
22.7.2¡@³t²v­­¨î 380
22.8¡@¤pµ² 380
ªþ¿ý¡@Go»y¨¥¤¤ªºÃöÁä¦r 381
§Ç¡G