Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Webフレームワークの功罪 / Advantages and considerable poi...
Search
mather
May 20, 2022
Programming
0
450
Webフレームワークの功罪 / Advantages and considerable point of Web Frameworks
mather
May 20, 2022
Tweet
Share
More Decks by mather
See All by mather
SolidjsでLeacTion!を作り直しました / Rebuilt LeacTion! in Solid.js
mather
0
310
LeacTion!のアップデートとプチ勉強会へのいざない / Updates of LeacTion and Petit Meetup
mather
0
470
LeacTion!について / About LeacTion!
mather
0
320
Rubyでワンライナー / One-liner on Ruby
mather
0
460
認知と思考パターン / Cognition and Pattern
mather
1
280
「モデル」を考える / Think about "model"
mather
0
380
Shall we make a speech?
mather
0
240
Elmでライフゲーム / LifeGame in Elm
mather
1
1k
Elmで関数型を意識する / Think functionally with Elm
mather
0
420
Other Decks in Programming
See All in Programming
ドメインモデリングにおける抽象の役割、tagless-finalによるDSL構築、そして型安全な最適化
knih
11
2k
エラーって何種類あるの?
kajitack
5
280
Haskell でアルゴリズムを抽象化する / 関数型言語で競技プログラミング
naoya
17
4.8k
deno-redisの紹介とJSRパッケージの運用について (toranoana.deno #21)
uki00a
0
130
Webからモバイルへ Vue.js × Capacitor 活用事例
naokihaba
0
740
『自分のデータだけ見せたい!』を叶える──Laravel × Casbin で複雑権限をスッキリ解きほぐす 25 分
akitotsukahara
1
360
すべてのコンテキストを、 ユーザー価値に変える
applism118
2
470
LINEヤフー データグループ紹介
lycorp_recruit_jp
0
770
地方に住むエンジニアの残酷な現実とキャリア論
ichimichi
2
650
社内での開発コミュニティ活動とモジュラーモノリス標準化事例のご紹介/xPalette and Introduction of Modular monolith standardization
m4maruyama
1
130
既存デザインを変更せずにタップ領域を広げる方法
tahia910
1
240
アンドパッドの Go 勉強会「 gopher 会」とその内容の紹介
andpad
0
250
Featured
See All Featured
Docker and Python
trallard
44
3.4k
Code Review Best Practice
trishagee
68
18k
Balancing Empowerment & Direction
lara
1
350
Optimising Largest Contentful Paint
csswizardry
37
3.3k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
48
2.8k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
29
9.5k
Six Lessons from altMBA
skipperchong
28
3.8k
VelocityConf: Rendering Performance Case Studies
addyosmani
330
24k
A Modern Web Designer's Workflow
chriscoyier
693
190k
How to train your dragon (web standard)
notwaldorf
92
6.1k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
281
13k
Unsuck your backbone
ammeep
671
58k
Transcript
Web フレームワークの功罪 2022-05-20 Web ナイト宮崎 vol.15 桑畑英資
自己紹介 桑畑英資 ( くわはたえいすけ) フリーランスソフトウェアエンジニア 企業の開発支援(設計・実装・提案) エンジニア教育(メンター) LeacTion! なども開発中 趣味:スキューバダイビング・カメラ
個人ブログはQR コードから→
抽象的な話をします 毎度おなじみ
Web アプリケーション(概要図)
Web フレームワーク(概要図)
Web フレームワークがもたらすメリット アプリケーションの実装に集中できる 学習コストを減らせる 効率的にアプリケーションを記述できる 実装時の考慮漏れが少なくなる フレームワークのスターターがあるので、開発を始めやすい 共通のルールや概念を用いることで知見が集まりやすくなる
枠組みのデメリット 枠組みを大きく外れた仕組みを記述することが難しくなる 基礎となる技術(プロトコルや言語の基礎)の学習を飛ばしがち
思考が「フレーム」にハマる問題 今回の主眼
「フレーム」にハマる フレームワークはWeb アプリケーションを「枠(frame) 」に入れるが どんな枠に分解するかはそれぞれ癖がある 例: Model が実質的にORM なのでテーブル設計中心になってしまう等 フレームワークに学ぶことで枠にガッチリと思考がハマってしまい
枠を外れそうな処理や、ドキュメント・ブログなどに知見のない 処理を実装しなければいけないときに迷子になってしまう
本当に必要なシステムは 決められた枠をはみ出す場合が多い
「フレーム」と向き合う フレームワークの癖を知る 別のフレームワークにも触れてみる フレームワークの「やってはいけないこと」をやってみる 例: Rails Way を外れる 「Web アプリケーション」としての基礎知識を学ぶ
フレームワークに依存しない設計手法を学ぶ ドメイン駆動設計など
ご清聴ありがとうございました Elm オススメです