PHPエンジニアが転職してGoを書き始めたら楽しくなってきた話.pdf

 PHPエンジニアが転職してGoを書き始めたら楽しくなってきた話.pdf

376c7980843c16d93521a017552246df?s=128

シュプレ

January 28, 2019
Tweet

Transcript

  1. PHPエンジニアが 転職してGoを書き始めたら 楽しくなってきた話 シュプレ(@spre55) 1

  2. 1.転職してもうすぐ半年経ちます 2

  3. ソーシャルゲームの会社で2年くらい勤めたタイミングで、 転職をしようと思っていたら、友人から声をかけられ そのままGCPのパートナーの会社へJOIN 転職しました 3

  4. 転職前までやってきたこと ブラウザで動作するソーシャルゲームを作っていた。 主に、 ◆PHP ◇SASS をかいていた。 PHPに関しては自社製MVCフレームワークをつかっていた。 4

  5. 転職してから GCP、中でもGAEを使った開発。 最近はGAEとGoとFirebase Auth周りをいじいじしてる。 5

  6. 2.今どんなことをやっているか 6

  7. GAE: Google App Engine 特徴 ◆チュートリアルやって10分でHelloWorldを全世界に公開できるスピード感 ◇基本的にGoogleにお任せなので楽 (スケーリング/負荷分散/ヘルスチェックなど) 7

  8. Python 2.7 / 3.7 Java 7 / 8 Node.js 8

    / 10 PHP 5.5 / 7.2 Go 1.9 / 1.11 8 GAEのサポート言語
  9. GAE/Go ◆Go 1.11に対応しました。  ー app.yamlに依存していた部分の緩和  ー 使ったことない人は使ってみよう! 9

  10. Firebase Authentication 特徴 ◆アプリ/サービスの認証を簡単に実装できるようにしてくれるサービス ◇サインアップ/ログイン機能やソーシャル連携を手軽に実装できる 10

  11. パスワード/電話番号 フェデレーションIDプロバイダ カスタムプロバイダ 各プロバイダ認証をサポート 11

  12. 12

  13. 3.Goをいじってみて感じたこと 13

  14. Goの最初の印象(いじる前の印象) if err != nil { return nil, err }

    14 // コードが長くなるイメージ // めんどくさそう
  15. 1.GOPATH ? GOROOT ? / goenv ? dep ? ◆

    エディタの設定 ◇ バージョン関係管理ツール ◆ 依存関係管理ツール 15
  16. 2.シンタックスエラーをひたすら吐かれ・・・ ◆未使用パッケージのインポートでエラー ◇未使用変数の定義でエラー ◆「:=」で定義するところを「=」にしてた ◇型の不一致でエラー 16

  17. 3.配列の操作が慣れず・・・ ◆ソート ◇存在チェック ◆マージ ◇特定の値のチェック などなど 17

  18. 3.配列の操作が慣れず・・・ ◆PHPにおける配列 適当でよかった(全部array) ◇Goにおける配列 固定長(array)と可変長(slice)を意識する必要がある 18

  19. 4.DDDがわからん わからん 19

  20. 思ったより動的型付け言語 にあたまをやられていた 20

  21. 実際にPRについたコメントを載せる 21 ライブラリをコメントアウトしていたときのコメント ▼

  22. 実際にPRについたコメントを載せる 22 一文字変数の洗礼を受けたときのコメント ▼

  23. 実際にPRについたコメントを載せる 23 エラーを握りつぶしたときのコメント ▼

  24. そして引き起こされるドメインモデル貧血症 24 ユースケース層が肥大化したときのコメント ▼

  25. じゃあ、Goは不便なの? 25    ー そんなことはない

  26. 26

  27. やり方はいろいろある 27 郷に入っては郷に従おう そうすると見えてくるものがある

  28. 社内で輪読会開いてみたり・・・ 28

  29. 挫折して、DDD Quicklyに走り・・・ 29

  30. なんとか(ほぼ)一巡しました 30 https://www.infoq.com/jp/minibooks/domain-driven-design-quickly

  31. まとめ いままで自分は,PHP の寛容さに頼って、 連想配列に適当にバンバンぶちこみ、 脳死でライブラリ使っていた・・・ それに気づかせてくれたGo そんなGoには感謝しかない 31

  32. ありがとう 32

  33. ありがとう 33 シュプレ@spre55

  34. クラウドエースは絶賛エンジニア募集中 ◆ 一緒にGCPを盛り上げてくれるエンジニア募集 ◇ いっしょにタダ飯いこう!  興味のある方はシュプレ(@spre55)まで 34