Text
Page: 1
コードチェンジ
須藤功平
株式会社クリアコード
SEゼミ2014 - リーダブルコード勉強会2
2014/07/06
コードチェンジ
Powered by Rabbit 2.1.3
Page: 2
目的の確認
参加者の
リーダブルコード力の
レベルアップ
コードチェンジ
Powered by Rabbit 2.1.3
Page: 3
将来を重視
リーダブルコード力
今日
コードチェンジ
将来を重視
半年後
時間
Powered by Rabbit 2.1.3
Page: 4
目指すこと
リーダブルコードを
発見できるようになる
コードチェンジ
Powered by Rabbit 2.1.3
Page: 5
目指さないこと
✓ テクニックをたくさん覚える
✓ 難しいプログラムでも
実装できるようになる
✓ 速く実装できるようになる
コードチェンジ
Powered by Rabbit 2.1.3
Page: 6
目指すためにやること
コードチェンジ
コードチェンジ
Powered by Rabbit 2.1.3
Page: 7
コードチェンジでやること
1. 書いて←自己流で本気をだす
(午前中にやった)
2. 読んで←他のコードから吸収
(読まないといけない状況を強制的に作る)
3. 書いて←↑を活用して成長
コードチェンジ
Powered by Rabbit 2.1.3
Page: 8
どうしてこうやるか
1. 既存のテクニックの習得
✓ 本から学ぶ
✓ 野生のコードを読む→
リーダブルコードを発見→
吸収 ↑を体験
2. 新規にテクニックを発明
✓ リーダブルでないコードを発見→
改善案を発明
コードチェンジ
Powered by Rabbit 2.1.3
Page: 9
やり方
✓ 交換相手を決める
✓ 交換相手のリポジトリーをfork
✓ ↑を使って開発継続
コードチェンジ
Powered by Rabbit 2.1.3
Page: 10
交換相手の決め方
✓ 基準
✓ だいたい同じ状況同士
✓ 例: 進み具合、環境
✓ メンターがヒアリング
✓ 積極的に協力して
コードチェンジ
Powered by Rabbit 2.1.3
Page: 11
リポジトリーをfork
✓ やり方がわからない人は挙手
コードチェンジ
Powered by Rabbit 2.1.3
Page: 12
開発継続
✓ どこまで進んでいるかを確認
✓ READMEやlogを参考に
(どういう風に書いておけばよかったか考えてみて)
✓ ↑から開発を継続
コードチェンジ
Powered by Rabbit 2.1.3
Page: 13
忘れないで
✓ よいコードを見つけたらメモ
✓ memo.mdに追記して随時push
✓ 後でよいコードを共有する時に使う
✓ 書くこと
✓ コードのURL
✓ よい理由
✓ 見つけたきっかけ
コードチェンジ
Powered by Rabbit 2.1.3
Page: 14
ポイント
悪いコードより
よいコード
コードチェンジ
Powered by Rabbit 2.1.3
Page: 15
悪いコード
✓ 見つけやすい
✓ 異質
✓ リーダブルじゃない
✓ 過剰に指摘したくなる
✓ 「マサカリを投げてみたい」
コードチェンジ
Powered by Rabbit 2.1.3
Page: 16
マサカリ投げたい症候群
早めに卒業しましょう
✓ 必要十分な事実伝達以外の
否定的な情報を過剰に含む指摘
必要十分な事実伝達がない場合もある
✓ 必要十分な事実伝達:
○○な理由で××ではなく△△だ
本に書いているから、は理由になっていない
✓ 優越感を得られる
コードチェンジ
Powered by Rabbit 2.1.3
Page: 17
よいコード
✓ 見つけにくい
✓ リーダブルだから
✓ すーっと理解できてひっかからない
✓ 今日のチャレンジ
✓ 意識して見つけよう!
コードチェンジ
Powered by Rabbit 2.1.3
Page: 18
発見方法のヒント
✓ リーダブルコード
✓ 読む人がリーダブルと思ったコード
✓ 読む人視点が重要
✓ 交換直後の今が読む人の視点!
コードチェンジ
Powered by Rabbit 2.1.3
Page: 19
忘れないで
✓ よいコードを見つけたらメモ
✓ memo.mdに追記して随時push
✓ 後でよいコードを共有する時に使う
✓ 書くこと
✓ コードのURL
✓ よい理由
✓ 見つけたきっかけ
コードチェンジ
Powered by Rabbit 2.1.3