from /unnamedcamp/全体像把握と再利用のために生まれた関数 image /unnamedcamp/nishio.icon 拙著「コーディングを支える技術」 p.25 第5章 関数

  • 「部品的に書く」ではない
    • 「関数的に書きましょう」の方が近いが、問題はそれがまったく一般的なたとえではない

    • まったく一般的でないどころか、この場にいる人にもあまり伝わらなくて/unnamedcamp/rashita.iconがけちょんけちょんになってて面白かった
      • 逆ジェンガの積み直しをしたい
        • メタファーが誕生した段階でそれが広く他人に伝わるものである必要はない、まずは発展させて構造を明らかにした方がいい
    • この種の関数的概念は少なくとも1949年のEDSACでは既に使われており、プログラミング言語を読み書きできる人にとっては見慣れた概念
      • プログラムが大きくなってくると、だんだん全体像を把握しにくくなります。また、よく似た処理を何度も使いたくなることもあります。

      • 関数は、この問題を解決するために生まれました。意味的にひとかたまりのコードをくくりだして名前を付けることで、そのコードが何をしてい るか把握しやすくなります。そして、その関数をほかの場所から呼び出して使えるようにすることで、再利用ができるようになります。(コーディングを支える技術 p.56)

      • この「プログラムが大きくなってくると全体像を把握しにくくなる、その問題を解決するために関数が作られた」の「プログラム」の部分を「言語によって記述されたもの」に一般化することができる
      • Scrapboxの「リンク」と「バックリンク」「リンク位置へのスクロール」によって関数的な「ジャンプ」「戻る」が可能になった

「関数のメタファー」というタイトルをつけてから書き始めてしまった

  • 「全体像把握と再利用のために生まれた関数」に変えた

全体像把握再利用のために生まれた関数