Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Speaker Deck
PRO
Sign in
Sign up for free
さらば,APIコントローラ / OthloTech#45 年度末LTパーティー
Naoki Ikeguchi
March 25, 2019
Programming
0
56
さらば,APIコントローラ / OthloTech#45 年度末LTパーティー
Naoki Ikeguchi
March 25, 2019
Tweet
Share
More Decks by Naoki Ikeguchi
See All by Naoki Ikeguchi
リモートワークと健康 - ヤフー名古屋 Tech Meeting #2
siketyan
0
110
Actual of Japanese Internet
siketyan
3
3.7k
Rust でマイナンバーカードを操作するスマホアプリを作りたい話
siketyan
2
22k
文字ってなんだろう?身近だけど意外と知らない文字コードと絵文字の話 - 技育 CAMP 2021
siketyan
2
350
SPF と DKIM だけで大丈夫?本当は怖いドメイン名と E メール @ TwoGate Tech Meeting
siketyan
1
350
自作キーボードのすすめ / Recommendation of Original Keyboard
siketyan
0
390
人々はなぜ大文字・小文字を正しく使い分けないのか? / Why don't people use upper or lower case correctly?
siketyan
1
410
エディタ戦争? いいえ,エディタ vs IDE 戦争 / 学生LT in 名古屋
siketyan
1
510
部活システム制作のすすめ / 高専カンファレンス × 学生LT in 名古屋
siketyan
0
300
Other Decks in Programming
See All in Programming
Refactor with using `available` and `deprecated`
417_72ki
3
380
OIDC仕様に準拠した Makuake ID連携基盤構築の裏側
ymtdzzz
0
560
Listかもしれない
irof
1
270
AWSとCPUのムフフな関係
cmdemura
0
470
Most Valuable Bug(?) ~インシデント未遂から得た学び~
tatsumiakahori
0
150
[2023년 1월 세미나] 데이터 분석가 되면 어떤 일을 하나요?
datarian
0
600
Excelの助けを借りて楽にシナリオを作ろう
rpa_niiyama
0
300
Qiita Night PHP 2023
fuwasegu
0
11k
Hatena Engineer Seminar #23「新卒研修で気軽に『ありがとう』を伝え合える Slack アプリを開発した話」
slashnephy
0
310
CDKでValidationする本当の方法 / cdk-validation
gotok365
1
210
NGK2023S - OCaml最高! スマホ開発にも使えちゃう?!
haochenxie
0
120
LIFFで動く割り勘アプリTATEKAをリリースしてみた話
inoue2002
0
250
Featured
See All Featured
Atom: Resistance is Futile
akmur
256
24k
Docker and Python
trallard
30
1.9k
It's Worth the Effort
3n
177
26k
How to Ace a Technical Interview
jacobian
270
21k
A Philosophy of Restraint
colly
193
15k
Building Flexible Design Systems
yeseniaperezcruz
314
35k
BBQ
matthewcrist
75
8.1k
Code Reviewing Like a Champion
maltzj
508
38k
Fashionably flexible responsive web design (full day workshop)
malarkey
396
63k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
24
4.6k
What the flash - Photography Introduction
edds
64
10k
How to name files
jennybc
47
73k
Transcript
#OthloTech
去年のプロコンプロダクトの話する Siketyan @ OthloEvent#45 年度末LTパーティー @ 名古屋ギークバー 今さら
去年のプロコンプロダクトの話する Siketyan @ OthloEvent#45 年度末LTパーティー @ 名古屋ギークバー 今さら
さらば, API コントローラ Siketyan @ OthloEvent#45 年度末LTパーティー @ 名古屋ギークバー
自己紹介 • 春から も 豊田高専 情報工学科 • C# + WPF
で GUI を書く • C# + ASP.NET Core で API バックエンドを書く • Java や PHP も書く • JetBrains 信者 • Vim と Sublime Text を使う • 2~4スペースインデント派 • Nuxt.js をはじめました!!!!!!!!!!!!! Twitter: @siketyan
春ですね
API コントローラ,書いてますか?
API コントローラ書きがちな環境 • Laravel : PHP • ASP.NET (Core) :
C# (.NET) • Express : JavaScript (Node.js) etc...
書くのだるくないですか?
API バックエンド書く手順 1. まずはモデルを書きます 2. つぎにマイグレーションを書きます 3. そしてコントローラを書きます 4. さいごにルーティングをします
5. 必要があればミドルウェアを書いたりします 6. できあがり (Laravelの場合,一例)
API バックエンド書く手順 1. まずはモデルを書きます 2. つぎにマイグレーションを書きます 3. そしてコントローラを書きます ←ここだるくない? 4.
さいごにルーティングをします 5. 必要があればミドルウェアを書いたりします 6. できあがり (Laravelの場合,一例)
春は別れの季節
API コントローラとおさらばしよう
ちなみに結論からいうと
まだできてないです
じゃあどうするのか
モデルだけ書いて,終わりたい
Modelized No more Controllers, just Models. (仮)
理想
[Route(“/user”)] [Provide(typeof(SqlProvider)) [Deny(HttpMethod.Put | HttpMethod.Delete)] public class User : IModel
{ [Key] [UniqueId] public string Id { get; set; } [Fillable] [Required] [MaxLength(256)] public string Name { get; set; } }
これを書くだけで コントローラもルーティングもできちゃう (予定)
Modelized(仮)で API コントローラにおさらばしましょう (一通り実装したらOSSとして公開予定です)
ご清聴ありがとうございました