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
golang
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
tsuyoshi nakamura
August 31, 2016
Technology
54
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
golang
tsuyoshi nakamura
August 31, 2016
More Decks by tsuyoshi nakamura
See All by tsuyoshi nakamura
社内の勉強会で発表した_output_一部抜粋版_.pdf
tsuyoshi
0
500
PHPを少しでも早く_条件はあるよ_.pdf
tsuyoshi
0
87
スタートアップ6年目のレビュー文化.pdf
tsuyoshi
1
2k
PHPを少し深堀るよ.pdf
tsuyoshi
0
390
Reactive_Manifesto.pdf
tsuyoshi
0
89
About_Resilience.pdf
tsuyoshi
1
96
エンジニアの循環ってgood_or_bad_.pdf
tsuyoshi
0
1.3k
スタートアップしてからの失敗の数々
tsuyoshi
0
2.5k
スタートアップエンジニアの役割
tsuyoshi
0
550
Other Decks in Technology
See All in Technology
2026TECHFRESH畢業分享會 - 原生還是跨平台? App 開發踩坑實錄
line_developers_tw
PRO
0
1k
SONiCのLinuxベースを活かしたZabbix監視
sonic
0
160
社内 AI エージェント Synapse と セマンティックレイヤーの育て方
hiroakis
3
1.9k
2026 TECHFRESH 畢業分享會 - 開發日常大解密!從領域驅動到企業級上線
line_developers_tw
PRO
0
1k
2026TECHFRESH畢業分享會 - 葬送的通靈師:化系統與用戶雜訊成行動訊號
line_developers_tw
PRO
0
1k
Bucharest Tech Week 2026 - Reinventing testing practices in the AI era
edeandrea
PRO
1
160
失敗を資産に変えるClaude Code
shinyasaita
0
660
脆弱性対応、どこで線を引くか
rymiyamoto
1
390
【NRUG vol.18】なぜ多くのオブザーバビリティ導入は失敗するのか
nrug_member
0
130
AIのReact習熟度を測る
uhyo
2
570
2026TECHFRESH畢業分享會 - AI 時代的人生存檔點
line_developers_tw
PRO
0
1k
小さくはじめるSLI/SLO ~育てながら組織に定着させる実践知~ / Starting Small with SLI/SLOs: Building Adoption Through Continuous Growth
nari_ex
7
1.9k
Featured
See All Featured
Fireside Chat
paigeccino
42
3.9k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.4k
Test your architecture with Archunit
thirion
1
2.3k
What's in a price? How to price your products and services
michaelherold
247
13k
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
2
580
Building an army of robots
kneath
306
46k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
2k
Building Flexible Design Systems
yeseniaperezcruz
330
40k
brightonSEO & MeasureFest 2025 - Christian Goodrich - Winning strategies for Black Friday CRO & PPC
cargoodrich
3
730
Leo the Paperboy
mayatellez
7
1.8k
Faster Mobile Websites
deanohume
310
31k
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
1
250
Transcript
Go lang入門 2015-12-11 社内勉強会 Tsuyoshi Nakamura
動くデモまで出来れば良 かったのですが、すいま せん間に合いませんで した。
アジェンダ • Go langって? • 開発環境まわり • 今までのphp,java等のオブジェクト志向言語との違い • まとめ
Go言語って? • 登場時期:2009年 • Googleが開発 • 静的型付言語 今まで多く使ってきたLL言語とはちょっと違う 「コンパイルが必要 → javaをイメージ → 遅い」とはならない。らしい コンパイルされる為、凡ミス的なsyntax
errorとかは心配ない LLライクなC • ググる場合は 「go lang」とlangをつけないとヒットしない(個人的に一番重要)
開発周り • /usr/local/goに最新のgoをダウンロードして解凍。.bashrcを設定で終わり export GOPATH=~/.go export PATH=$PATH:/usr/local/go/bin • エディタ:fatih/vim-go(オールインワンプラグイン)あれば良い感じがする vimのパッケージ管理(neobundle)経由で「NeoBundle
‘fatih/vim-go’」で速攻入る それ以外に使っているプラグインは 「scrooloose/syntastic」シンタックスチェック 「ervandew/supertab」tabでコード補完 • IntelliJ周りは知らん • 標準でテストライブラリがgo言語にはあるけど「assertequals」使えないので (https://github.com/stretchr/testify)使おうと思ってるけど試してない ※吉田さん教えてくれた • 対話式の確認したい時(https://github.com/motemen/gore)。REPL ※吉田さん教えてくれた コードの変更、保存をトリガーにホットデプロイのリロードしてくれるプラグインも あるらしいので、合わせて検討中
オブジェクト志向言語との違い • 継承して拡張して使っていくという考えがない ややこしいけど、「合成・埋め込み」という考えがあり、それが代替になるっぽい 親クラスからまるっとメソッド等をもらって、独自に拡張するのでなく 再利用可能な部品を作り、必要に応じて合成して使うイメージ • 例外処置として「panic()」「recover()」とかあるけどtry〜catchとは何か違う。 まだ慣れてない。。。
• 略が多い。「var aaa int = 10」 = 「aaa := 10」 • ハードタブ • 関数の{} 位置が決まってる • ポインタ、並列処理、マップ、スライス、構造体、インターフェイス等々。。。
まとめ • 基本的なことはなんとなく理解できた。結構違う部分が多い気がする いろいろとはまりどこりいっぱいありそう • フレームワーク、ORM、テストあたりを触ってみる