SlideShare a Scribd company logo
1 of 18
Download to read offline
The Go gopher was designed by Renée French.
The gopher stickers was made by Takuya Ueda.
Licensed under the Creative Commons 3.0 Attributions license.
Goにおける
バージョン管理の必要性
− vgoについて −
2018/06/14
@Fukuoka.go#11
自己紹介
上田拓也
@tenntenn
所属
コミュニティ活動
Go ビギナーズ
Go Conference
上田拓也
@tenntenn
株式会社メルペイ
エキスパートチーム
2
メルペイ エキスパートチーム
技術をアウトプットするところに技術は集まる
■ エキスパートチームとは?
● 50%以上の時間を技術コミュニティへの貢献に充てる
■ エキスパートチームの役割
● 社内に新しい技術を取り取り込む
● 社外のコミュニティなどを通じて社会へ還元する
■ エキスパートチームの活動
● カンファレンス・勉強会の開催/運営
● 対外的な講演活動
● 執筆、雑誌への寄稿、インタビュー
● 社内外での担当技術の普及推進
@tenntenn
担当:Go・GCP
@mhidaka
担当:Android
メンバー
3
vgoとは?
■ 将来的に標準になるであろうバージョン管理ツール
● https://github.com/golang/vgo
● Go1.11(2018年8月予定)でテクニカルレビュー
● Go1.12(2019年2月予定)で正式導入
■ vgoの特徴
● ビルド時に依存関係を解決する(goツールのように)
● ベンダリングが不要になる
● 新しくモジュールという概念単位でバージョン管理する
● 互換性がなくなる場合はインポートパスを変える
● 可能な限り古いバージョンが優先される(Minimal Version Selection)
【参考】
Go & Versioning by Russ Cox
https://research.swtch.com/vgo
Go1.0以前の話
■ Makefileを使っていた
● 6g(コンパイラ)や6l(リンカ)を使ってビルド
● サンプルのMakefileが付いていてそれを利用していた
● 依存関係はMakefileの中にかかれていた
● gobuildというラッパーも存在していた
参考:https://ymotongpoo.hatenablog.com/entry/2015/10/13/104247
goinstallの登場
■ 2010年2月に登場
■ GitHubやBitbucketからダウンロードして配置する
■ Makefileほどの柔軟性はないが利便性が向上
■ importパスのルールの確立
● ソースコードの中にすべての依存関係が記述される
● go vetなどの静的解析ツールが簡単につくれるようになった
■ 2012年2月のGo1.0リリースでgo getに
go getの登場で解決したこと
■ 簡単にビルドができるようになった
■ 作ったものを簡単に公開・再利用できるようになった
● 現在のGoのコミュニティを形成する上で重要なファクター
● go getすることで簡単に他の人が作ったパッケージを利用できる
■ ビルドシステムを意識しなくてよい
● 6gや6lなどを気にしなくてよい
● 依存関係の解決方法などは勝手にやってくれる
go getで解決できなかったこと
■ バージョン付けとAPIの安定性
● バージョン付けができない
● アップデートによって何が変わるのかユーザに提示できない
● gopkg.inなどの登場
■ ベンダリングとビルドの再現可能性
● ビルドの再現性がとれない
● 取得時に常に最新を見てしまうこと
● godep、glide、gpなどの登場
● ベンダリングの対応(Go1.5以上)
ビルドが解決できない例
D: 1.0
go get D
1. パッケージDのインストール
D: 1.0
go get C
C: 1.8
D≧1.4
2. パッケージCのインストール
D: 1.6
go get -u D
C: 1.8
D≧1.4
3. パッケージDの更新
古
い
※CはDのバージョン1.4以上に依存
バ
グ
うまくビルドができない!
depの登場
■ 公式によるバージョン管理の導入の実験
● GopherCon 2016のHack Dayで議論が行われた
● そこからdepが登場した
● https://github.com/golang/dep
■ The New Era of Go Package Management
● GopherCon 2017においての発表
● depのやっていきを発表
● semverの推奨
depはgoツールに
直接導入されるものではなかった
そしてvgoへ
■ vgoで提案すること
● Import Compatibility Rule
● Minimal Version Selection
● Go Mobuleの導入
● 現在のワークフローを壊さずにgoツールに導入する
Import Compatibility Rule
■ importパスが同じ場合は後方互換性を維持する
● 後方互換性が取れない場合はインポートパスを返す
import "github.com/tenntenn/hoge"
import hoge "github.com/tenntenn/hoge/v2"
後方互換性が担保できない場合
Minimal Version Selection
■ 最小バージョンの選択
● 選択できるバージョンのうち最も古いバージョンを選択
● どんどんバージョンアップされても常に同じ(=古い)ものを使う
● 特定のバージョンを指定すれば新しいものを使うことはできる
● 依存モジュールの下限だけ指定することによって、一意にビルドに使用す
るバージョンが特定できる
Go Moduleの導入
■ バージョン付けを行う単位
● go.modファイルを使って依存モジュールを記述
● バージョンはsemverで記述する
● 一応特定のコミットも指定できる
// My hello, world.
module "rsc.io/hello"
require (
"golang.org/x/text" v0.0.0-20180208041248-4e4a3210bb54
"rsc.io/quote" v1.5.2
)
vgoが普及するために必要なこと
■ vgoが登場した背景の理解
● Go & Versioning を読みましょう
■ semverによるバージョン管理
● 自分のライブラリをsemverで管理しましょう
○ 私もやらなきゃ
● 自分の使ってるライブラリにissueを上げる
https://github.com/golang/appengine/issues/145
vgoを体験したければ
■ A Tour of Versioned Go (vgo)
● https://research.swtch.com/vgo-tour
● 和訳:https://qiita.com/nekketsuuu/items/589bc29f00b507492a96
Go with Versions
■ GopherCon Singapore 2018でのRuss Coxの発表
Thank you!
twitter: @tenntenn
Qiita: tenntenn
connpass: tenntenn
18

