|
|
|
Go ¾ð¾î ½ÇÀü Å×Å©´Ð : Go ¾ð¾îÀÇ Æ¯Â¡¸¸ ÄÛ Áý¾î Çؼ³ÇÑ
|
|
|
¿¡ÀÌÄÜ ÇÁ·Î±×·¡¹Ö ¾ð¾î ½Ã¸®Áî1
¤Ó ¸¶Ã÷Å° ¸¶»çÀ¯Å°, ¹ÚÇöÅÂ
¤Ó
¿¡ÀÌÄÜÃâÆÇ
|
|
|
|
- Á¦ÈÞ¸ô ÁÖ¹® ½Ã °í°´º¸»ó, ÀϺΠÀ̺¥Æ® Âü¿© ¹× ÁõÁ¤Ç° ÁõÁ¤, ÇÏ·ç/´çÀÏ ¹è¼Û¿¡¼ Á¦¿ÜµÇ¹Ç·Î Âü°í ¹Ù¶ø´Ï´Ù.
-
-
-
±¸±Û¿¡ ÀÇÇØ °³¹ßµÈ °¡º±°í ¼º´ÉÀÌ ¶Ù¾î³ Go ¾ð¾î, ÀÌ Ã¥¿¡¼´Â ½ÇÀü¿¡¼ Go ¾ð¾î¸¦ »ç¿ë ÁßÀÎ °³¹ßÀÚµéÀÌ ÃàÀûÇÑ ³ëÇϿ츦 ¹ÙÅÁÀ¸·Î Go ¾ð¾î¸¦ ¼³¸íÇÑ´Ù. ²À ¤°í ³Ñ¾î°¡¾ß ÇÒ Go ¾ð¾îÀÇ Æ¯Â¡¿¡ ´ëÇؼ´Â ¿¹Á¦·Î µ¶ÀÚµéÀÇ ÀÌÇظ¦ ÃÖ´ëÇÑ ³ôÀ̱â À§ÇØ ³ë·ÂÇÏ°í, ±»ÀÌ ¼³¸íÇÏÁö ¾Ê¾Æµµ µÇ´Â ¹®¹ýÀûÀÎ ¿ä¼Ò´Â °ú°¨È÷ »ý·«Çß´Ù. ÀÌ Ã¥À¸·Î Go ¾ð¾îÀÇ Æ¯Â¡°ú ÀåÁ¡¿¡ ´ëÇØ ÀÌÇؽÃÅ°°í ÇÁ·Î±×·¥À» °³¹ßÇÏ´Â µ¥ ÀÖ¾î Go ¾ð¾î¸¦ ÀûÀçÀû¼Ò¿¡ È°¿ëÇÒ ¼ö ÀÖµµ·Ï µ½´Â´Ù
-
-
¡Ú ÀÌ Ã¥¿¡¼ ´Ù·ç´Â ³»¿ë ¡Ú
¡á ÆÀ °³¹ßÀÇ ½ÃÀÛ ¹æ¹ý
¡á ¸ÖƼ Ç÷§Æû¿¡ÀÇ ´ëÀÀ
¡á ¾ÖÇø®ÄÉÀÌ¼Ç ÀÛ¼º Å×Å©´Ð
¡á Ä¿¸Çµå ¶óÀÎ Åø ÀÛ¼º
¡á reflect/Å×½ºÆ® Åø
¡Ú ¿Å±äÀÌÀÇ ¸»¡Ú
¿Ö Go ¾ð¾î´Â ÁÁÀº ¾ð¾îÀΰ¡? ÁÁÀº ¾ð¾î¶ó¸é °ú¿¬ ¾î¶°ÇÑ Á¡ÀÌ ±âÁ¸ÀÇ ¾ð¾î¿Í ´Ù¸£¸ç ±× Ư¡Àº ¹«¾ùÀΰ¡? ÀÌ Áú¹®¿¡ ´ëÇØ ÇÑ ±ÇÀÇ Ã¥À¸·Î ÃÖ´ëÇÑ µ¶ÀÚµéÀÇ ÀÌÇظ¦ µ½±â À§ÇØ ÀúÀÚµéÀÌ °¢ÀÚÀÇ °æÇèÀ» ¹ÙÅÁÀ¸·Î À̾߱⸦ Ç®¾î³Â´Ù.
¹°·Ð ±âÁ¸ÀÇ ¾ð¾î¿Í ºñ±³ÇßÀ» ¶§ ¸ðµç ºÎºÐ¿¡¼ ¾ÐµµÀûÀ¸·Î ¶Ù¾î³ª´Ù°í´Â ÇÒ ¼ö ¾ø´Ù. ÇÏÁö¸¸ Çö½ÇÀû ³ë¼±¿¡¼ °¢ ¾ð¾îÀÇ ÁÁÀº Ư¡µéÀÌ ¸Å¿ì Á¶È·Ó°Ô ±ÕÇüÀÌ Àß ÀâÈù ¾ð¾î°¡ Go¶ó°í °¨È÷ Æò°¡ÇÏ°í ½Í´Ù.
±×·³ ¿Ö ±×·¸°Ô Æò°¡ÇßÀ¸¸ç ÀÌ Ã¥ÀÌ Go¶ó´Â ¾ð¾î¸¦ ¾Ë¾Æ°¡´Â µ¥ ¿Ö À¯¿ëÇÑ Ã¥Àΰ¡? ¿Å±äÀÌ´Â µ¶ÀÚµéÀÇ ÀÌÇظ¦ µ½±â À§ÇØ Å©°Ô 3°¡Áö °üÁ¡À¸·Î ÀÌ Ã¥À» ÁýÇÊÇß´Ù°í Æò°¡ÇÑ´Ù. ù°, ½ÇÀü¿¡¼ Go ¾ð¾î¸¦ »ç¿ë ÁßÀÎ °³¹ßÀÚµéÀÌ ÃàÀûÇØ¿Â ³ëÇϿ츦 ¹ÙÅÁÀ¸·Î Ç®¾î³Â´Ù. µÑ°, ²À ¤°í ³Ñ¾î°¡¾ß ÇÒ Go ¾ð¾îÀÇ Æ¯Â¡¿¡ ´ëÇؼ´Â ¿¹Á¦¸¦ µé¾î°¡¸ç µ¶ÀÚµéÀÇ ÀÌÇظ¦ ÃÖ´ëÇÑ ³ôÀ̱â À§ÇÑ ÀåÄ¡¸¦ ¸¶·ÃÇØ µÎ¾ú´Ù. ¼Â°, ±»ÀÌ ¼³¸íÇÏÁö ¾Ê¾Æµµ µÇ´Â ¹®¹ýÀûÀÎ ¿ä¼Ò¿¡ ´ëÇؼ´Â °ú°¨È÷ »ý·«ÇÏ¿© ½±°Ô ÀÐÀ» ¼ö ÀÖ°Ô Çß´Ù.
»çÁ·ÀÏÁöµµ ¸ð¸£Áö¸¸ Ŭ¶ó¿ìµå ¼ºñ½º¸¦ °³¹ß ¿î¿µ ÁßÀÎ ¿Å±äÀ̵µ ¹ø¿ªÇÏ¸é¼ Go ¾ð¾îÀÇ Æ¯Â¡¿¡ ´ëÇØ »õ»ï ´Ù½Ã ¹è¿ü°í ÁÁÀº °æÇèÀ̾ú´Ù°í »ý°¢ÇÑ´Ù. µ¶Àںе鵵 ÀÌ Ã¥À» ÅëÇØ Á¶±ÝÀÌ¶óµµ Go ¾ð¾îÀÇ °¡Ä¡¿¡ ´ëÇØ ±ú´Ý´Â ºÎºÐÀÌ ÀÖ¾úÀ¸¸é ÇÏ´Â ¹Ù¶÷ÀÌ´Ù.
-
-
1Àå. Go¸¦ ÀÌ¿ëÇÑ ÆÀ °³¹ßÀÇ ½ÃÀÛ ¹æ¹ý°ú Äڵ带 ÀÛ¼ºÇÏ´Â µ¥ ÀÖ¾î¼ÀÇ ¸¶À½°¡Áü
__1.1 °³¹ß ȯ°æ ±¸Ãà - ¼³Ä¡ºÎÅÍ $GOPATH ¼³Á¤±îÁö
____°³¹ß ȯ°æ ±¸Ãà
____Go ¼³Ä¡
____$GOPATH ¼³Á¤
____go get ½ÃÇèÇØ º¸±â
____GoÀÇ REPLÀÎ gore¸¦ »ç¿ë
____$GOPATH °ü¸®¸¦ À§ÇÑ ghq µµÀÔ
____peco·Î °£´ÜÇÏ°Ô ¸®Æ÷ÁöÅ͸® °£ À̵¿Çϱâ
____Go·Î ¸¸µé¾îÁø Åø ¼³Ä¡
__1.2 ¿¡µðÅÍ¿Í °³¹ßȯ°æ
____ÄÚµå Æ÷¸ËÅÍ, lint Åø¿¡¼ ¹®¼¿¶÷±îÁö
____Go¿Í ¿¡µðÅÍ
____Go¿¡µðÅÍ¿¡ ´ëÇÑ »ç°í¹æ½Ä
____°³¹ß Áö¿ø Åø
____ÄÚµå Æ÷¸ËÅÍ: gofmt
____goimports
____lint Åø: go vet°ú golint
____¹®¼ ¿¶÷ Åø: godoc
____±× ¹ÛÀÇ Åø: gorename,
____guru, gocode, godef, gotags
__1.3 Go ½ÃÀÛÇϱâ - start a tour of Go
____ÇнÀ: Tour of Go
____¹®¼ Àбâ
____ÇÁ·ÎÁ§Æ® ½ÃÀÛÇϱâ
____µð·ºÅ丮¸í°ú ÆÐÅ°Áö¸í
____µð·ºÅ丮 ±¸¼º
____ÆÄÀÏ ºÐÇÒ
____ÆÐÅ°Áö ºÐÇÒ
____¼ºê ÆÐÅ°ÁöÀÇ ÀÓÆ÷Æ® ¹æ¹ý
____ÀÇÁ¸ °ü¸®: vendoring°ú glide
____glide novendor
____ŽºÅ© ·¯³Ê·Î½á MakefileÀ» »ç¿ë
__1.4 Go´ä°Ô ÄÚµå ÀÛ¼ºÇϱâ - Go¸¦ »ç¿ëÇÏ°í ½Í´Ù¸é Go¸¦ µû¸£¶ó
____´õ¿í Go½º·¯¿î Äڵ带 ÀÛ¼º
____panic»ç¿ë... ¾Ê°í, error¸¦ Àß ¹Ýȯ, ¿¡·¯ üũ È®½ÇÈ÷ Çϱâ
____Á¤±Ô Ç¥ÇöÀ» ÇÇÇÏ°í strings ÆÐÅ°Áö¸¦ »ç¿ë
____stringsÆÐÅ°Áö
____¾î¿ ¼ö ¾øÀÌ Á¤±Ô Ç¥ÇöÀ» »ç¿ëÇÏ´Â °æ¿ì
____map ÇÇÇϱâ
____reflect ÇÇÇϱâ
____°Å´ëÇÑ struct »ç¿ë, »ó¼ÓÇÏÁö ¾Ê±â
____º´·Äó¸®ÀÇ °ú´Ù »ç¿ë ÇÇÇϱâ
____Go ÄÚµå Àбâ
____Å×½ºÆ®¿Í CI
____ºôµå¿Í µðÇ÷ÎÀÌ
____¸ð´ÏÅ͸µ
____Á¤¸®
2Àå. ¸ÖƼ Ç÷§Æû¿¡¼ ½ÇÇàÇÏ´Â »ç³» Åø ¸¸µå´Â ¹æ¹ý
2.1 Go·Î »ç³» ÅøÀ» ¸¸µå´Â ÀÌÀ¯ - Àú¸¶´Ù Á¦°¢°¢ÀÎ °Ç ´ç¿¬ÇÑ ÀÏ
__´Ù¾çÇÑ È¯°æ¿¡ ´ëÇÑ ´ëÀÀÀÌ ºÒ°¡ÇÇ
____Go¸¦ ä¿ëÇÏ´Â ÀåÁ¡
__2.2 ÁöÄÑ¾ß ÇÒ ¾Ï¹¬ÀûÀÎ ±ÔÄ¢ - OS °£ÀÇ À̽ÄÀ» ¹Ì¸® °¡Á¤
____Àû±ØÀûÀ¸·Î path/filepath »ç¿ëÇϱâ
____Àû±ØÀûÀ¸·Î defer »ç¿ëÇϱâ
____Àû±ØÀûÀ¸·Î UTF-8À» ´Ù·ç±â
__2.3 TUI¸¦ Windows¿¡¼ ½ÇÇàÇϱâ - termbox¿Í go-colorable
____°£´ÜÈ÷ TUI ¾ÖÇø®ÄÉÀ̼ÇÀ» ¸¸µå´Â termbox
____go-colorableÀÇ »ç¿ë¹ý
__2.4 OS °íÀ¯ 󸮿¡ ´ëÀÀ - runtime.GOOS¿Í Builds Constraints
____runtime.GOOS¸¦ »ç¿ë
____Build Constraints¸¦ »ç¿ë
____ÆÄÀÏ¸í¿¡ ÀÇÇÑ ÁöÁ¤
____+build ÁÖ¼®¿¡ ÀÇÇÑ ÁöÁ¤
____pkg-config: º¹ÀâÇÑ ÄÄÆÄÀÏ ¿É¼Ç¿¡ ´ëó
__2.5 ³ë·ÂÇϱ⺸´Ü ÁÖº¯ Åø¿¡ ÀÇÁ¸Çϱâ - ÇϳªÀÇ ¾ÖÇø®ÄÉÀ̼ǿ¡¼´Â ÇϳªÀÇ Ã³¸®¸¸
____Go ¾ÖÇø®ÄÉÀ̼ÇÀÇ µ¥¸óÈ(ûù)
____¸®´ª½ºÀÇ °æ¿ì
____À¯´Ð½ºÀÇ °æ¿ì
____WindowsÀÇ °æ¿ì
__2.6 ½Ì±Û ¹ÙÀ̳ʸ® - go-bindata¿Í go-assetsÀÇ È°¿ë
____Go´Â ½Ì±Û ¹ÙÀ̳ʸ®
____go-bindata¸¦ »ç¿ë
____go-assets »ç¿ë
__2.7 Windows ¾ÖÇø®ÄÉÀÌ¼Ç ¸¸µé±â - ´Ù¾çÇÑ »ç¿ëÀÚ¸¦ °¡Á¤Çϱâ
____Windows ¾ÖÇø®ÄÉÀ̼ÇÀ» ¸¸µå´Â ¹æ¹ý
____¸®¼Ò½º ÆÄÀÏ ¸µÅ©Çϱâ
____GUI¸¦ ¸¸µç´Ù¸é
__2.8 ¼³Á¤ ÆÄÀÏ Ãë±Þ - ¸ÖƼ Ç÷§Æû¿¡¼ÀÇ ÁÖÀÇÁ¡
____¼³Á¤ ÆÄÀÏ Ãë±Þ ½ÃÀÇ ÁÖÀÇÁ¡
____¾î¶² Æ÷¸ËÀ¸·Î ÇÒ±î?
____INI ÆÄÀÏ
____JSON
____YAML
____TOML
____¼³Á¤ ÆÄÀÏÀ» ¾îµð¿¡ µÑ±î?
____JSONÀ» Àß Á¤¸®Çؼ Ãâ·ÂÇϱâ
__2.9 »ç³» Åø, ±× ÀÌÈÄ - ¸ÖƼ Ç÷§Æû ´ëÀÀ ¾ÖÇø®ÄÉÀ̼ÇÀÇ ÀåÁ¡
____ÇÑ ¹ø ¸¸µé¾ú´Ù°í ³¡ÀÌ ¾Æ´Ï´Ù
3Àå. ½Ç¿ëÀûÀÎ ¾ÖÇø®ÄÉÀÌ¼Ç ¸¸µé±â
__3.1 ¸Ó¸®¸» - ½Ç¿ëÀûÀÎ ¾ÖÇø®ÄÉÀ̼ÇÀÇ Á¶°ÇÀ̶õ
____½Ç¿ëÀûÀÎ ¾ÖÇø®ÄÉÀ̼ÇÀ̶õ
____¾î¶°ÇÑ ±â´ÉÀ» °®°í ÀÖ´ÂÁö¸¦
____½±°Ô ¾Ë ¼ö ÀÖÀ» °Í
____¼º´ÉÀÌ ÁÁÀ» °Í
____´Ù¾çÇÑ ÀÔÃâ·ÂÀ» ´Ù·ê ¼ö ÀÖÀ» °Í
____Àΰ£ÀÌ ´Ù·ç±â ½¬¿î ŸÀÔÀÏ °Í
____¿¹¿ÜÀÇ °æ¿ì¿¡ ¾ÈÀüÇÏ°Ô µ¿ÀÛÀ»
____Á¤Áö½Ãų ¼ö ÀÖÀ» °Í
____3Àå¿¡¼ ¼Ò°³ÇÏ´Â Å×Å©´Ð
__3.2 ¹öÀü °ü¸® - »ç¿ëÀÚ°¡ È®ÀÎÇϱ⠽±°Ô Çϱâ
____¹öÀü ¹øÈ£¸¦ ¹ÙÀ̳ʸ®¿¡ ³Ö±â
____flag ÆÐÅ°ÁöÀÇ ÀÌ¿ë
____¼Ð ½ºÅ©¸³Æ®
____go-latest·Î ÃֽŠ¹öÀü üũ
____GitHub ű×
____HTML ¸ÞŸ ű×
____JSON API
__3.3 È¿À²ÀûÀÎI/O ó¸® - ¹öÆÛ¸µ, ÄÜÅÙÃ÷ Ãëµæ, ÆÄÀÏ ÀúÀå
____bufio·Î ÀÔ·ÂÀ» ¹öÆÛ¸µÇؼ ´Ù·ç±â
____bufio·Î Ãâ·ÂÀ» ¹öÆÛ¸µÇϱâ
____LL·Î Ãâ·ÂÀÇ ÀÚµ¿ ¹öÆÛ¸µÇϱâ
____Go¿¡¼´Â ÀÚµ¿ ¹öÆÛ¸µÀº ÇÏÁö ¾Ê´Â´Ù
____¹öÆÛ Å©±â ÁöÁ¤
____go-isatty·Î
____Ãâ·Âó°¡ ´Ü¸»±âÀÎÁö¸¦ ÆǺ°Çϱâ
____¿©·¯ ¼Ò½º·ÎºÎÅÍ °°Àº ÄÜÅÙÃ÷ Ãëµæ
____ÄÜÅÙÃ÷ ÃëµæÀÇ È帧
____ÆÄÀÏ¿¡¼ ¾ò±â
____HTTP(S) URL¿¡¼ ¾ò±â
____Amazon S3¿¡¼ ¾ò±â
____¿©·¯ Ãâ·Âó¿¡ Çѹø¿¡ ¾²±â
____·Î±× Ãâ·Â°ú µ¿½Ã¿¡
____¸Þ¸ð¸®¿¡ º¸À¯ÇØ ÀÌ¿ëÇϱâ
__3.4 ³¼ö ´Ù·ç±â - math/rand, crypto/rand
____³¼ö ´Ù·ç±â »ç·Ê
____³¼ö¸¦ Ãë±ÞÇϴ ǥÁØ ÆÐÅ°Áö
____math/rand
____crypo/rand
__3.5 Àΰ£ÀÌ ´Ù·ç±â ½¬¿î ŸÀÔÀÇ ¼öÄ¡ - go-humanize
____go-humanize
____Ç¥±â º¯È¯°ú Æļ?parser?
____Ç¥±âº¯È¯
____Æļ
__3.6 Go¿¡¼ ¿ÜºÎ ¸í·É ½ÇÇàÇϱâ - os/exec ÆÐÅ°Áö È°¿ë
____¿ÜºÎ Ä¿¸Çµå¸¦ ½ÇÇàÇÏ´Â ÀÌÁ¡
____os/exec ÆÐÅ°Áö
____os/exec ÆÐÅ°ÁöÀÇ »ç·Ê
____¿ÜºÎ Ä¿¸Çµå¸¦
____¼Ð °æÀ¯·Î ±âµ¿Çϱâ(À¯´Ð½º°è¿ ȯ°æ)
__3.7 ŸÀӾƿôÇϱâ - ÆÐÅ°Áö ±â´ÉÀÇ ÀÌ¿ë°ú Á÷Á¢ ±¸ÇöÇϱâ
____»ç¿ëÇÏ´Â ÆÐÅ°Áö¿¡
____ŸÀӾƿô ±â´ÉÀÌ ÁغñµÈ °æ¿ì
____Á÷Á¢ ŸÀӾƿô ±¸Çö
__3.8 ½Ã±×³Î ´Ù·ç±â - ÀûÀýÇÑ Çڵ鸵Çϱâ
____Go·Î ½Ã±×³Î ´Ù·ç±â
____µ¶ÀÚÀûÀÎ ½Ã±×³Î Á¤ÀÇÇϱâ
__3.9 goroutineÀÇ Á¤Áö - º´·Ä ó¸®, ºñµ¿±â ½ÇÇàÀÇ Çڵ鸵
____goroutineÀ» ¿ÜºÎ¿¡¼ Á¤Áö½ÃÅ°±â
____ä³ÎÀ» »ç¿ëÇÏ´Â ¹æ¹ý
____Context ÆÐÅ°Áö¸¦ ÀÌ¿ëÇÏ´Â ¹æ¹ý
____¸¶¹«¸®
4Àå. Ä¿¸Çµå ¶óÀÎ Åø ¸¸µé±â
__4.1 ¿Ö Go·Î CLI ÅøÀ» ¸¸µå´Â°¡? - 3°¡Áö ÀåÁ¡
____Go·Î CLI ÅøÀ» ¸¸µå´Â ÀÌÀ¯
____¹èÆ÷ÀÇ ¿ëÀ̼º
____´Ù¾çÇÑ Ç÷§Æû¿¡ ½±°Ô ´ëÀÀ
____¼º´É
____¶óÄíÅÙÀÇ »ç·Ê
__4.2 µðÀÚÀÎ - ÀÎÅÍÆäÀ̽º¿Í ¸®Æ÷ÁöÅ͸® ±¸¼º
____CLI Åø ÀÎÅÍÆäÀ̽º
____½Ì±Û Ä¿¸Çµå ÆÐÅÏ
____¼ºê Ä¿¸Çµå ÆÐÅÏ
____¸®Æ÷ÁöÅ͸® ±¸¼º
____¹ÙÀ̳ʸ®¸¦ ¸ÞÀÎ ¼º°ú¹°·Î ÇÒ °æ¿ì
____¶óÀ̺귯¸®¸¦ ¸ÞÀÎ ¼º°ú¹°·Î ÇÒ °æ¿ì
__4.3 flag ÆÐÅ°Áö - Ä¿¸Çµå ¶óÀÎ ¿É¼Ç È°¿ëÇϱâ
____flag ÆÐÅ°Áö¶õ
____±âº»ÀûÀÎ »ç¿ë ¹æ¹ý
____¸î °¡Áö Å×Å©´Ð
____·Õ ¿É¼Ç°ú ¼îÆ® ¿É¼Ç
____ȯ°æ º¯¼ö
____¾îµð¿¡ ±â¼úÇÒ °ÍÀΰ¡?
____³»ºÎ ±¸Çö°ú Ä¿½ºÅ͸¶ÀÌÁî
____flag.IntVar ±¸Çö
____Ä¿½ºÅ͸¶ÀÌÁîÇϱâ
____¹ü¿ëÀûÀÎ »ç¿ë ¹æ¹ý
____ÇÑ ¹ø ´õ flag.IntVar ±¸Çö »ìÆ캸±â
____µ¶ÀÚÀûÀΠŸÀÔ Á¤ÀÇÇϱâ
____¼µå ÆÄƼ ÆÐÅ°ÁöÀÇ È°¿ë
____spfl3/pflag ÆÐÅ°Áö
____jessevdk/go-flags ÆÐÅ°Áö
____alecthomas/kingpin ÆÐÅ°Áö
__4.4 ¼ºê Ä¿¸Çµå¸¦ °¡Áø CLI Åø - ¼µå ÆÄƼ ÆÐÅ°ÁöÀÇ È°¿ë
____¼µå ÆÄƼ ÆÐÅ°Áö ¼Ò°³
____urfave/cli
____spf13/cobra
____docopt/docopt.go
____mitchellh/cli
____google/subcommands
____mitchellh/cliÀÇ »ç¿ë¹æ¹ý
____¼ºê Ä¿¸ÇµåÀÇ Á¤ÀÇ
____¼ºê Ä¿¸Çµå »ç¿ëÇϱâ
____¼ºê Ä¿¸Çµå¿¡ Ç÷¡±× ºÙÀ̱â
__4.5 »ç¿ëÇϱ⠽±°í, ¿î¿ëº¸¼öÇϱ⿡ ½¬¿î Åø - ¼µå ÆÄƼ ÆÐÅ°ÁöÀÇ È°¿ë
____»ç¿ëÇϱ⠽¬¿î Åø
____Á¾·á ½ºÅ×ÀÌÅͽº ÄÚµå
____ÁÖÀÇÁ¡
____Ç¥ÁØ Ãâ·Â°ú Ç¥ÁØ ¿À·ù Ãâ·Â
____¿À·ù ¸Þ½ÃÁö
____¿î¿ëº¸¼öÇϱ⿡ ½¬¿î Åø
____GoÀÇ CLI Å×½ºÆ® Å×Å©´Ð
____½ºÅ×ÀÌÅͽº ÄÚµå Å×½ºÆ®
____Ãâ·Â ¸Þ½ÃÁö Å×½ºÆ®
____¸¶¹«¸®
5Àå. The Dark Arts Of Reflection
__5.1 µ¿ÀûÀΠŸÀÔ ÆǺ° - ½ÇÇà ¶§±îÁö ŸÀÔ ÆǺ°À» ±â´Ù¸®±â
____ŸÀÔ °ËÃâ°ú ¾î½á¼Ç ŸÀÔÀÇ ÇÑ°è
__5.2 reflect ÆÐÅ°Áö - ŸÀÔ Á¤º¸ ¾ò±â¿Í Á¶ÀÛ
____reflect ÆÐÅ°Áö¸¦ »ç¿ëÇØ ¾òÀ» ¼ö ÀÖ´Â Á¤º¸
____reflect.Value
____ŸÀÔº¸´Ù µ¿ÀÛ ¹Ù²Ù±â
____mapÀÎ °æ¿ìÀÇ Ã³¸®
____structÀÎ °æ¿ìÀÇ Ã³¸®
____reflect.Type
____struct ÆĽºÇϱâ
__5.3 reflect »ç¿ë ¿¹ - ÇÔÁ¤¿¡ ºüÁöÁö ¾Ê±â À§ÇÑ ´ëó¹æ¹ý
____°ªÀ» µ¿ÀûÀ¸·Î »ý¼ºÇϱâ
____º¸ÀÌ´Â ¹üÀ§, º¸ÀÌÁö ¾Ê´Â ¹üÀ§
____Æ÷ÀÎÅÍ¿Í interface°ª
____Set °¡´ÉÇÑ °ª
____reflect·Î interfaceÀÇ ÃæÁ· ¿©ºÎ È®ÀÎ
____µ¿ÀûÀÎ select ¹® ±¸Ãà
__5.4 reflect ¼º´É Á¤¸® - ÀûÀçÀû¼Ò¿¡ »ç¿ëÇϱâ
____reflect¿Í ¾î½á¼Ç ŸÀÔÀÇ ºñ±³
____reflect¿¡ ÀÇÇÑ sort
____¸¶¹«¸®
6Àå. GoÀÇ Å×½ºÆ® °ü·Ã Åø ¼¼Æ®
__6.1 GoÀÇ Å×½ºÆ® ¹æ½Ä - ¡®¸í½Ã¡¯¿Í ¡®½ÉÇá¯
____¼ÒÇÁÆ®¿þ¾î Å×½ºÆ®
____GoÀÇ Å×½ºÆ®
__6.2 testing ÆÐÅ°Áö ÀÔ¹® - Å×½ºÆ® ½ÇÇà°ú Å×½ºÆ® ÄÚµåÀÇ ÀÛ¼º
____Å×½ºÆ® ½ÇÇà ¹æ¹ý
____Testable Examples
____Unordered output
____Exmaples¸¦ godoc¿¡ ½Æ±â
__6.3 º¥Ä¡ ¸¶Å© ÀÔ¹® - ¹®ÀÚ¿ °áÇÕÀÇ ¿¹·Î ¹è¿ì±â
____º¥Ä¡ ¸¶Å© ½ÇÇà ¹æ¹ý
____¼ºê º¥Ä¡ ¸¶Å© ÀÌ¿ë
__6.4 Å×½ºÆ®ÀÇ ½ÇÀü Å×Å©´Ð - ¹è¿ Ç÷οì, ¸ñ¾÷, Ä¿¹ö¸®Áö
____Table Driven Tests
____reflect.DeepEqual »ç¿ëÇϱâ
____Race Detector¸¦ ÀÌ¿ëÇØ
____Ãæµ¹ »óÅ °ËÃâÇϱâ
____TestMainÀ¸·Î Å×½ºÆ® Á¦¾î
____Build Constraints¸¦ ÀÌ¿ëÇÑ Å×½ºÆ® Àüȯ
____Å×½ºÆ®ÀÇ º¯¼ö ¶Ç´Â ÇÔ¼öÀÇ ´ëü
____ÀÎÅͳÝÀ» ÀÌ¿ëÇÑ ¸ñ¾÷
____net/http/httptest ÆÐÅ°Áö
____Å×½ºÆ® Ä¿¹ö¸®Áö
____Go¿¡¼ÀÇ Å×½ºÆ® ¸¶¹«¸®
-
-
|
¸¶Ã÷Å° ¸¶»çÀ¯Å° [Àú]
|
|
-
¾÷¹«¿¡¼ Go¸¦ È°¿ë ÁßÀÎ ÁýÇÊÀÚ·Î, ½ÇÁ¦·Î Go¸¦ »ç¿ëÇÏ´Â µ¿¾È ÃàÀûÇÑ ³ëÇϿ츦 ÀÌ ÇÑ ±Ç¿¡ ´Ù ´ã¾Ò´Ù. Æ®À§ÅÍ @songmuÀÇ °èÁ¤¿¡¼ ¸¸³¯ ¼ö ÀÖ´Ù.
-
|
¹ÚÇöÅÂ [Àú]
|
|
-
2007³â ÇöÇØźÀ» °Ç³Ê ÀϺ»¿¡ Á¤Âø ÈÄ 10³â°£ ÀϺ»ÀÇ IT¾÷°è¿¡¼ Á¾»çÇÏ¸ç ±ÝÀ¶±Ç ÀÎÇÁ¶ó¿Í °³¹ß ¾÷¹«¸¦ °ÅÃÄ Áö±ÝÀº ÀϺ»°è ITº¥Ã³ ±×·ì¿¡¼ 7³â°£ ±Ù¹« ÁßÀÌ´Ù. Áö±ÝÀÇ È¸»ç¿¡¼´Â Ŭ¶ó¿ìµå ¼ºñ½º °³¹ßÆÀÀÇ ¸Å´ÏÀú·Î ÁÖ·Î ÀÚ»çÀÇ ÆÛºí¸¯/ÇÁ¶óÀ̺ø Ŭ¶ó¿ìµå ¼ºñ½ºÀÇ ¼³°è/°³¹ß/¿î¿µº¸¼ö¿Í µ¥ÀÌÅÍ ¼¾ÅÍ ¾÷¹«±îÁö µÎ·çµÎ·ç ¼··Æ Áß¿¡ ÀÖ´Ù. 2011³âºÎÅÏ Å¬¶ó¿ìµå ÀÎÇÁ¶ó ½ºÆ®·°Ã³ ¿ÀǼҽºÀÎ OpenStack¿¡ °ü½ÉÀÌ ÀÖ¾î, ÀÚ»çÀÇ ÆÛºí¸¯ Ŭ¶ó¿ìµå ¼ºñ½ºÀÎ ConoHa, Z.com Enterprise Cloud µîÀÇ ¼ºñ½º¸¦ OpenStackÀ¸·Î °³¹ßÇßÀ¸¸ç, 2015³â OpenStack summit Tokyo¿¡¼´Â ConoHa Ŭ¶ó¿ìµåÀÇ ¸ÖƼ ¸®Àü(multi-region)¿¡ ´ëÇؼµµ ¹ßÇ¥Çß´Ù. ÃÖ±Ù¿¡´Â Ŭ¶ó¿ìµå ¼ºñ½ºÀÇ °³¹ß°ú ´õºÒ¾î Çظ¶´Ù ´Ã¾î³ª´Â ÀÚ»ç Ŭ¶ó¿ìµå ¼ºñ½ºÀÇ ÀÚµ¿ ±¸Ãà¿¡ °üÇÑ µðÇ÷ÎÀÌ(deploy) ÇÁ·ÎÁ§Æ®¸¦ ÁøÇà Áß¿¡ ÀÖ´Ù.
-
-
Àüü 0°³ÀÇ ±¸¸ÅÈıⰡ ÀÖ½À´Ï´Ù.
|
ÀÎÅÍÆÄÅ©µµ¼´Â °í°´´ÔÀÇ ´Ü¼ø º¯½É¿¡ ÀÇÇÑ ±³È¯°ú ¹ÝÇ°¿¡ µå´Â ºñ¿ëÀº °í°´´ÔÀÌ ÁöºÒÄÉ µË´Ï´Ù.
´Ü, »óÇ°À̳ª ¼ºñ½º ÀÚüÀÇ ÇÏÀÚ·Î ÀÎÇÑ ±³È¯ ¹× ¹ÝÇ°Àº ¹«·á·Î ¹ÝÇ° µË´Ï´Ù. |
|
±³È¯ ¹× ¹ÝÇ°ÀÌ °¡´ÉÇÑ °æ¿ì |
»óÇ°À» °ø±Þ ¹ÞÀº ³¯·ÎºÎÅÍ 7ÀÏÀ̳» °¡´É
°ø±Þ¹ÞÀ¸½Å »óÇ°ÀÇ ³»¿ëÀÌ Ç¥½Ã, ±¤°í ³»¿ë°ú ´Ù¸£°Å³ª ´Ù¸£°Ô ÀÌÇàµÈ °æ¿ì¿¡´Â °ø±Þ¹ÞÀº ³¯·ÎºÎÅÍ 3°³¿ù À̳», ȤÀº ±×»ç½ÇÀ» ¾Ë°Ô µÈ ³¯ ¶Ç´Â ¾Ë ¼ö ÀÖ¾ú´ø ³¯·ÎºÎÅÍ 30ÀÏ À̳»
»óÇ°¿¡ ¾Æ¹«·± ÇÏÀÚ°¡ ¾ø´Â °æ¿ì ¼ÒºñÀÚÀÇ °í°´º¯½É¿¡ ÀÇÇÑ ±³È¯Àº »óÇ°ÀÇ Æ÷Àå»óÅ µîÀÌ ÀüÇô ¼Õ»óµÇÁö ¾ÊÀº °æ¿ì¿¡ ÇÑÇÏ¿© °¡´É |
|
±³È¯ ¹× ¹ÝÇ°ÀÌ ºÒ°¡´ÉÇÑ °æ¿ì |
±¸¸ÅÈ®Á¤ ÀÌÈÄ(¿ÀǸ¶ÄÏ»óÇ°¿¡ ÇÑÇÔ)
°í°´´ÔÀÇ Ã¥ÀÓ ÀÖ´Â »çÀ¯·Î »óÇ° µîÀÌ ¸ê½Ç ¶Ç´Â ÈÑ¼ÕµÈ °æ¿ì
(´Ü, »óÇ°ÀÇ ³»¿ëÀ» È®ÀÎÇϱâ À§ÇÏ¿© Æ÷Àå µîÀ» ÈѼÕÇÑ °æ¿ì´Â Á¦¿Ü)
½Ã°£ÀÌ Áö³²¿¡ µû¶ó ÀçÆǸŰ¡ °ï¶õÇÒ Á¤µµ·Î ¹°Ç°ÀÇ °¡Ä¡°¡ ¶³¾îÁø °æ¿ì
Æ÷Àå °³ºÀµÇ¾î »óÇ° °¡Ä¡°¡ ÈÑ¼ÕµÈ °æ¿ì |
|
´Ù¹è¼ÛÁöÀÇ °æ¿ì ¹ÝÇ° ȯºÒ |
´Ù¹è¼ÛÁöÀÇ °æ¿ì ´Ù¸¥ Áö¿ªÀÇ ¹ÝÇ°À» µ¿½Ã¿¡ ÁøÇàÇÒ ¼ö ¾ø½À´Ï´Ù.
1°³ Áö¿ªÀÇ ¹ÝÇ°ÀÌ ¿Ï·áµÈ ÈÄ ´Ù¸¥ Áö¿ª ¹ÝÇ°À» ÁøÇàÇÒ ¼ö ÀÖÀ¸¹Ç·Î, ÀÌÁ¡ ¾çÇØÇØ Áֽñ⠹ٶø´Ï´Ù. |
|
Áß°í»óÇ°ÀÇ ±³È¯ |
Áß°í»óÇ°Àº Á¦ÇÑµÈ Àç°í ³»¿¡¼ ÆǸŰ¡ ÀÌ·ç¾îÁö¹Ç·Î, ±³È¯Àº ºÒ°¡´ÉÇÕ´Ï´Ù. |
|
¿ÀǸ¶ÄÏ »óÇ°ÀÇ È¯ºÒ |
¿ÀǸ¶ÄÏ»óÇ°¿¡ ´ëÇÑ Ã¥ÀÓÀº ¿øÄ¢ÀûÀ¸·Î ¾÷ü¿¡°Ô ÀÖÀ¸¹Ç·Î, ±³È¯/¹ÝÇ° Á¢¼ö½Ã ¹Ýµå½Ã ÆǸÅÀÚ¿Í ÇùÀÇ ÈÄ ¹ÝÇ° Á¢¼ö¸¦ ÇϼžßÇϸç, ¹ÝÇ°Á¢¼ö ¾øÀÌ ¹Ý¼ÛÇϰųª, ¿ìÆíÀ¸·Î º¸³¾ °æ¿ì »óÇ° È®ÀÎÀÌ ¾î·Á¿ö ȯºÒÀÌ ºÒ°¡´ÉÇÒ ¼ö ÀÖÀ¸´Ï À¯ÀÇÇϽñ⠹ٶø´Ï´Ù. |
|
|
|
¹è¼Û¿¹Á¤ÀÏ ¾È³» |
ÀÎÅÍÆÄÅ© µµ¼´Â ¸ðµç »óÇ°¿¡ ´ëÇØ ¹è¼Û¿Ï·á¿¹Á¤ÀÏÀ» À¥»çÀÌÆ®¿¡ Ç¥½ÃÇÏ°í ÀÖ½À´Ï´Ù.
|
<ÀÎÅÍÆÄÅ© Á÷¹è¼Û »óÇ°> |
»óÇ°Àº ¿ù~Åä¿äÀÏ ¿ÀÀü 10½Ã ÀÌÀü ÁÖ¹®ºÐ¿¡ ´ëÇÏ¿© ´çÀÏ Ãâ°í/´çÀÏ ¹è¼Û¿Ï·á¸¦ º¸ÀåÇÏ´Â »óÇ°ÀÔ´Ï´Ù. |
»óÇ°Àº ¼¿ïÁö¿ª/ÆòÀÏ ÁÖ¹®ºÐÀº ´çÀÏ Ãâ°í/ÀÍÀÏ ¹è¼Û¿Ï·á¸¦ º¸ÀåÇϸç,
¼¿ï¿ÜÁö¿ª/ÆòÀÏ ÁÖ¹®ºÐÀÇ °æ¿ì´Â ¿ÀÈÄ 6½Ã±îÁö ÁÖ¹®ºÐ¿¡ ´ëÇÏ¿© ÀÍÀÏ ¹è¼Û¿Ï·á¸¦ º¸ÀåÇÏ´Â »óÇ°ÀÔ´Ï´Ù.
(´Ü, ¿ù¿äÀÏÀº 12½Ã±îÁö ÁÖ¹®¿¡ ÇÑÇÔ)
|
»óÇ°Àº, ÀÔ°í¿¹Á¤ÀÏ(Á¦Ç°Ãâ½ÃÀÏ)+Åùè»ç¹è¼ÛÀÏ(1ÀÏ)¿¡ ¹è¼Û¿Ï·á¸¦ º¸ÀåÇÕ´Ï´Ù. |
~
»óÇ°Àº À¯ÅëƯ¼º»ó ÀÎÅÍÆÄÅ©¿¡¼ Àç°í¸¦ º¸À¯ÇÏÁö ¾ÊÀº »óÇ°À¸·Î ÁÖ¹®ÀÏ+±âÁØÃâ°íÀÏ+Åùè»ç¹è¼ÛÀÏ(1ÀÏ)¿¡ ¹è¼Û¿Ï·á¸¦ º¸ÀåÇÕ´Ï´Ù.(Åä/°øÈÞÀÏÀº ¹è¼Û±â°£¿¡ Æ÷ÇÔµÇÁö ¾Ê½À´Ï´Ù.)
¡Ø±âÁØÃâ°íÀÏ:ÀÎÅÍÆÄÅ©°¡ »óÇ°À» ¼ö±ÞÇÏ¿© ¹°·ùâ°í¿¡¼ Æ÷Àå/Ãâ°íÇϱâ±îÁö ¼Ò¿äµÇ´Â ½Ã°£
|
|
<¾÷ü Á÷Á¢¹è¼Û/¿ÀǸ¶ÄÏ »óÇ°> |
~
»óÇ°Àº ¾÷ü°¡ ÁÖ¹®À» È®ÀÎÇÏ°í, Ãâ°íÇϱâ±îÁö °É¸®´Â ½Ã°£ÀÔ´Ï´Ù. ÁÖ¹®ÀÏ+±âÁØÃâ°íÀÏ+Åùè»ç¹è¼ÛÀÏ(2ÀÏ)¿¡ ¹è¼Û¿Ï·á¸¦ º¸ÀåÇÕ´Ï´Ù.(Åä/°øÈÞÀÏÀº ¹è¼Û±â°£¿¡ Æ÷ÇÔµÇÁö ¾Ê½À´Ï´Ù.)
¡Ø5ÀÏÀ̳» Ãâ°í°¡ ½ÃÀÛµÇÁö ¾ÊÀ»½Ã, ¿ÀǸ¶ÄÏ »óÇ°Àº ÀÚµ¿À¸·Î ÁÖ¹®ÀÌ Ãë¼ÒµÇ¸ç, °í°´´Ô²² Ç°Àýº¸»ó±ÝÀ» Áö±ÞÇØ µå¸³´Ï´Ù.
|
|
|
¹è¼Ûºñ ¾È³» |
µµ¼(Áß°íµµ¼ Æ÷ÇÔ)¸¸ ±¸¸ÅÇϽøé : ¹è¼Ûºñ 2,000¿ø (1¸¸¿øÀÌ»ó ±¸¸Å ½Ã ¹«·á¹è¼Û) À½¹Ý/DVD¸¸ ±¸¸ÅÇϽøé : ¹è¼Ûºñ 1,500¿ø (2¸¸¿øÀÌ»ó ±¸¸Å ½Ã ¹«·á¹è¼Û)
ÀâÁö/¸¸È/±âÇÁÆ®¸¸ ±¸¸ÅÇϽøé : ¹è¼Ûºñ 2,000¿ø (2¸¸¿øÀÌ»ó ±¸¸Å ½Ã ¹«·á¹è¼Û)
µµ¼¿Í À½¹Ý/DVD¸¦ ÇÔ²² ±¸¸ÅÇϽøé : ¹è¼Ûºñ 1,500¿ø 1¸¸¿øÀÌ»ó ±¸¸Å ½Ã ¹«·á¹è¼Û)
µµ¼¿Í ÀâÁö/¸¸È/±âÇÁÆ®/Áß°íÁ÷¹è¼Û»óÇ°À» ÇÔ²² ±¸¸ÅÇϽøé : 2,000¿ø (1¸¸¿øÀÌ»ó ±¸¸Å ½Ã ¹«·á¹è¼Û)
¾÷üÁ÷Á¢¹è¼Û»óÇ°À» ±¸¸Å½Ã : ¾÷üº°·Î »óÀÌÇÑ ¹è¼Ûºñ Àû¿ë
* ¼¼Æ®»óÇ°ÀÇ °æ¿ì ºÎºÐÃë¼Ò ½Ã Ãß°¡ ¹è¼Ûºñ°¡ ºÎ°úµÉ ¼ö ÀÖ½À´Ï´Ù.
* ºÏÄ«Æ®¿¡¼ ¹è¼Ûºñ¾ø¾Ö±â ¹öÆ°À» Ŭ¸¯Çϼż, µ¿ÀϾ÷ü»óÇ°À» Á¶±Ý ´õ ±¸¸ÅÇϽøé, ¹è¼Ûºñ¸¦ Àý¾àÇÏ½Ç ¼ö ÀÖ½À´Ï´Ù.
|
|
Çؿܹè¼Û ¾È³» |
ÀÎÅÍÆÄÅ©µµ¼¿¡¼´Â ±¹³»¿¡¼ ÁÖ¹®ÇϽðųª ÇØ¿Ü¿¡¼ ÁÖ¹®ÇÏ¿© ÇØ¿Ü·Î ¹è¼ÛÀ» ¿øÇÏ½Ç °æ¿ì DHL°ú Ư¾àÀ¸·Î Ã¥Á¤µÈ ¿ä±ÝÇ¥¿¡
ÀÇÇØ °³ÀÎÀÌ ÀÌ¿ëÇÏ´Â °æ¿ìº¸´Ù ¹è¼Û¿ä±ÝÀ» Å©°Ô ³·Ã߸ç DHL(www.dhl.co.kr)·Î Çؿܹè¼Û ¼ºñ½º¸¦ Á¦°øÇÕ´Ï´Ù.
Çؿܹè¼ÛÀº µµ¼/CD/DVD »óÇ°¿¡ ÇÑÇØ ¼ºñ½ºÇÏ°í ÀÖÀ¸¸ç, ´Ù¸¥ »óÇ°À» ºÏÄ«Æ®¿¡ ÇÔ²² ´ãÀ¸½Ç °æ¿ì Çؿܹè¼ÛÀÌ ºÒ°¡ÇÕ´Ï´Ù.
ÇØ¿ÜÁÖ¹®¹è¼Û ¼ºñ½º´Â ÀÎÅÍÆÄÅ© µµ¼ ȸ¿ø °¡ÀÔÀ» Çϼž߸¸ ½Åû °¡´ÉÇÕ´Ï´Ù. |
|
¾Ë¾ÆµÎ¼¼¿ä!!! |
µµ¸Å»ó ¹× Á¦ÀÛ»ç »çÁ¤¿¡ µû¶ó Ç°Àý/ÀýÆÇ µîÀÇ »çÀ¯·Î Ãë¼ÒµÉ ¼ö ÀÖ½À´Ï´Ù.
¿ÀǸ¶ÄϾ÷üÀÇ ¹è¼ÛÁö¿¬½Ã ÁÖ¹®ÀÌ ÀÚµ¿À¸·Î Ãë¼ÒµÉ ¼ö ÀÖ½À´Ï´Ù.
Ãâ°í°¡´É ½Ã°£ÀÌ ¼·Î ´Ù¸¥ »óÇ°À» ÇÔ²² ÁÖ¹®ÇÒ °æ¿ì Ãâ°í°¡´É ½Ã°£ÀÌ °¡Àå ±ä ±âÁØÀ¸·Î ¹è¼ÛµË´Ï´Ù.
À¯ÅëÀÇ Æ¯¼º»ó Ãâ°í±â°£Àº ¿¹Á¤º¸´Ù ¾Õ´ç°ÜÁö°Å³ª ´ÊÃçÁú ¼ö ÀÖ½À´Ï´Ù.
Åùè»ç ¹è¼ÛÀÏÀÎ ¼¿ï ¹× ¼öµµ±ÇÀº 1~2ÀÏ, Áö¹æÀº 2~3ÀÏ, µµ¼, »ê°£, ±ººÎ´ë´Â 3ÀÏ ÀÌ»óÀÇ ½Ã°£ÀÌ ¼Ò¿äµË´Ï´Ù. |
|
|
|
|