Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
PHPエンジニアが転職してGoを書き始めたら楽しくなってきた話.pdf
Search
シュプレ
January 28, 2019
Technology
1.3k
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
PHPエンジニアが転職してGoを書き始めたら楽しくなってきた話.pdf
シュプレ
January 28, 2019
More Decks by シュプレ
See All by シュプレ
エンジニア(?)にオススメの本
spre55
0
180
GCP使ってテスト自動化したい.pdf
spre55
0
260
はじめてのCode4兄弟
spre55
0
350
2016HACKDAYS_52_HelloAgain
spre55
0
92
LANケーブル圧着入門
spre55
0
120
できるSEO! ver 2.1
spre55
0
72
Web班番外編 jQuery
spre55
0
150
pre講義 jQuery
spre55
0
120
Other Decks in Technology
See All in Technology
Claude Codeから見る、エンジニアの世界の変容とその先
oikon48
7
4.9k
Draft AIエージェントの トークン消費を最小化する 8つの原則
kinopeee
6
1.9k
re:Invent の去年のスケジュールを公開します!
miu_crescent
PRO
0
120
Microsoft のサポート ライフサイクルを理解する
murachiakira
PRO
0
240
AIに任せられるFlutterコードベースを作る 〜仕様をコードで表し、ハーネスで守る〜
myohei
1
460
今から始めるAWS環境の暗号移行 - ポスト量子時代に備える
sato4mi
0
120
ドメインエキスパートは いかにして AI を使って プロダクト開発をするか
tatsuyashiraishi
1
240
SLOを阻む不安
sraku2159
0
130
Lint の層を組み直した話
bengo4com
2
240
[FECONF-2026] 신대륙을 향한 카카오페이증권 프론트엔드 항해기 (이주승)
l1ghthouse
0
320
1週間、Opus封印でお願いします
kintotechdev
0
390
素人でもできた!AIを使った短編小説創作入門
delhi09
PRO
0
250
Featured
See All Featured
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
4.5k
Tell your own story through comics
letsgokoyo
1
1.1k
Designing for Timeless Needs
cassininazir
1
530
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
63
47k
Practical Orchestrator
shlominoach
192
12k
Skip the Path - Find Your Career Trail
mkilby
1
270
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
610
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
380
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
900
WCS-LA-2024
lcolladotor
0
940
Building Applications with DynamoDB
mza
96
7.3k
AI: The stuff that nobody shows you
jnunemaker
PRO
10
1.2k
Transcript
PHPエンジニアが 転職してGoを書き始めたら 楽しくなってきた話 シュプレ(@spre55) 1
1.転職してもうすぐ半年経ちます 2
ソーシャルゲームの会社で2年くらい勤めたタイミングで、 転職をしようと思っていたら、友人から声をかけられ そのままGCPのパートナーの会社へJOIN 転職しました 3
転職前までやってきたこと ブラウザで動作するソーシャルゲームを作っていた。 主に、 ◆PHP ◇SASS をかいていた。 PHPに関しては自社製MVCフレームワークをつかっていた。 4
転職してから GCP、中でもGAEを使った開発。 最近はGAEとGoとFirebase Auth周りをいじいじしてる。 5
2.今どんなことをやっているか 6
GAE: Google App Engine 特徴 ◆チュートリアルやって10分でHelloWorldを全世界に公開できるスピード感 ◇基本的にGoogleにお任せなので楽 (スケーリング/負荷分散/ヘルスチェックなど) 7
Python 2.7 / 3.7 Java 7 / 8 Node.js 8
/ 10 PHP 5.5 / 7.2 Go 1.9 / 1.11 8 GAEのサポート言語
GAE/Go ◆Go 1.11に対応しました。 ー app.yamlに依存していた部分の緩和 ー 使ったことない人は使ってみよう! 9
Firebase Authentication 特徴 ◆アプリ/サービスの認証を簡単に実装できるようにしてくれるサービス ◇サインアップ/ログイン機能やソーシャル連携を手軽に実装できる 10
パスワード/電話番号 フェデレーションIDプロバイダ カスタムプロバイダ 各プロバイダ認証をサポート 11
12
3.Goをいじってみて感じたこと 13
Goの最初の印象(いじる前の印象) if err != nil { return nil, err }
14 // コードが長くなるイメージ // めんどくさそう
1.GOPATH ? GOROOT ? / goenv ? dep ? ◆
エディタの設定 ◇ バージョン関係管理ツール ◆ 依存関係管理ツール 15
2.シンタックスエラーをひたすら吐かれ・・・ ◆未使用パッケージのインポートでエラー ◇未使用変数の定義でエラー ◆「:=」で定義するところを「=」にしてた ◇型の不一致でエラー 16
3.配列の操作が慣れず・・・ ◆ソート ◇存在チェック ◆マージ ◇特定の値のチェック などなど 17
3.配列の操作が慣れず・・・ ◆PHPにおける配列 適当でよかった(全部array) ◇Goにおける配列 固定長(array)と可変長(slice)を意識する必要がある 18
4.DDDがわからん わからん 19
思ったより動的型付け言語 にあたまをやられていた 20
実際にPRについたコメントを載せる 21 ライブラリをコメントアウトしていたときのコメント ▼
実際にPRについたコメントを載せる 22 一文字変数の洗礼を受けたときのコメント ▼
実際にPRについたコメントを載せる 23 エラーを握りつぶしたときのコメント ▼
そして引き起こされるドメインモデル貧血症 24 ユースケース層が肥大化したときのコメント ▼
じゃあ、Goは不便なの? 25 ー そんなことはない
26
やり方はいろいろある 27 郷に入っては郷に従おう そうすると見えてくるものがある
社内で輪読会開いてみたり・・・ 28
挫折して、DDD Quicklyに走り・・・ 29
なんとか(ほぼ)一巡しました 30 https://www.infoq.com/jp/minibooks/domain-driven-design-quickly
まとめ いままで自分は,PHP の寛容さに頼って、 連想配列に適当にバンバンぶちこみ、 脳死でライブラリ使っていた・・・ それに気づかせてくれたGo そんなGoには感謝しかない 31
ありがとう 32
ありがとう 33 シュプレ@spre55
クラウドエースは絶賛エンジニア募集中 ◆ 一緒にGCPを盛り上げてくれるエンジニア募集 ◇ いっしょにタダ飯いこう! 興味のある方はシュプレ(@spre55)まで 34