More Related Content

What's hot

方策勾配型強化学習の基礎と応用
方策勾配型強化学習の基礎と応用方策勾配型強化学習の基礎と応用
方策勾配型強化学習の基礎と応用Ryo Iwaki
 
推薦アルゴリズムの今までとこれから
推薦アルゴリズムの今までとこれから推薦アルゴリズムの今までとこれから
推薦アルゴリズムの今までとこれからcyberagent
 
.NETラボ 勉強会 2021年1月 「C#で機械学習」
.NETラボ 勉強会 2021年1月 「C#で機械学習」.NETラボ 勉強会 2021年1月 「C#で機械学習」
.NETラボ 勉強会 2021年1月 「C#で機械学習」Fujio Kojima
 
最新リリース:Optuna V3の全て - 2022/12/10 Optuna Meetup #2
最新リリース:Optuna V3の全て - 2022/12/10 Optuna Meetup #2最新リリース:Optuna V3の全て - 2022/12/10 Optuna Meetup #2
最新リリース:Optuna V3の全て - 2022/12/10 Optuna Meetup #2Preferred Networks
 
Optuna Dashboardの紹介と設計解説 - 2022/12/10 Optuna Meetup #2
Optuna Dashboardの紹介と設計解説 - 2022/12/10 Optuna Meetup #2Optuna Dashboardの紹介と設計解説 - 2022/12/10 Optuna Meetup #2
Optuna Dashboardの紹介と設計解説 - 2022/12/10 Optuna Meetup #2Preferred Networks
 
[DL輪読会]Reward Augmented Maximum Likelihood for Neural Structured Prediction
[DL輪読会]Reward Augmented Maximum Likelihood for Neural Structured Prediction[DL輪読会]Reward Augmented Maximum Likelihood for Neural Structured Prediction
[DL輪読会]Reward Augmented Maximum Likelihood for Neural Structured PredictionDeep Learning JP
 
