Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
vgo(Versioned Go Prototype) #golangtokyo
Search
Asuka Suzuki
April 16, 2018
Technology
13
9.3k
vgo(Versioned Go Prototype) #golangtokyo
2018/04/16 golang.tokyo #14 の発表です
Asuka Suzuki
April 16, 2018
Tweet
Share
More Decks by Asuka Suzuki
See All by Asuka Suzuki
Firestore概要
tanksuzuki
0
120
ReactNativeで位置情報を利用したアプリを作る
tanksuzuki
0
830
シスコルータでチャットする
tanksuzuki
0
140
Other Decks in Technology
See All in Technology
dbt開発 with Claude Codeのためのガードレール設計
10xinc
2
1.2k
AIエージェント開発用SDKとローカルLLMをLINE Botと組み合わせてみた / LINEを使ったLT大会 #14
you
PRO
0
110
CDK CLIで使ってたあの機能、CDK Toolkit Libraryではどうやるの?
smt7174
4
160
共有と分離 - Compose Multiplatform "本番導入" の設計指針
error96num
2
390
大「個人開発サービス」時代に僕たちはどう生きるか
sotarok
20
9.9k
EncryptedSharedPreferences が deprecated になっちゃった!どうしよう! / Oh no! EncryptedSharedPreferences has been deprecated! What should I do?
yanzm
0
260
初めてAWSを使うときのセキュリティ覚書〜初心者支部編〜
cmusudakeisuke
1
240
Aurora DSQLはサーバーレスアーキテクチャの常識を変えるのか
iwatatomoya
1
920
【初心者向け】ローカルLLMの色々な動かし方まとめ
aratako
7
3.4k
生成AI時代のデータ基盤設計〜ペースレイヤリングで実現する高速開発と持続性〜 / Levtech Meetup_Session_2
sansan_randd
1
150
「何となくテストする」を卒業するためにプロダクトが動く仕組みを理解しよう
kawabeaver
0
390
Django's GeneratedField by example - DjangoCon US 2025
pauloxnet
0
150
Featured
See All Featured
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.5k
Bash Introduction
62gerente
615
210k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
131
19k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Agile that works and the tools we love
rasmusluckow
330
21k
Scaling GitHub
holman
463
140k
GitHub's CSS Performance
jonrohan
1032
460k
Building Adaptive Systems
keathley
43
2.7k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
18
1.1k
Build The Right Thing And Hit Your Dates
maggiecrowley
37
2.9k
Transcript
vgo HPMBOHUPLZP
λϯΫླ !UBOLTV[VLJ גࣜձࣾΤʔϐʔίϛϡχέʔγϣϯζ ("&(Pɾ'JSFCBTFɾHPQBDLFU 3FBDU3FEVY
λϯΫླ !UBOLTV[VLJ גࣜձࣾΤʔϐʔίϛϡχέʔγϣϯζ (PͰωοτϫʔΫϓϩάϥϛϯά ("&(PͷαʔϏε։ൃ ࠷ۙ࡞ͬͨͷ ը૾ΛΞοϓϩʔυ͢Δͱ $MPVE7JTJPO"1*ͰإΛݕग़ͯ͠ (PQIFSͬΆͯ͘͘͠ΕΔαʔϏε IUUQTHPQIFSJ[FDPN
λϯΫླ !UBOLTV[VLJ גࣜձࣾΤʔϐʔίϛϡχέʔγϣϯζ (PͰωοτϫʔΫϓϩάϥϛϯά ("&(PͷαʔϏε։ൃ ࠷ۙ࡞ͬͨͷ ը૾ΛΞοϓϩʔυ͢Δͱ $MPVE7JTJPO"1*ͰإΛݕग़ͯ͠ (PQIFSͬΆͯ͘͘͠ΕΔαʔϏε IUUQTHPQIFSJ[FDPN
ʁ vgo
HPίϚϯυʹΈࠐ·ΕΔ༧ఆͷύοέʔδཧػೳ ैདྷEFQHMJEFଞͰߦ͍ͬͯͨ͜ͱΛHPͰߦ͏
ϩʔυϚοϓ Α͏͘ύοέʔδཧ·ΘΓ͕མͪண͖ͦ͏ ݱࡏ (P (P ϓϩτλΠϓͱͯ͠WHPίϚϯυ͕ެ։ ςΫχΧϧϓϨϏϡʔ ਖ਼ࣜಋೖ
WHPʹΑͬͯมΘΔ͜ͱ #1ɹґଘؔͷղܾϏϧυ࣌ʹߦ͏ #2ɹWFOEPSσΟϨΫτϦ͕ෆཁʹͳΔ #3ɹഁյతͳมߋΛՃ͑ΔࡍJNQPSUQBUIΛม͑Δ #4ɹՄೳͳݶΓݹ͍όʔδϣϯ͕બ͞ΕΔ
#1ɹґଘؔͷղܾϏϧυ࣌ʹߦ͏
Ϗϧυରͷίʔυ package main // import "github.com/you/hello" import ( "fmt" "rsc.io/quote"
) func main() { fmt.Println(quote.Hello()) }
WHPCVJME $ vgo build vgo: resolving import "rsc.io/quote" vgo: finding
rsc.io/quote (latest) vgo: adding rsc.io/quote v1.5.2 vgo: finding rsc.io/quote v1.5.2 vgo: finding rsc.io/sampler v1.3.0 vgo: finding golang.org/x/text v0.0.0-20170915032832-14c0d48ead0c vgo: downloading rsc.io/quote v1.5.2 vgo: downloading rsc.io/sampler v1.3.0 vgo: downloading golang.org/x/text v0.0.0-20170915032832-14c0d48ead0c WHPCVJME࣌ͷϩά
WHPCVJME $ vgo build vgo: resolving import "rsc.io/quote" vgo: finding
rsc.io/quote (latest) vgo: adding rsc.io/quote v1.5.2 vgo: finding rsc.io/quote v1.5.2 vgo: finding rsc.io/sampler v1.3.0 vgo: finding golang.org/x/text v0.0.0-20170915032832-14c0d48ead0c vgo: downloading rsc.io/quote v1.5.2 vgo: downloading rsc.io/sampler v1.3.0 vgo: downloading golang.org/x/text v0.0.0-20170915032832-14c0d48ead0c HPHFUແ͠Ͱ͍͖ͳΓWHPCVJME͢Δ
WHPCVJME $ vgo build vgo: resolving import "rsc.io/quote" vgo: finding
rsc.io/quote (latest) vgo: adding rsc.io/quote v1.5.2 vgo: finding rsc.io/quote v1.5.2 vgo: finding rsc.io/sampler v1.3.0 vgo: finding golang.org/x/text v0.0.0-20170915032832-14c0d48ead0c vgo: downloading rsc.io/quote v1.5.2 vgo: downloading rsc.io/sampler v1.3.0 vgo: downloading golang.org/x/text v0.0.0-20170915032832-14c0d48ead0c ະͷJNQPSUzRVPUFzΛݕग़͠ɺ࠷৽൛Λμϯϩʔυ͢Δ
WHPCVJME $ vgo build vgo: resolving import "rsc.io/quote" vgo: finding
rsc.io/quote (latest) vgo: adding rsc.io/quote v1.5.2 vgo: finding rsc.io/quote v1.5.2 vgo: finding rsc.io/sampler v1.3.0 vgo: finding golang.org/x/text v0.0.0-20170915032832-14c0d48ead0c vgo: downloading rsc.io/quote v1.5.2 vgo: downloading rsc.io/sampler v1.3.0 vgo: downloading golang.org/x/text v0.0.0-20170915032832-14c0d48ead0c ͞ΒʹlRVPUFz͕ґଘ͢ΔύοέʔδΛμϯϩʔυ͢Δ
HPNPE module "github.com/you/hello" require ( "rsc.io/quote" v1.5.2 ) ґଘؔHPNPEϑΝΠϧͰཧ͞ΕΔ
HPNPE module "github.com/you/hello" require ( "rsc.io/quote" v1.5.2 ) ࣗͷJNQPSUQBUIͷએݴ
HPNPE module "github.com/you/hello" require ( "rsc.io/quote" v1.5.2 ) ґଘͷύοέʔδΛηϚϯςΟοΫόʔδϣχϯάͰཧ
#2ɹWFOEPSσΟϨΫτϦ͕ෆཁʹͳΔ
WFOEPSσΟϨΫτϦ͕ෆཁʹͳΔ ✱ WHPWFOEPSσ ΟϨΫτϦΛ࡞͠ͳ͍ ✱ ͦͷͨΊɺWFOEPSJOHͷͨΊʹ(01"5)ͷதͰ࡞ۀ͢Δඞཁ͕ͳ͍
WFOEPSσΟϨΫτϦ͕ෆཁʹͳΔ $GOPATH/src/v/ !"" rsc.io #""
[email protected]
#""
[email protected]
!""
[email protected]
WHPCVJMEͰऔಘͨ͠ύοέʔδ(01"5)TSDWʹอଘ͞ΕΔ
WFOEPSσΟϨΫτϦ͕ෆཁʹͳΔ $GOPATH/src/v/ !"" rsc.io #""
[email protected]
#""
[email protected]
!""
[email protected]
ಉ໊ͷύοέʔδόʔδϣϯผʹอଘ͞ΕɺHPNPE͔Βࢀর͢Δ
#3ɹഁյతͳมߋΛՃ͑ΔࡍJNQPSUQBUIΛม͑Δ *NQPSU$PNQBUJCJMJUZ3VMF
*NQPSU$PNQBUJCJMJUZ3VMF ✱ WHPͰѻ͏ύοέʔδɺޙํޓΛ࣋ͭ͜ͱ͕ٛԽ͞ΕΔ ✱ Ͳ͏ͯ͠ഁյతͳมߋ͕ඞཁͳ߹ɺ JNQPSUQBUIΛม͑Δ͜ͱͰผύοέʔδѻ͍ʹ͢Δ
*NQPSU$PNQBUJCJMJUZ3VMF HJUIVCDPNUBOLTV[VLJQLH HJUIVCDPNUBOLTV[VLJQLHW ผύοέʔδʹݟ͑ΔͷͰɺW͔ΒWͷॱ࣍Ҡߦ͕ՄೳʹͳΔ $BTF ੜύε HPQLHJOUBOLTV[VLJQLHW HPQLHJOUBOLTV[VLJQLHW $BTF HPQLHJO༻
#4ɹՄೳͳݶΓݹ͍όʔδϣϯ͕બ͞ΕΔ .JOJNBM7FSTJPO4FMFDUJPO
.JOJNBM7FSTJPO4FMFDUJPO EFQʮՄೳͳݶΓ࠷৽ͷόʔδϣϯʯΛબ͢Δ
.JOJNBM7FSTJPO4FMFDUJPO #%Λظ͠ɺ$%Λظ͢Δ " # $ % % %
.JOJNBM7FSTJPO4FMFDUJPO ʮՄೳͳݶΓ࠷৽ʯͰ͋Δ%͕બ͞ΕΔ " # $ % % %
.JOJNBM7FSTJPO4FMFDUJPO ʮՄೳͳݶΓ࠷৽ʯৗʹҠΓมΘΔˠϏϧυ࠶ݱੑʹ͕ग़ΔՄೳੑ " # $ % % % %
.JOJNBM7FSTJPO4FMFDUJPO WHPʮՄೳͳݶΓݹ͍όʔδϣϯʯΛબ͢Δ
.JOJNBM7FSTJPO4FMFDUJPO #%Λظ͠ɺ$%Λظ͢Δ " # $ % % %
.JOJNBM7FSTJPO4FMFDUJPO ʮՄೳͳݶΓҰ൪ݹ͍όʔδϣϯʯͰ͋Δ%͕બ͞ΕΔ " # $ % % %
.JOJNBM7FSTJPO4FMFDUJPO ΑΓݹ͍όʔδϣϯϦϦʔε͞Εͳ͍ͷͰɺϏϧυ҆ఆ͢Δ " # $ % % % %
.JOJNBM7FSTJPO4FMFDUJPO ͨͩ͠ɺ৽όʔδϣϯͷॏཁͳมߋ͕ɺ"ʹࣗಈͰద༻͞Εͳ͍͕͋Δ " # $ % % % %
.JOJNBM7FSTJPO4FMFDUJPO ղܾํ๏$ͷ։ൃऀ͕HPNPEΛ%ʹ͚Δ " # $ % % % %
.JOJNBM7FSTJPO4FMFDUJPO ղܾํ๏ࣗͰ$ΛGPSLͯ͠ɺHPNPEΛ%ʹ͚Δ " # $ % % % % $
GPSLFE
WHPʹΑͬͯมΘΔ͜ͱ #1ɹґଘؔͷղܾϏϧυ࣌ʹߦ͏ #2ɹWFOEPSσΟϨΫτϦ͕ෆཁʹͳΔ #3ɹഁյతͳมߋΛՃ͑ΔࡍJNQPSUQBUIΛม͑Δ #4ɹՄೳͳݶΓݹ͍όʔδϣϯ͕બ͞ΕΔ
·ͱΊ ✱ WFOEPSσΟϨΫτϦഇࢭʹΑΓɺ(01"5)͔Βղ์͞ΕΔ ✱ *NQPSU$PNQBUJCJMJUZ3VMFʹΑΓɺόʔδϣϯͷॱ࣍Ҡߦ͕ՄೳʹͳΔ ✱ .JOJNBM7FSTJPO4FMFDUJPOʹΑΓɺϏϧυͷ҆ఆੑ͕ߴ·Δ
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