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
470
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
320
LeacTion!のアップデートとプチ勉強会へのいざない / Updates of LeacTion and Petit Meetup
mather
0
480
LeacTion!について / About LeacTion!
mather
0
330
Rubyでワンライナー / One-liner on Ruby
mather
0
470
認知と思考パターン / 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
Strands Agents で実現する名刺解析アーキテクチャ
omiya0555
1
120
なぜ今、Terraformの本を書いたのか? - 著者陣に聞く!『Terraformではじめる実践IaC』登壇資料
fufuhu
4
590
大規模FlutterプロジェクトのCI実行時間を約8割削減した話
teamlab
PRO
0
470
AIのメモリー
watany
13
1.4k
AHC051解法紹介
eijirou
0
520
Amazon Q CLI開発で学んだAIコーディングツールの使い方
licux
3
180
AI時代のドメイン駆動設計-DDD実践におけるAI活用のあり方 / ddd-in-ai-era
minodriven
6
1.3k
DynamoDBは怖くない!〜テーブル設計の勘所とテスト戦略〜
hyamazaki
1
200
MCPで実現できる、Webサービス利用体験について
syumai
7
2.5k
プロダクトという一杯を作る - プロダクトチームが味の責任を持つまでの煮込み奮闘記
hiliteeternal
0
450
パスタの技術
yusukebe
1
370
Comparing decimals in Swift Testing
417_72ki
0
170
Featured
See All Featured
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3.4k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Building an army of robots
kneath
306
45k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.4k
Product Roadmaps are Hard
iamctodd
PRO
54
11k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
229
22k
Thoughts on Productivity
jonyablonski
69
4.8k
4 Signs Your Business is Dying
shpigford
184
22k
Testing 201, or: Great Expectations
jmmastey
45
7.6k
Rails Girls Zürich Keynote
gr2m
95
14k
What's in a price? How to price your products and services
michaelherold
246
12k
Transcript
Web フレームワークの功罪 2022-05-20 Web ナイト宮崎 vol.15 桑畑英資
自己紹介 桑畑英資 ( くわはたえいすけ) フリーランスソフトウェアエンジニア 企業の開発支援(設計・実装・提案) エンジニア教育(メンター) LeacTion! なども開発中 趣味:スキューバダイビング・カメラ
個人ブログはQR コードから→
抽象的な話をします 毎度おなじみ
Web アプリケーション(概要図)
Web フレームワーク(概要図)
Web フレームワークがもたらすメリット アプリケーションの実装に集中できる 学習コストを減らせる 効率的にアプリケーションを記述できる 実装時の考慮漏れが少なくなる フレームワークのスターターがあるので、開発を始めやすい 共通のルールや概念を用いることで知見が集まりやすくなる
枠組みのデメリット 枠組みを大きく外れた仕組みを記述することが難しくなる 基礎となる技術(プロトコルや言語の基礎)の学習を飛ばしがち
思考が「フレーム」にハマる問題 今回の主眼
「フレーム」にハマる フレームワークはWeb アプリケーションを「枠(frame) 」に入れるが どんな枠に分解するかはそれぞれ癖がある 例: Model が実質的にORM なのでテーブル設計中心になってしまう等 フレームワークに学ぶことで枠にガッチリと思考がハマってしまい
枠を外れそうな処理や、ドキュメント・ブログなどに知見のない 処理を実装しなければいけないときに迷子になってしまう
本当に必要なシステムは 決められた枠をはみ出す場合が多い
「フレーム」と向き合う フレームワークの癖を知る 別のフレームワークにも触れてみる フレームワークの「やってはいけないこと」をやってみる 例: Rails Way を外れる 「Web アプリケーション」としての基礎知識を学ぶ
フレームワークに依存しない設計手法を学ぶ ドメイン駆動設計など
ご清聴ありがとうございました Elm オススメです