Text
Page: 1
まとめと次のステップ
結城洋志
株式会社クリアコード
実践リーダブルコード
2019-09-24
まとめと次のステップ
Powered by Rabbit 2.2.1
Page: 2
講座の目的
✓ 自分の開発チームに
✓ リーダブルなコードが
当たり前な文化の作り方を
✓ 持ち帰る
まとめと次のステップ
Powered by Rabbit 2.2.1
Page: 3
リーダブルコードの必要性
✓ チームの開発速度の維持のため
✓ 継続的に改良・修正したい
✓ それも現実的なコストで
まとめと次のステップ
Powered by Rabbit 2.2.1
Page: 4
変更コストと開発速度
開発
速度
リーダブルな場合
開発速度が落ちにくい
リーダブルじゃない場合
開発速度が落ちやすい
時間
まとめと次のステップ
Powered by Rabbit 2.2.1
Page: 5
文化の作り方の流れ(1)
✓ チームでリーダブル基準を育む
✓ 「読む人」が
読みやすいなら
リーダブル
✓ 「読む人」が変われば基準が変わる
✓ →読む人が違うのでチーム毎に違う
まとめと次のステップ
Powered by Rabbit 2.2.1
Page: 6
文化の作り方の流れ(2)
✓ 基準の育て方
✓ 各メンバーがコードを読む
✓ リーダブルだと思ったコードを共有
✓ チームとしてリーダブルかを判断
✓ →チームの基準に加わる
まとめと次のステップ
Powered by Rabbit 2.2.1
Page: 7
基準の育て方(1)
✓ コードを読む文化を作る
✓ まず自分が読み始める
✓ リーダブルなコードを探す
✓ 見つけたリーダブルなコードを
他のメンバーに伝える (後述)
✓ →コードが読まれるという自覚が
チームに浸透
まとめと次のステップ
今日やったのはここまで
Powered by Rabbit 2.2.1
Page: 8
基準の育て方(2)
次のステップ
✓ コミットを読む
✓ コード全体ではなく差分を読む
✓ 設計の仕方ではなく
開発の仕方が見える
✓ リーダブルなコードを
見つけるには適切
まとめと次のステップ
Powered by Rabbit 2.2.1
Page: 9
基準の育て方(3)
✓ コミットの読み方
✓ pull型よりpush型がよい
(Git用のオススメツールあり:git-commit-mailer)
(Subversion用のツールもあり:同梱されている)
✓ 読むコストが下がる
✓ 流し読む(負担が多いと続かない)
✓ 問題探し視点では読まない
(必要ならコードレビューを実施)
まとめと次のステップ
Powered by Rabbit 2.2.1
Page: 10
基準の育て方(4)
✓ リーダブルコードの伝え方
✓ Wikiに書く(全チームで有効)
✓ コードで伝える(上級チーム向け)
まとめと次のステップ
Powered by Rabbit 2.2.1
Page: 11
基準の育て方(5)
✓ Wikiに書いて伝える
✓ Wikiもdiffを通知できるようにする
(RedmineとGitHub用はツールあり)
✓ 後で参照できるため
✓ 更新もできるため
(リーダブルコードの基準は変わることもある!)
まとめと次のステップ
Powered by Rabbit 2.2.1
Page: 12
基準の育て方(6)
✓ コードで伝える
✓ 上級チーム向け
(チームにコードを読む文化が根付いた後)
✓ リーダブルコードを真似てコミット
✓ →他の人:「またこの書き方だ」
✓ →真似する人増加→チームが合意
✓ →チームが合意→Wikiにまとめる
まとめと次のステップ
Powered by Rabbit 2.2.1
Page: 13
コードを読む文化
✓ 新人の受け入れにも有用
✓ 人の入れ替えにも有用
まとめと次のステップ
Powered by Rabbit 2.2.1
Page: 14
どうして有用か
開発を通じて↓を伝えられる
(ただし、上級チームになってから)
✓ チームが大事にしていること
✓ チームのリーダブル
✓ チームの開発スタイル
まとめと次のステップ
Powered by Rabbit 2.2.1
Page: 15
コードを読む文化
チームが大事にしていることを
開発を通じて伝えられる
↓
✓ 新人の受け入れにも有用
✓ 開発速度低下を抑えられる
✓ 人の入れ替えにも有用
✓ リーダブル見直しのよい機会
まとめと次のステップ
Powered by Rabbit 2.2.1
Page: 16
これからやること
✓ この講座をチームでもやる
✓ 資料はすべて再利用可能
✓ 自分がコードを読み始める
✓ 自分が変更するコードの周辺から
リーダブルコードを探す
✓ 見つけたリーダブルなコードを
他のメンバーに伝える
まとめと次のステップ
Powered by Rabbit 2.2.1
Page: 17
サポート(1)
✓ 今日の資料はすべて再利用可能
✓ チーム内で同じ講座をできる
まとめと次のステップ
Powered by Rabbit 2.2.1
Page: 18
サポート(2)
✓ コミット読みの支援
✓ OSSとしてツールを公開
✓ コミット毎にメールで通知 (diff入り)
✓ Git、Subversionで使える
✓ GitHub、GitLab連携もできる
まとめと次のステップ
Powered by Rabbit 2.2.1
Page: 19
おしらせ
コードリーダー育成支援
http://www.clear-code.com/services/code-reader/
リーダブルなコードが
当たり前な文化づくりを支援
まとめと次のステップ
Powered by Rabbit 2.2.1
Page: 20
クリアコード
✓ クリアなコードが大切
✓ クリア == clear == 意図が明確
✓ クリアなコードはリーダブルコード
みなさんのチームが
リーダブルコードが当たり前な
チームになることを応援します!
まとめと次のステップ
Powered by Rabbit 2.2.1