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
Rails 経験者が FastAPI 本を読んで感じたこと / 2023-11-28
Search
Takuma Yamamoto
November 28, 2023
Programming
0
1.7k
Rails 経験者が FastAPI 本を読んで感じたこと / 2023-11-28
https://labs.snaq.me/entry/2023/12/02/090233
Takuma Yamamoto
November 28, 2023
Tweet
Share
More Decks by Takuma Yamamoto
See All by Takuma Yamamoto
ドメイン駆動設計 勉強会 〜 リポジトリ編 〜 / 2024-04-23
tamago3keran
0
99
スナックミーの開発はワクワクだらけ! / 2024-04-05
tamago3keran
0
180
アウトプットのハードルを下げた! / 2024-03-25
tamago3keran
0
400
ドメイン駆動設計 勉強会 〜 ドメインサービス編 〜 / 2024-03-05
tamago3keran
0
100
ドメイン駆動設計 勉強会 〜 エンティティ編 〜 / 2024-02-20
tamago3keran
0
110
ドメイン駆動設計 勉強会 〜 値オブジェクト編 〜 / 2024-02-06
tamago3keran
1
1.7k
スカウト返信率を倍にするためにやったこと / 2024-01-29
tamago3keran
3
1.1k
アウトプットのモチベーションはみんな違ってみんな良い! / 2023-10-06
tamago3keran
0
1.3k
PC が変わっても使い慣れた Neovim で すぐに開発を始める仕組み / 2023-07-25
tamago3keran
1
1.1k
Other Decks in Programming
See All in Programming
Android 15以上でPDFのテキスト検索を爆速開発!
tonionagauzzi
0
180
副作用と戦う PHP リファクタリング ─ ドメインイベントでビジネスロジックを解きほぐす
kajitack
3
510
iOS開発スターターキットの作り方
akidon0000
0
230
ご注文の差分はこちらですか? 〜 AWS CDK のいろいろな差分検出と安全なデプロイ
konokenj
5
740
React 使いじゃなくても知っておきたい教養としての React
oukayuka
18
5.1k
Go製CLIツールをnpmで配布するには
syumai
2
1k
CEDEC 2025 『ゲームにおけるリアルタイム通信への QUIC導入事例の紹介』
segadevtech
2
630
LLMは麻雀を知らなすぎるから俺が教育してやる
po3rin
3
1.8k
商品比較サービス「マイベスト」における パーソナライズレコメンドの第一歩
ucchiii43
0
240
バイブコーディング超えてバイブデプロイ〜CloudflareMCPで実現する、未来のアプリケーションデリバリー〜
azukiazusa1
3
770
[DevinMeetupTokyo2025] コード書かせないDevinの使い方
takumiyoshikawa
2
250
TypeScriptでDXを上げろ! Hono編
yusukebe
4
920
Featured
See All Featured
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
Java REST API Framework Comparison - PWX 2021
mraible
31
8.7k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
5.9k
Reflections from 52 weeks, 52 projects
jeffersonlam
351
21k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
3.1k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
870
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
47
9.6k
Music & Morning Musume
bryan
46
6.7k
Designing Experiences People Love
moore
142
24k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3.4k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
Transcript
Rails ܦݧऀ͕ FastAPI ຊΛಡΜͰײͨ͜͡ͱ Takuma Yamamoto
BIOGRAPHY ͋ͳͨ୭Ͱ͔͢ʁ 5BLVNB:BNBNPUP 8PSLBUTOBQNF 'SPN.JZB[BLJ ٕज़ελοΫ 4/4 झຯ ɾόοΫΤϯυ3VCZPO3BJMT ɾϑϩϯτΤϯυ3FBDU
ɾΞϓϦ3FBDU/BUJWF ɾɹɹIUUQTHJUIVCDPNUBNBHPLFSBO ɾɹɹIUUQTUXJUUFSDPNZBNBUBLV ɾɹɹIUUQTRJJUBDPNUBNBHPLFSBO ɾɹɹIUUQT[FOOEFWUBNBHPLFSBO ɾ͓ͭ ɾαφ ɾΞχϝ
INTRODUCTION લ৬Ͱ Ruby on Rails ͰαʔόʔαΠυΛ։ൃ લ৬Ͱؒ3VCZPO3BJMTΛ༻ͯ͠αʔόʔαΠυΛ։ൃͯ͠·ͨ͠ɻ 8FCଆͷ࣮͍ͯ͠·ͨ͠͠ɺϞόΠϧΞϓϦͷ"1*Λ࣮͍ͯ͠·ͨ͠ɻ
INTRODUCTION εφοΫϛʔͰ FastAPI ͰαʔόʔαΠυΛ։ൃ εφοΫϛʔͰɺࣾΦϖϨʔγϣϯγεςϜΛ3VCZPO3BJMTͰ։ൃ͍ͯ͠·͢ɻ ҰํͰίϯγϡʔϚʔ͚ͷϓϩμΫτ'BTU"1*Ͱ։ൃΛߦ͍ͬͯ·͢ɻ
INTRODUCTION ΩϟονΞοϓͷͨΊ FastAPI ຊΛखʹऔΓ·ͨ͠ ΤϯδχΞ࠾༻Λ୲͢Δͱͯ͠ɺࣗࣾͷٕज़ʹؔͯ͠ΩϟονΞοϓ͍ͨ͠ͱࢥ͍·ͨ͠ɻ ͦ͜Ͱʮಈֶ͔ͯ͠Ϳʂ1ZUIPO'BTU"1*։ൃೖʯͱ͍͏ຊΛखʹऔΓ·ͨ͠ɻ
TODAY’s TOPIC Rails ܦݧऀ͕ FastAPI ຊΛಡΜͰײͨ͜͡ͱΛڞ༗ ࠓ·Ͱ3VCZPO3BJMTͰͷΈαʔόαΠυΛ։ൃ͖ͯͨ͠ͷͰɺษڧʹͳΔ͜ͱ͕ଟ͔ͬͨͰ͢ɻ ࠓճ'BTU"1*ຊΛಡΜͰɺັྗʹײͨ͜͡ͱ৽͞Λײͨ͡෦Λڞ༗͠·͢ɻ ςοΫϒϩάʹॻ͍͍ͯΔͷͰͥͻ
TODAY’s GOAL FastAPI ʹڵຯͷ͋Δ Rails ܦݧऀͷஅࡐྉʹͳΕ 3BJMTܦݧऀͷײΛڞ༗ 'BTU"1*Ͱͷ։ൃΛݕ౼ 3BJMTܦݧऀ͕'BTU"1*ຊΛ ಡΜͰײ༷ͨ͡ʑͳ͜ͱʹͭ
͍ͯɺհ͠·͢ɻ 3BJMTܦݧऀͰ'BTU"1*ʹڵ ຯͷ͋Δํʹͱͬͯͷஅࡐ ྉʹͳΕخ͍͠Ͱ͢ɻ
What is FastAPI? ͦͦ FastAPI ͱԿͰ͔͢ʁ
INTRODUCTION High-performance API framework 'BTU"1*JTBNPEFSO GBTU IJHIQFSGPSNBODF XFCGSBNFXPSLGPSCVJMEJOH"1*TXJUI1ZUIPO
CBTFEPOTUBOEBSE1ZUIPOUZQFIJOUT 'BTU"1*ɺ1ZUIPOͷඪ४Ͱ͋Δܕώϯτʹج ͍ͮͯ1ZUIPOҎ߱Ͱ"1*Λߏங͢ΔͨΊ ͷɺϞμϯͰɺߴ ߴύϑΥʔϚϯε ͳɺ 8FCϑϨʔϜϫʔΫͰ͢ɻ Ҿ༻ݩIUUQTGBTUBQJUJBOHPMPDPN UJBOHPMPGBTUBQJ 'BTU"1*GSBNFXPSL IJHIQFSGPSNBODF FBTZUP 1ZUIPO
What attracted me to the book? ࢲ͕ FastAPI ຊΛಡΜͰײͨ͡ັྗతͳ෦ʹ͍ͭͯ
IMPRESSION ෆ۩߹ΛܕఆٛʹΑΓະવʹ͙ 1ZUIPOʮܕώϯτʯͷΈΛ͕࣋ͭɺಈతܕ͚ݴޠͰ͋ΔͨΊɺܕΤϥʔൃੜ͠ͳ͍ɻ Ұํ'BTU"1*1ZEBOUJDͷྗʹΑΓɺ"1*ͷೖग़ྗʹ͓͍ͯόϦσʔγϣϯΛߦ͍·͢ɻ ͦͷͨΊɺϑϩϯτΤϯυͱଓͯ͠ಈ࡞֬ೝ͢Δલʹෆ۩߹Λݕ͢Δ͜ͱ͕Ͱ͖·͢ɻ ࡢࠓܕΛ༻ͨ͠։ൃ͕Ұൠతʹͳ͖ͬͯͨϑϩϯτΤϯυ։ൃͱ૬ੑ͕ྑͦ͞͏Ͱ͢ɻ
IMPRESSION ϑϩϯτΤϯυͱͷڠۀΛεϜʔζʹ͢ΔΈ ύεΦϖϨʔγϣϯؔͱϦΫΤετɾϨεϙϯεͷεΩʔϚΛఆٛͨ͠ஈ֊Ͱɺ4XBHHFS6*ͷυ Ωϡϝϯτͱ"1*ϞοΫ͕ࣗಈతʹఏڙ͞ΕΔͷͰɺૣ͍ஈ֊͔ΒϑϩϯτΤϯυͷ։ൃΛ։࢝͢ Δ͜ͱ͕Ͱ͖·͢ɻ ͦΕʹΑΓυΩϡϝϯτͷߋ৽࿙ΕͦΕʹͬͯى͖Δ࣮ͷखΓΛɺීஈͷ։ൃͷྲྀΕͰղফ ͢Δ͜ͱ͕Ͱ͖ΔΈʹͳ͍ͬͯ·͢ɻ
IMPRESSION อकੑΛߴΊ͍͢ΞʔΩςΫνϟʔ 'BTU"1*ຊͰհ͞Ε͍ͯͨΞʔΩςΫνϟʔͳͷͰ͕͢ɺ3VCZPO3BJMTͱҧ͍ɺ$36%ͷॲཧ ͕3PVUFSʢ.7$ʹ͓͚Δ$POUSPMMFSʣ͔ΒΓ͞Ε͍ͯ·ͨ͠ɻ ͦΕʹΑΓɺॲཧϩδοΫ͕ΧϓηϧԽͰ͖ΔͨΊɺ࠶ར༻ੑ্͕͠ɺͦΕʹͬͯςελϏϦ ςΟ্͢Δ͜ͱ͕Ͱ͖·͢ɻ .PEFM $POUSPMMFS 7JFX CRUD
What did I fi nd odd in the book? ࢲ͕
FastAPI ຊΛಡΜͰ৽ʹײͨ͡෦ʹ͍ͭͯ
IMPRESSION ࣗલͰΤΫηϓγϣϯΛฦ͢ඞཁ͕͋Δ 'BTU"1*ຊͰɺσʔλ͕ͳ͍࣌ʹ)551ΤΫηϓγϣϯΛฦ͢ॲཧΛࣗΒ࣮͍ͯ͠·ͨ͠ɻ 3VCZPO3BJMTͰ"DUJWF3FDPSE"DUJPO$POUSPMMFSͷ͓͔͛ͰɺࣗಈͰΤϥʔΛฦ͍ͤͯͨ ͷͰɺࣦ೦͠ͳ͍Α͏࣮͢Δඞཁ͕͋Δͱࢥ͍·ͨ͠ɻ 404 Not found…
IMPRESSION ࣗ༝ͷߴ͍ઃܭ͕Մೳ 3VCZPO3BJMTʹ$P$ͱ͍͏ઃܭཧ೦͕͋Γɺ3BJMT8BZʹԊͬͨϓϩάϥϛϯάΛ͢Δ͜ͱͰɺ νʔϜ։ൃʹ͓͍ͯ༨ܭͳίϛϡχέʔγϣϯίετυΩϡϝϯτཧίετͷൃੜΛ࠷খݶʹ͠ ͍ͯ·ͨ͠ɻ Ұํ'BTU"1*3VCZPO3BJMTͱൺͯɺࣗ༝ߴ͘ઃܭ͢Δ͜ͱ͕Ͱ͖ΔͨΊɺઃܭॻΛݴޠԽ͢ ΔͳͲͯ͠ɺνʔϜͰೝࣝΛἧ͑ͳ͕Β։ൃ͢Δඞཁ͕͋Δͱײ͡·ͨ͠ɻ ઃఆΑΓن $P$ʢ$POWFOUJPOPWFS$PO fi
HVSBUJPOʣ ࣗ༝ͷߴ͍ઃܭ
Summary Rails ܦݧऀ͕ FastAPI ຊΛಡΜͰײͨ͜͡ͱΛ·ͱΊΔͱ…
SUMMARY Rails ܦݧऀ͕ FastAPI ຊΛಡΜͰΈͯ… ɾෆ۩߹ΛܕఆٛʹΑΓະવʹ͙ ɾϑϩϯτΤϯυͱͷڠۀΛεϜʔζʹ͢ΔΈ ɾอकੑΛߴΊ͍͢ΞʔΩςΫνϟʔ
ɾࣗલͰΤΫηϓγϣϯΛฦ͢ඞཁ͕͋Δ ɾࣗ༝ͷߴ͍ઃܭ͕Մೳ
Recruitment ΤϯδχΞืूதͰ͢ʂ
RECRUITMENT We are Hiring! εφοΫϛʔͰɺʮ͓ͭͱɺੈքΛ໘ന ͘ʯ͍ͯ͘͠ɺͦΜͳ׆ಈΛࣄͱͯ͠औΓ Έ͍ͨΤϯδχΞΛืू͍ͯ͠·͢ɻ IUUQTUFBNTOBRNFDPN εφοΫϛʔ࠾༻