$30 off During Our Annual Pro Sale. View Details »

SLAPを覚えてリファクタリングに方針を/we learn slap for refactoring

kirimaru
November 03, 2020

SLAPを覚えてリファクタリングに方針を/we learn slap for refactoring

kirimaru

November 03, 2020
Tweet

More Decks by kirimaru

Other Decks in Programming

Transcript

  1. を覚えて リファクタリングに方針を 座駆動LT大会オンライン20201103 きり丸(水上 皓登)@nainaistar

  2. 名前:きり丸(水上 皓登) 年齢:28歳(1992/02/04) twitter: nainaistar ブログ:きり丸の日記 https://nainaistar.hatenablog.com/ 2 サーバーサイドエンジニア 勉強会はフロントエンド

    ばっかり行く
  3. リファクタリングってどうやるの? リファクタリングで困ったことは無いでしょうか。 リファクタリングの定義では、「外部からから見たコードの振る舞いを変 えずに、コード内部の構造を改善する技法」です。 大事なのは分かるけれど、どうやればいいかわからない。 そんな人にとって踏み出す第一歩になればと思います。

  4. SLAPとは SLAPとはSingle Level of Abstraction Principleの略です。 日本語では、「抽象化レベルの統一」と言われています。 プログラムにて、記載している内容のレベルを揃えることを意味しま す。

  5. SLAPを守ると何が良くなるか • 閲覧性 ◦ コードの目次のようになる。 • 要約性 ◦ 小さなコードの塊になって、見やすくなる。

  6. SLAPを守ると何が良くなるか • 処理としてやりたいこと。 • やりたいことを達成するために、条件やループを使う。 上記が混ざっていると、コードが読みづらくなってしまいます。

  7. 例 あなたは学園の生徒です。 あなたの学年の出身県ごとに何人在籍しているかを調べてくださ い。

  8. 例を分解 1. パラメータにあなた(生徒)を指定する。 2. あなたの学年を取得する。 3. あなたの学年から、生徒たちを取得する。 4. 生徒たちから出身を取得する。 5.

    出身からどの県に何人いるかを数える。
  9. 例を図示 あなた (長崎県) 生徒1 (長崎県) 生徒2 (福岡県) 学年

  10. プログラミング ※スライドに収まらないので、ブログより。 https://nainaistar.hatenablog.com/entry/2020/06/22/SLAP%E3%82%92%E 8%A6%9A%E3%81%88%E3%81%A6%E3%83%AA%E3%83%95%E3%8 2%A1%E3%82%AF%E3%82%BF%E3%83%AA%E3%83%B3%E3%82%B 0%E3%82%92%E3%81%97%E3%82%88%E3%81%86?_ga=2.19891063 3.702104572.1603876745-744934094.1532527446

  11. まとめ SLAPを守ってプログラミングすると、以下の効果が得られる • 閲覧性 • 要約性

  12. 参考資料 • プリンシプル オブ プログラミング 以下、プリンシプル オブ プログラミングの参考資料 • プロダクティブ・プログラマー プログラマのための生産性向上術 • ケント・ベックのSmalltalkベストプラクティス・パターン •

    実践パターン • パターン指向リファクタリング入門 • Code Craft