Upgrade to Pro — share decks privately, control downloads, hide ads and more …

一番小さなリファクタリングの話

 一番小さなリファクタリングの話

2022年7月28日 (株)ラクス様主催の 「リファクタリングLT 〜毎日こつこつちょっとずつ〜 」でLT登壇したときの資料です
https://rakus.connpass.com/event/250579/

Wikipediaによると、「リファクタリング」に明確な定義はないそうです。
毎日コツコツやる、小さなリファクタリングについて、お話します。
今、目の前にある開発中のコード、これが小さなリファクタリングのターゲットです。
「more better(より良い)」の探求を毎日積み重ねることで、大きなリファクタリングに向けた感覚の養成や、情報収集・知識強化のきっかけとすることができます。

ShirayanagiRyuji

July 28, 2022
Tweet

More Decks by ShirayanagiRyuji

Other Decks in Technology

Transcript

  1. 一番小さな
    リファクタリング
    の話
    白栁隆司
    2022年7月28日
    リファクタリングLT 〜毎日こつこつちょっとずつ〜

    View full-size slide

  2. 自己紹介
    エンジニアカウンセラー 白栁 隆司
    Youtubeに動画投稿中! #ほぼ日ITエンジニアニュース
    @IT 自分戦略研究所 エンジニアライフにて「コレがワタシの生きる様」連載中(木曜日)
    ITエンジニアが永く活動する為のサポート活動
    主に4つのことを、ITエンジニアに勧めています
    1. 傾聴ベースのコミュニケーション
    2. メンタルヘルス(セルフケア)
    3. セルフマネジメント
    4. 日々の生活の中からエンジニアリングを学ぶ

    View full-size slide

  3. リファクタリングとは…
    プログラムの外部から見た動作を変えずにソースコードの内部構造を整
    理することである。
    また、いくつかのリファクタリング手法の総称としても使われる。
    ただし、十分に確立された技術とはいえず、また「リファクタリング」という
    言葉に厳密な定義があるわけではない。
    ※Wikipediaより

    View full-size slide

  4. 一番小さなリファクタリングの話
    1. 一度書いたコードで満足していませんか
    2. レガシー(古い)コードはどこにあるのか
    3. 小さなリファクタリングを繰り返す
    4. 汚くてもいいからまず書く

    View full-size slide

  5. 宣伝(今回のお話関連)
    今回のお話は、@IT 自分戦略研究所 エンジニアライフ
    にて、関連する話題を掲載しています。
    『生き様153. 汚くてもいいからまず書く!』
    是非ご一読下さい!

    View full-size slide

  6. 1. 一度書いたコードで満足していませんか
    ● 必死で悩んで考えてデバッグして実行できたコード
    ○ 尊いけれど、動いたら満足ですか?
    ○ もっと良い書き方があるとは思いませんか?
    ● 誰もが一度で最善(most)を達成はできない
    ○ 計算の見直しとか重要ですよね!
    白栁はしなかった人ですが…

    View full-size slide

  7. 2. レガシーコードはどこにあるのか
    ● 数年が経過したシステムの中だけではない
    ○ もっと身近にあるレガシー(古い)コード
    ○ 既に記述されたコードは「古い」コード
    ● 今の実装より良い実装があるのではないか?
    ○ 「more better(より良い)」の探求

    View full-size slide

  8. 3. 小さなリファクタリングを繰り返す
    ● 一度書いたコードはより良い実装を目指して改善
    ○ 「最善」では無いことは書いた本人が知ってる
    ○ セルフレビューの一環
    ● 改善を繰り返す中でコードの質を上げていく
    ● 厳密にはリファクタリングじゃないかも……?
    厳密な定義は「ありません」!

    View full-size slide

  9. 4. 汚くてもいいからまず書く
    ● いくら考えても「most」にはたどり着けない
    ● どうせ後で書き直すのだから、最初は汚くていい
    ○ まずは書くこと、次に動くこと!
    ○ 可読性や動作速度改善は2の次3の次!
    ● 極論:書いてから考える!

    View full-size slide

  10. まとめ
    ● レガシーコードは目の前にある
    ○ 書いたコードは既に「レガシーコード」
    ● 小さなリファクタリングを繰り返す
    ○ 「more better」の無限の探索(時間は有限)
    ● その繰り返しでリファクタリング感覚を養う

    View full-size slide

  11. ご清聴ありがとうございました
    エンジニアカウンセラー
    白栁隆司
    @ShirayanagiRyuj
    「3回作り直せ」って言う人もいるらしい

    View full-size slide