Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

ASP.NET WebAPI 体験記 #clrh99

http://clrh.connpass.com/event/28972/
CLR/H #clrh99 ~サクラサク~で話しました。

  • Login to see the comments

ASP.NET WebAPI 体験記 #clrh99

  1. 1. ASP.NET WebAPI 体験記 CLR/H ~サクラサク~ #clrh99 CLR/H @KatsuYuzu
  2. 2. 自己紹介 • Twitter • しみみん@KatsuYuzu • Blog • http://katsuyuzu.hatenablog.jp/ • 開発 • ASP.NET • TypeScript • AngularJS • ゲーム • Ultima Online
  3. 3. CLR/H http://clr-h.jp/ • 2か月に1度くらい • テーマ自由 • 共催歓迎 • 日程や場所のご相談 大歓迎 5分~ 話してくれる方 募集中 テーマも形式も問いません 告知などでもOK!
  4. 4. 目次 • ASP.NET WebAPIって何 • SIerの現場 • 目標 • 使ってみるの第一歩
  5. 5. ASP.NET WebAPIって何
  6. 6. WebAPIとは • HTTPサービス https://api.line.me/v1/profile LINE Developers - REST APIs - API reference https://developers.line.me/restful-api/api- reference#getting_user_profile_sample_response
  7. 7. ASP.NET WebAPIとは • ASP.NET ASP.NET Web API は、ブラウザーやモバイ ル デバイスなどを含む多様なクライアント に提供できる HTTP サービスの構築が容易 になるフレームワークです。 ASP.NET Web API は、.NET Framework 上で RESTful アプリケーションを構築するための プラットフォームとして理想的です。 ASP.NET Web API 2 https://msdn.microsoft.com/ja-jp/library/dn448365(v=vs.118).aspx
  8. 8. RESTful • 設計 REST – Wikipedia https://ja.wikipedia.org/wiki/REST
  9. 9. ASP.NET WebAPI • ASP.NET Web API 2 • https://msdn.microsoft.com/ja- jp/library/dn448365(v=vs.118).aspx • 初めての ASP.NET Web API • http://www.asp.net/web- api/overview/getting-started-with-aspnet- web-api/tutorial-your-first-web-api
  10. 10. SIerの現場 せやかてエンタープライズ
  11. 11. 某 現場 • メインウェポン • VB6, WindowsForm から 直接データベースを操作 • えらい人 • 「これ iPad で動くの?」事変 → Web でマルチプラットフォーム
  12. 12. 某 現場 • ASP.NET MVC を社内で広める活動 • CLR/H in Tokyo 第5回 でWebの概要と ASP.NET MVCについて話してきました #clrhtky5 - KatsuYuzuのブログ • http://katsuyuzu.hatenablog.jp/entry/2014/11/0 1/233837
  13. 13. 某 現場 • ASP.NET MVC を社内で広める活動 • CLR/H in Tokyo 第5回 でWebの概要と ASP.NET MVCについて話してきました #clrhtky5 - KatsuYuzuのブログ • http://katsuyuzu.hatenablog.jp/entry/2014/11/0 1/233837
  14. 14. 某 現場 • ASP.NET MVC を社内で広める活動 • CLR/H in Tokyo 第5回 でWebの概要と ASP.NET MVCについて話してきました #clrhtky5 - KatsuYuzuのブログ • http://katsuyuzu.hatenablog.jp/entry/2014/11/0 1/233837
  15. 15. 某 現場 • ASP.NET MVCが得意とするところの 紙芝居的なWebサイトは布教した • えらい人 • 「GMailや365みたいのはできる?」事変 → 紙芝居的ではなく SPA が必要
  16. 16. 某 現場 • SPA(シングルページアプリケーション) • クライアントサイド(ブラウザ)が主戦場 • みんな • 「サーバーでModel(値の入れ物)作らな いといけないし、クライアントでも値取得 あるし、混乱してきた!」 → ASP.NET MVCは画面配信に注力させて、 値取得はASP.NET WebAPIに寄せよう
  17. 17. 某 現場 • みんな • 「ASP.NET WebAPIの挙動がASP.NET MVCと全 然違うからわかんないよ!」 • 違い • 規定のルーティングが違う • MVC: {Controller}/{Action} • WebAPI: {Controller} • ActionはHTTPアクションで判別 • モデルバインダーの動きが違う • MVC: HTTPアクション、プリミティブかどうかなど に捉われずにバインドされる • WebAPI: 明確に区別されていて学習コストが必要
  18. 18. 某 現場 • 要件 • 顧客先の社内システム • いわゆるAPIとしての外部公開はない • 現場はあくまでもIT企業のサラリーマン →いろいろ割り切っていいよ!
  19. 19. ざっくりASP.NET WebAPI • RESTfulは考えない • 男は黙って POST • ASP.NET MVCライクにやる • {Controller}/{Action}でルーティング • Swaggerなどの付帯要素は使わない • 覚えるキーワードを増やさない → URLも今までのASP.NET MVC通り モデルバインダーも今までのASP.NET MVC通り
  20. 20. まとめ
  21. 21. まとめ • 使えるように使ってみる • 興味がわいたら覚えてみる • 目標 • 使ってみるの第一歩

×