JVMパラメータチューニングにおけるOptunaの活用事例 ( Optuna Meetup #1 )
JVMパラメータチューニングにおけるOptunaの活用事例 ( Optuna Meetup #1 ) JVMパラメータチューニングにおけるOptunaの活用事例 ( Optuna Meetup #1 )
JVMパラメータチューニングにおけるOptunaの活用事例 ( Optuna Meetup #1 ) Hironobu Isoda
 
【DL輪読会】時系列予測 Transfomers の精度向上手法
【DL輪読会】時系列予測 Transfomers の精度向上手法【DL輪読会】時系列予測 Transfomers の精度向上手法
【DL輪読会】時系列予測 Transfomers の精度向上手法Deep Learning JP
 
論文紹介 Semi-supervised Learning with Deep Generative Models
論文紹介 Semi-supervised Learning with Deep Generative Models論文紹介 Semi-supervised Learning with Deep Generative Models
論文紹介 Semi-supervised Learning with Deep Generative ModelsSeiya Tokui
 
EPro-PnP: Generalized End-to-End Probabilistic Perspective-n-Points for Monoc...
EPro-PnP: Generalized End-to-End Probabilistic Perspective-n-Points for Monoc...EPro-PnP: Generalized End-to-End Probabilistic Perspective-n-Points for Monoc...
EPro-PnP: Generalized End-to-End Probabilistic Perspective-n-Points for Monoc...Kazuyuki Miyazawa
 
正規表現入門 星の高さを求めて
正規表現入門 星の高さを求めて正規表現入門 星の高さを求めて
正規表現入門 星の高さを求めてRyoma Sin'ya
 
2019年度チュートリアルBPE
2019年度チュートリアルBPE2019年度チュートリアルBPE
2019年度チュートリアルBPE広樹 本間
 
知識グラフの埋め込みとその応用 (第10回ステアラボ人工知能セミナー)
知識グラフの埋め込みとその応用 (第10回ステアラボ人工知能セミナー)知識グラフの埋め込みとその応用 (第10回ステアラボ人工知能セミナー)
知識グラフの埋め込みとその応用 (第10回ステアラボ人工知能セミナー)STAIR Lab, Chiba Institute of Technology
 
(DL hacks輪読) Variational Dropout and the Local Reparameterization Trick
(DL hacks輪読) Variational Dropout and the Local Reparameterization Trick(DL hacks輪読) Variational Dropout and the Local Reparameterization Trick
(DL hacks輪読) Variational Dropout and the Local Reparameterization TrickMasahiro Suzuki
 
シンギュラリティを知らずに機械学習を語るな
シンギュラリティを知らずに機械学習を語るなシンギュラリティを知らずに機械学習を語るな
シンギュラリティを知らずに機械学習を語るなhoxo_m
 
CMA-ESサンプラーによるハイパーパラメータ最適化 at Optuna Meetup #1
CMA-ESサンプラーによるハイパーパラメータ最適化 at Optuna Meetup #1CMA-ESサンプラーによるハイパーパラメータ最適化 at Optuna Meetup #1
CMA-ESサンプラーによるハイパーパラメータ最適化 at Optuna Meetup #1Masashi Shibata
 
Optuna on Kubeflow Pipeline 分散ハイパラチューニング
Optuna on Kubeflow Pipeline 分散ハイパラチューニングOptuna on Kubeflow Pipeline 分散ハイパラチューニング
Optuna on Kubeflow Pipeline 分散ハイパラチューニングTakashi Suzuki
 
TensorFlowで逆強化学習
TensorFlowで逆強化学習TensorFlowで逆強化学習
TensorFlowで逆強化学習Mitsuhisa Ohta
 
Matrix Factorizationを使った評価予測
Matrix Factorizationを使った評価予測Matrix Factorizationを使った評価予測
Matrix Factorizationを使った評価予測JAVA DM
 

What's hot (20)

方策勾配型強化学習の基礎と応用
方策勾配型強化学習の基礎と応用方策勾配型強化学習の基礎と応用
方策勾配型強化学習の基礎と応用
 
推薦アルゴリズムの今までとこれから
推薦アルゴリズムの今までとこれから推薦アルゴリズムの今までとこれから
推薦アルゴリズムの今までとこれから
 
.NETラボ 勉強会 2021年1月 「C#で機械学習」
.NETラボ 勉強会 2021年1月 「C#で機械学習」.NETラボ 勉強会 2021年1月 「C#で機械学習」
.NETラボ 勉強会 2021年1月 「C#で機械学習」
 
最新リリース:Optuna V3の全て - 2022/12/10 Optuna Meetup #2
最新リリース:Optuna V3の全て - 2022/12/10 Optuna Meetup #2最新リリース:Optuna V3の全て - 2022/12/10 Optuna Meetup #2
最新リリース:Optuna V3の全て - 2022/12/10 Optuna Meetup #2
 
Optuna Dashboardの紹介と設計解説 - 2022/12/10 Optuna Meetup #2
Optuna Dashboardの紹介と設計解説 - 2022/12/10 Optuna Meetup #2Optuna Dashboardの紹介と設計解説 - 2022/12/10 Optuna Meetup #2
Optuna Dashboardの紹介と設計解説 - 2022/12/10 Optuna Meetup #2
 
[DL輪読会]Reward Augmented Maximum Likelihood for Neural Structured Prediction
[DL輪読会]Reward Augmented Maximum Likelihood for Neural Structured Prediction[DL輪読会]Reward Augmented Maximum Likelihood for Neural Structured Prediction
[DL輪読会]Reward Augmented Maximum Likelihood for Neural Structured Prediction
 
JVMパラメータチューニングにおけるOptunaの活用事例 ( Optuna Meetup #1 )
JVMパラメータチューニングにおけるOptunaの活用事例 ( Optuna Meetup #1 ) JVMパラメータチューニングにおけるOptunaの活用事例 ( Optuna Meetup #1 )
JVMパラメータチューニングにおけるOptunaの活用事例 ( Optuna Meetup #1 )
 
【DL輪読会】時系列予測 Transfomers の精度向上手法
【DL輪読会】時系列予測 Transfomers の精度向上手法【DL輪読会】時系列予測 Transfomers の精度向上手法
【DL輪読会】時系列予測 Transfomers の精度向上手法
 
論文紹介 Semi-supervised Learning with Deep Generative Models
論文紹介 Semi-supervised Learning with Deep Generative Models論文紹介 Semi-supervised Learning with Deep Generative Models
論文紹介 Semi-supervised Learning with Deep Generative Models
 
EPro-PnP: Generalized End-to-End Probabilistic Perspective-n-Points for Monoc...
EPro-PnP: Generalized End-to-End Probabilistic Perspective-n-Points for Monoc...EPro-PnP: Generalized End-to-End Probabilistic Perspective-n-Points for Monoc...
EPro-PnP: Generalized End-to-End Probabilistic Perspective-n-Points for Monoc...
 
正規表現入門 星の高さを求めて
正規表現入門 星の高さを求めて正規表現入門 星の高さを求めて
正規表現入門 星の高さを求めて
 
2019年度チュートリアルBPE
2019年度チュートリアルBPE2019年度チュートリアルBPE
2019年度チュートリアルBPE
 
知識グラフの埋め込みとその応用 (第10回ステアラボ人工知能セミナー)
知識グラフの埋め込みとその応用 (第10回ステアラボ人工知能セミナー)知識グラフの埋め込みとその応用 (第10回ステアラボ人工知能セミナー)
知識グラフの埋め込みとその応用 (第10回ステアラボ人工知能セミナー)
 
(DL hacks輪読) Variational Dropout and the Local Reparameterization Trick
(DL hacks輪読) Variational Dropout and the Local Reparameterization Trick(DL hacks輪読) Variational Dropout and the Local Reparameterization Trick
(DL hacks輪読) Variational Dropout and the Local Reparameterization Trick
 
シンギュラリティを知らずに機械学習を語るな
シンギュラリティを知らずに機械学習を語るなシンギュラリティを知らずに機械学習を語るな
シンギュラリティを知らずに機械学習を語るな
 
CMA-ESサンプラーによるハイパーパラメータ最適化 at Optuna Meetup #1
CMA-ESサンプラーによるハイパーパラメータ最適化 at Optuna Meetup #1CMA-ESサンプラーによるハイパーパラメータ最適化 at Optuna Meetup #1
CMA-ESサンプラーによるハイパーパラメータ最適化 at Optuna Meetup #1
 
Optuna on Kubeflow Pipeline 分散ハイパラチューニング
Optuna on Kubeflow Pipeline 分散ハイパラチューニングOptuna on Kubeflow Pipeline 分散ハイパラチューニング
Optuna on Kubeflow Pipeline 分散ハイパラチューニング
 
TensorFlowで逆強化学習
TensorFlowで逆強化学習TensorFlowで逆強化学習
TensorFlowで逆強化学習
 
For MANABIYA
For MANABIYAFor MANABIYA
For MANABIYA
 
Matrix Factorizationを使った評価予測
Matrix Factorizationを使った評価予測Matrix Factorizationを使った評価予測
Matrix Factorizationを使った評価予測
 

Similar to Goにおけるバージョン管理の必要性 − vgoについて −

WebAssembly with Go
WebAssembly with GoWebAssembly with Go
WebAssembly with GoTakuya Ueda
 
メルカリ カウルのマスタデータの更新
メルカリ カウルのマスタデータの更新メルカリ カウルのマスタデータの更新
メルカリ カウルのマスタデータの更新Takuya Ueda
 
そうだ、Goを始めよう
そうだ、Goを始めようそうだ、Goを始めよう
そうだ、Goを始めようTakuya Ueda
 
楽天の中のわたしと勉強会
楽天の中のわたしと勉強会楽天の中のわたしと勉強会
楽天の中のわたしと勉強会Rakuten Group, Inc.
 
勉強会カンファレンス2012
勉強会カンファレンス2012勉強会カンファレンス2012
勉強会カンファレンス2012Hiro Yoshioka
 
グリーで行われている勉強会とその特徴 ✕ 勉強会を主催してみた話
グリーで行われている勉強会とその特徴 ✕ 勉強会を主催してみた話グリーで行われている勉強会とその特徴 ✕ 勉強会を主催してみた話
グリーで行われている勉強会とその特徴 ✕ 勉強会を主催してみた話gree_tech
 
勉強会への一歩を踏み出すために
勉強会への一歩を踏み出すために勉強会への一歩を踏み出すために
勉強会への一歩を踏み出すためにAkihiko Horiuchi
 
GAE/Goとsyncパッケージ
GAE/GoとsyncパッケージGAE/Goとsyncパッケージ
GAE/GoとsyncパッケージTakuya Ueda
 
docomo Developer Supportを活用しよう
docomo Developer Supportを活用しようdocomo Developer Supportを活用しよう
docomo Developer Supportを活用しようShinya Nakajima
 
勉強会カンファレンス2011、企業と勉強会
勉強会カンファレンス2011、企業と勉強会勉強会カンファレンス2011、企業と勉強会
勉強会カンファレンス2011、企業と勉強会Hiro Yoshioka
 
Microsoft MVP x Passion for community
Microsoft MVP x Passion for communityMicrosoft MVP x Passion for community
Microsoft MVP x Passion for communityRie Moriguchi
 
海外メンバーを巻き込んで プロダクトマネジメントするときの心得 #pmjp #dots
海外メンバーを巻き込んでプロダクトマネジメントするときの心得 #pmjp #dots海外メンバーを巻き込んでプロダクトマネジメントするときの心得 #pmjp #dots
海外メンバーを巻き込んで プロダクトマネジメントするときの心得 #pmjp #dotsTakahiro Masaki
 
勉強会勉強会、DevLOVE関西
勉強会勉強会、DevLOVE関西勉強会勉強会、DevLOVE関西
勉強会勉強会、DevLOVE関西Hiro Yoshioka
 
Itca yammer提案110615
Itca yammer提案110615Itca yammer提案110615
Itca yammer提案110615伸夫 森本
 
はじめてのアジャイル - Agile in a nutshell
はじめてのアジャイル - Agile in a nutshellはじめてのアジャイル - Agile in a nutshell
はじめてのアジャイル - Agile in a nutshellDai FUJIHARA
 
Bot frameworkでdocomo Developer Supportを活用しよう
Bot frameworkでdocomo Developer Supportを活用しようBot frameworkでdocomo Developer Supportを活用しよう
Bot frameworkでdocomo Developer Supportを活用しようShinya Nakajima
 
Go conference 2021 autumn
Go conference 2021 autumnGo conference 2021 autumn
Go conference 2021 autumnmasahiko ito
 
kintoneで地図アプリを制覇する 〜SIerの挑戦〜
kintoneで地図アプリを制覇する 〜SIerの挑戦〜kintoneで地図アプリを制覇する 〜SIerの挑戦〜
kintoneで地図アプリを制覇する 〜SIerの挑戦〜kintone Café 名古屋支部
 
ビザスクを支える技術 2017
ビザスクを支える技術 2017ビザスクを支える技術 2017
ビザスクを支える技術 2017創史 花村
 

Similar to Goにおけるバージョン管理の必要性 − vgoについて − (20)

WebAssembly with Go
WebAssembly with GoWebAssembly with Go
WebAssembly with Go
 
メルカリ カウルのマスタデータの更新
メルカリ カウルのマスタデータの更新メルカリ カウルのマスタデータの更新
メルカリ カウルのマスタデータの更新
 
そうだ、Goを始めよう
そうだ、Goを始めようそうだ、Goを始めよう
そうだ、Goを始めよう
 
楽天の中のわたしと勉強会
楽天の中のわたしと勉強会楽天の中のわたしと勉強会
楽天の中のわたしと勉強会
 
勉強会カンファレンス2012
勉強会カンファレンス2012勉強会カンファレンス2012
勉強会カンファレンス2012
 
グリーで行われている勉強会とその特徴 ✕ 勉強会を主催してみた話
グリーで行われている勉強会とその特徴 ✕ 勉強会を主催してみた話グリーで行われている勉強会とその特徴 ✕ 勉強会を主催してみた話
グリーで行われている勉強会とその特徴 ✕ 勉強会を主催してみた話
 
勉強会への一歩を踏み出すために
勉強会への一歩を踏み出すために勉強会への一歩を踏み出すために
勉強会への一歩を踏み出すために
 
GAE/Goとsyncパッケージ
GAE/GoとsyncパッケージGAE/Goとsyncパッケージ
GAE/Goとsyncパッケージ
 
docomo Developer Supportを活用しよう
docomo Developer Supportを活用しようdocomo Developer Supportを活用しよう
docomo Developer Supportを活用しよう
 
勉強会カンファレンス2011、企業と勉強会
勉強会カンファレンス2011、企業と勉強会勉強会カンファレンス2011、企業と勉強会
勉強会カンファレンス2011、企業と勉強会
 
Microsoft MVP x Passion for community
Microsoft MVP x Passion for communityMicrosoft MVP x Passion for community
Microsoft MVP x Passion for community
 
海外メンバーを巻き込んで プロダクトマネジメントするときの心得 #pmjp #dots
海外メンバーを巻き込んでプロダクトマネジメントするときの心得 #pmjp #dots海外メンバーを巻き込んでプロダクトマネジメントするときの心得 #pmjp #dots
海外メンバーを巻き込んで プロダクトマネジメントするときの心得 #pmjp #dots
 
勉強会勉強会、DevLOVE関西
勉強会勉強会、DevLOVE関西勉強会勉強会、DevLOVE関西
勉強会勉強会、DevLOVE関西
 
Itca yammer提案110615
Itca yammer提案110615Itca yammer提案110615
Itca yammer提案110615
 
はじめてのアジャイル - Agile in a nutshell
はじめてのアジャイル - Agile in a nutshellはじめてのアジャイル - Agile in a nutshell
はじめてのアジャイル - Agile in a nutshell
 
はじめてのアジャイル
はじめてのアジャイルはじめてのアジャイル
はじめてのアジャイル
 
Bot frameworkでdocomo Developer Supportを活用しよう
Bot frameworkでdocomo Developer Supportを活用しようBot frameworkでdocomo Developer Supportを活用しよう
Bot frameworkでdocomo Developer Supportを活用しよう
 
Go conference 2021 autumn
Go conference 2021 autumnGo conference 2021 autumn
Go conference 2021 autumn
 
kintoneで地図アプリを制覇する 〜SIerの挑戦〜
kintoneで地図アプリを制覇する 〜SIerの挑戦〜kintoneで地図アプリを制覇する 〜SIerの挑戦〜
kintoneで地図アプリを制覇する 〜SIerの挑戦〜
 
ビザスクを支える技術 2017
ビザスクを支える技術 2017ビザスクを支える技術 2017
ビザスクを支える技術 2017
 

More from Takuya Ueda

静的解析を使った開発ツールの開発
静的解析を使った開発ツールの開発静的解析を使った開発ツールの開発
静的解析を使った開発ツールの開発Takuya Ueda
 
マスター・オブ・goパッケージ
マスター・オブ・goパッケージマスター・オブ・goパッケージ
マスター・オブ・goパッケージTakuya Ueda
 
Go1.8 for Google App Engine
Go1.8 for Google App EngineGo1.8 for Google App Engine
Go1.8 for Google App EngineTakuya Ueda
 
Go Friday 傑作選
Go Friday 傑作選Go Friday 傑作選
Go Friday 傑作選Takuya Ueda
 
GoによるiOSアプリの開発
GoによるiOSアプリの開発GoによるiOSアプリの開発
GoによるiOSアプリの開発Takuya Ueda
 
Static Analysis in Go
Static Analysis in GoStatic Analysis in Go
Static Analysis in GoTakuya Ueda
 
静的解析とUIの自動生成を駆使してモバイルアプリの運用コストを大幅に下げた話
静的解析とUIの自動生成を駆使してモバイルアプリの運用コストを大幅に下げた話静的解析とUIの自動生成を駆使してモバイルアプリの運用コストを大幅に下げた話
静的解析とUIの自動生成を駆使してモバイルアプリの運用コストを大幅に下げた話Takuya Ueda
 
メルカリ・ソウゾウでは どうGoを活用しているのか?
メルカリ・ソウゾウでは どうGoを活用しているのか?メルカリ・ソウゾウでは どうGoを活用しているのか?
メルカリ・ソウゾウでは どうGoを活用しているのか?Takuya Ueda
 
エキスパートGo
エキスパートGoエキスパートGo
エキスパートGoTakuya Ueda
 
Go静的解析ハンズオン
Go静的解析ハンズオンGo静的解析ハンズオン
Go静的解析ハンズオンTakuya Ueda
 
Goにおける静的解析と製品開発への応用
Goにおける静的解析と製品開発への応用Goにおける静的解析と製品開発への応用
Goにおける静的解析と製品開発への応用Takuya Ueda
 
オススメの標準・準標準パッケージ20選
オススメの標準・準標準パッケージ20選オススメの標準・準標準パッケージ20選
オススメの標準・準標準パッケージ20選Takuya Ueda
 
Gopher Fest 2017参加レポート
Gopher Fest 2017参加レポートGopher Fest 2017参加レポート
Gopher Fest 2017参加レポートTakuya Ueda
 
Google Assistant関係のセッションまとめ
Google Assistant関係のセッションまとめGoogle Assistant関係のセッションまとめ
Google Assistant関係のセッションまとめTakuya Ueda
 
Cloud functionsの紹介
Cloud functionsの紹介Cloud functionsの紹介
Cloud functionsの紹介Takuya Ueda
 
goパッケージで型情報を用いたソースコード検索を実現する
goパッケージで型情報を用いたソースコード検索を実現するgoパッケージで型情報を用いたソースコード検索を実現する
goパッケージで型情報を用いたソースコード検索を実現するTakuya Ueda
 
Cloud Functionsの紹介
Cloud Functionsの紹介Cloud Functionsの紹介
Cloud Functionsの紹介Takuya Ueda
 
条件式評価器の実装による管理ツールの抽象化
条件式評価器の実装による管理ツールの抽象化条件式評価器の実装による管理ツールの抽象化
条件式評価器の実装による管理ツールの抽象化Takuya Ueda
 
Namespace API を用いたマルチテナント型 Web アプリの実践
Namespace API を用いたマルチテナント型 Web アプリの実践Namespace API を用いたマルチテナント型 Web アプリの実践
Namespace API を用いたマルチテナント型 Web アプリの実践Takuya Ueda
 
Mobile Apps by Pure Go with Reverse Binding
Mobile Apps by Pure Go with Reverse BindingMobile Apps by Pure Go with Reverse Binding
Mobile Apps by Pure Go with Reverse BindingTakuya Ueda
 

More from Takuya Ueda (20)

静的解析を使った開発ツールの開発
静的解析を使った開発ツールの開発静的解析を使った開発ツールの開発
静的解析を使った開発ツールの開発
 
マスター・オブ・goパッケージ
マスター・オブ・goパッケージマスター・オブ・goパッケージ
マスター・オブ・goパッケージ
 
Go1.8 for Google App Engine
Go1.8 for Google App EngineGo1.8 for Google App Engine
Go1.8 for Google App Engine
 
Go Friday 傑作選
Go Friday 傑作選Go Friday 傑作選
Go Friday 傑作選
 
GoによるiOSアプリの開発
GoによるiOSアプリの開発GoによるiOSアプリの開発
GoによるiOSアプリの開発
 
Static Analysis in Go
Static Analysis in GoStatic Analysis in Go
Static Analysis in Go
 
静的解析とUIの自動生成を駆使してモバイルアプリの運用コストを大幅に下げた話
静的解析とUIの自動生成を駆使してモバイルアプリの運用コストを大幅に下げた話静的解析とUIの自動生成を駆使してモバイルアプリの運用コストを大幅に下げた話
静的解析とUIの自動生成を駆使してモバイルアプリの運用コストを大幅に下げた話
 
メルカリ・ソウゾウでは どうGoを活用しているのか?
メルカリ・ソウゾウでは どうGoを活用しているのか?メルカリ・ソウゾウでは どうGoを活用しているのか?
メルカリ・ソウゾウでは どうGoを活用しているのか?
 
エキスパートGo
エキスパートGoエキスパートGo
エキスパートGo
 
Go静的解析ハンズオン
Go静的解析ハンズオンGo静的解析ハンズオン
Go静的解析ハンズオン
 
Goにおける静的解析と製品開発への応用
Goにおける静的解析と製品開発への応用Goにおける静的解析と製品開発への応用
Goにおける静的解析と製品開発への応用
 
オススメの標準・準標準パッケージ20選
オススメの標準・準標準パッケージ20選オススメの標準・準標準パッケージ20選
オススメの標準・準標準パッケージ20選
 
Gopher Fest 2017参加レポート
Gopher Fest 2017参加レポートGopher Fest 2017参加レポート
Gopher Fest 2017参加レポート
 
Google Assistant関係のセッションまとめ
Google Assistant関係のセッションまとめGoogle Assistant関係のセッションまとめ
Google Assistant関係のセッションまとめ
 
Cloud functionsの紹介
Cloud functionsの紹介Cloud functionsの紹介
Cloud functionsの紹介
 
goパッケージで型情報を用いたソースコード検索を実現する
goパッケージで型情報を用いたソースコード検索を実現するgoパッケージで型情報を用いたソースコード検索を実現する
goパッケージで型情報を用いたソースコード検索を実現する
 
Cloud Functionsの紹介
Cloud Functionsの紹介Cloud Functionsの紹介
Cloud Functionsの紹介
 
条件式評価器の実装による管理ツールの抽象化
条件式評価器の実装による管理ツールの抽象化条件式評価器の実装による管理ツールの抽象化
条件式評価器の実装による管理ツールの抽象化
 
Namespace API を用いたマルチテナント型 Web アプリの実践
Namespace API を用いたマルチテナント型 Web アプリの実践Namespace API を用いたマルチテナント型 Web アプリの実践
Namespace API を用いたマルチテナント型 Web アプリの実践
 
Mobile Apps by Pure Go with Reverse Binding
Mobile Apps by Pure Go with Reverse BindingMobile Apps by Pure Go with Reverse Binding
Mobile Apps by Pure Go with Reverse Binding
 

Recently uploaded

NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NTT DATA Technology & Innovation
 
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfFumieNakayama
 
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfFumieNakayama
 
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?akihisamiyanaga1
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...博三 太田
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)Hiroshi Tomioka
 
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)UEHARA, Tetsutaro
 
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineerYuki Kikuchi
 

Recently uploaded (8)

NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
 
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
 
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
 
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
 
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
 

Goにおけるバージョン管理の必要性 − vgoについて −