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

Webフレームワークの功罪 / Advantages and considerable point of Web Frameworks

Webフレームワークの功罪 / Advantages and considerable point of Web Frameworks

3204f6241aaca4a1082bfe1202e60d69?s=128

mather

May 20, 2022
Tweet

More Decks by mather

Other Decks in Programming

Transcript

  1. Web フレームワークの功罪 2022-05-20 Web ナイト宮崎 vol.15 桑畑英資

  2. 自己紹介 桑畑英資 ( くわはたえいすけ) フリーランスソフトウェアエンジニア 企業の開発支援(設計・実装・提案) エンジニア教育(メンター) LeacTion! なども開発中 趣味:スキューバダイビング・カメラ

    個人ブログはQR コードから→
  3. 抽象的な話をします 毎度おなじみ

  4. Web アプリケーション(概要図)

  5. Web フレームワーク(概要図)

  6. Web フレームワークがもたらすメリット アプリケーションの実装に集中できる 学習コストを減らせる 効率的にアプリケーションを記述できる 実装時の考慮漏れが少なくなる フレームワークのスターターがあるので、開発を始めやすい 共通のルールや概念を用いることで知見が集まりやすくなる

  7. 枠組みのデメリット 枠組みを大きく外れた仕組みを記述することが難しくなる 基礎となる技術(プロトコルや言語の基礎)の学習を飛ばしがち

  8. 思考が「フレーム」にハマる問題 今回の主眼

  9. 「フレーム」にハマる フレームワークはWeb アプリケーションを「枠(frame) 」に入れるが どんな枠に分解するかはそれぞれ癖がある 例: Model が実質的にORM なのでテーブル設計中心になってしまう等 フレームワークに学ぶことで枠にガッチリと思考がハマってしまい

    枠を外れそうな処理や、ドキュメント・ブログなどに知見のない 処理を実装しなければいけないときに迷子になってしまう
  10. 本当に必要なシステムは 決められた枠をはみ出す場合が多い

  11. 「フレーム」と向き合う フレームワークの癖を知る 別のフレームワークにも触れてみる フレームワークの「やってはいけないこと」をやってみる 例: Rails Way を外れる 「Web アプリケーション」としての基礎知識を学ぶ

    フレームワークに依存しない設計手法を学ぶ ドメイン駆動設計など
  12. ご清聴ありがとうございました Elm オススメです