Slide 1

Slide 1 text

全てのコードに 意図を持たせよう 株式会社Frontier Lotus 大塚望生

Slide 2

Slide 2 text

自己紹介 名前: 大塚望生(Nozomu Otsuka) バックエンド: Ruby on Rais, Python, Firebase, Golang フロントエンド: Vue.js(Reactに乗り換えたい)

Slide 3

Slide 3 text

会社紹介 商号: 株式会社Frontier Lotus https://frontier-lotus.com/ やってること: スタートアップ向けのシステム開発 「アプリ作って起業したい! でもITがわからん!」って言ってる起業家に代わ り、彼らのアイデアを実現したアプリを作っています。 自社アプリ: 部屋、探しといて! https://www.heya-sagashi-toite.com/

Slide 4

Slide 4 text

本題

Slide 5

Slide 5 text

リーダブルじゃないコードとは? ↓定番 ・膨大な量のコード ・複雑すぎるコード ・煩雑なコード ・一貫していないコードも読みにくい

Slide 6

Slide 6 text

一貫してないコードの例: 改行や空白 2行 1行 インデント

Slide 7

Slide 7 text

一貫してないコードの例: コメント コメントが あったりなかったり

Slide 8

Slide 8 text

一貫してないコードの例: 変数化 気まぐれ変数化

Slide 9

Slide 9 text

一貫してないコードは何が悪いか? 他の人に「どうして書き方が違うんだろう?」と悩ませる → レビュアーや他の開発者に「余計なことを考えさせる」 → 他者から時間を奪ってしまうようなコードは良くない

Slide 10

Slide 10 text

どうしたらコードに一貫性が出る?

Slide 11

Slide 11 text

一貫性が無くなる理由 A. なんとなく書いてるから

Slide 12

Slide 12 text

自分のコードの意図を説明出来ますか? ・なぜ改行したのか ・なぜコメントを振るのか ・なぜ変数化するのか ・なぜこの命名にしたのか ・なぜメソッドを分割したのか ・なぜこのディレクトリ構造なのか etc...

Slide 13

Slide 13 text

そうはいっても初心者・初学者は なーんもわからん!

Slide 14

Slide 14 text

初心者のうちは既存のルールに従おう! ・lintなどに従う ・フレームワークなどは「ベストプラクティス」を探す ・ちゃんとしたエディタを使う ・社内のコーディング規約に従う ・先輩の真似をしてみる

Slide 15

Slide 15 text

他の人の「意図」を学ぼう! 他の人の「意図」を考えることで、 自分のコードも良くなっていく!

Slide 16

Slide 16 text

最後に…… 株式会社Frontier Lotusでは、 創業期の荒波を一緒に戦ってくれるメンバーを募集しています! 「プログラミングさせてもらえなくて技術がつかないー」って悩んでる人、 どうですか! [email protected]

Slide 17

Slide 17 text

ご清聴ありがとうございました!