Slide 1

Slide 1 text

© 2012-2023 BASE, Inc. 2023/02/22 ハードル激低LT大会ッ! PHPerがGoに入門してみた

Slide 2

Slide 2 text

© 2012-2023 BASE, Inc. 2 氏名:Futoshi Endo 所属:BASE株式会社 入社:2023/01/04 ~ 業務:バックエンド エンジニア 趣味:料理、音楽鑑賞、ゲーム PHP歴は5年、Go歴は1ヶ月程度です。 昔からブログを書いたり、Scrapboxで日記を 書いています。 ● Endo Tech Blog ● https://scrapbox.io/fendo181/ Fendo181 自己紹介

Slide 3

Slide 3 text

© 2012-2023 BASE, Inc. 3 自己紹介 (BASEに入社してから初リリースするまでに経験した事を紹介します)

Slide 4

Slide 4 text

© 2012-2023 BASE, Inc. 今日の本題 4 PHPerがGoに入門してみた

Slide 5

Slide 5 text

© 2012-2023 BASE, Inc. Goに入門しようと思ったきっかけ 5

Slide 6

Slide 6 text

© 2012-2023 BASE, Inc. Goに入門しようと思ったきっかけ 6 Goで書かれているライブラリを理解したい!

Slide 7

Slide 7 text

© 2012-2023 BASE, Inc. Goに入門しようと思ったきっかけ 7 ● tbls is a CI-Friendly tool for document a database, written in Go ● コマンド1つでDatabaseのスキーマをドキュ メント化してくれる ● 社内の「BASE BANK」チームでは導入事例が あり、自分が所属しているチームでも将来的 に導入を考えている ○ tblsとGitHub Actionsを使ってDBマイグレー ションを含むPRには自動更新したER図を追加 する https://github.com/k1LoW/tbls

Slide 8

Slide 8 text

© 2012-2023 BASE, Inc. 8 https://github.com/k1LoW/tbls ● Goで書かれている。 ● 今の自分にとっては、処理がわからずブラッ クボックスになってしまっている ● ちゃんと、コードリーディングをして中身の 処理を把握したい Goに入門しようと思ったきっかけ

Slide 9

Slide 9 text

© 2012-2023 BASE, Inc. 9 https://github.com/k1LoW/tbls ● Goで書かれている。 ● 今の自分にとっては、処理がわからずブラッ クボックスになってしまっている ● ちゃんと、コードリーディングをして中身の 処理を把握したい ● そうだ、Goを学ぼう Goに入門しようと思ったきっかけ

Slide 10

Slide 10 text

© 2012-2023 BASE, Inc. 今日お話する内容 1 2 Goの学習方法について まとめ 10

Slide 11

Slide 11 text

© 2012-2023 BASE, Inc. Goの学習方法について 11

Slide 12

Slide 12 text

© 2012-2023 BASE, Inc. Goの学習方法について 12 https://go-tour-jp.appspot.com/welcome/1

Slide 13

Slide 13 text

© 2012-2023 BASE, Inc. 13 Goの学習方法について ● ブラウザだけで動作確認できる ● 特にエディターを立ち上げる必要はない ● 基本的な文法から学べる ● ちゃんと時間かけてやれば1週間程で全ての 項目が理解できる。(...と思っています)

Slide 14

Slide 14 text

© 2012-2023 BASE, Inc. 14 Goの学習方法について 書籍「テスト駆動開発」の付録Cに書いて あった写経方法を参考にGitHubにコミットを 積んでいる 1.ローカル環境で使えるバージョン管理システム(Git)を用意 2.書見台などで対処の本を固定 3.ひたすらサンプルコードを写して実行 4.実行する度にコミット(コミットログにページ番号を含める) 5.疑問があったらコミットログや本に書き込む。 6.章ごとにタグを打つ。 # git tag -a chap2 -m '第2章まで' # git push --tags origin

Slide 15

Slide 15 text

© 2012-2023 BASE, Inc. 15 Goの学習方法について https://github.com/Fendo181/go_practice/tree/master/A_Tour_of_Go/control

Slide 16

Slide 16 text

© 2012-2023 BASE, Inc. まとめ 16

Slide 17

Slide 17 text

© 2012-2023 BASE, Inc. 17 まとめ ● Goを学ぶ方法について紹介しました ● Goは機能が少ない分シンプルに書ける ● main関数に実行する処理がまとまっているので 上から順々に追っていけば良い(可読性が高い) ● Goのライブラリを見る心理的ハードルが下がった! ● 新しいプログラミング言語を学ぶのは楽しい!