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 API 開発を加速しよう - Avanade Beef のご紹介 / Accelera...
Search
Takashi Shinohara
April 23, 2022
Programming
3.7k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Web API 開発を加速しよう - Avanade Beef のご紹介 / Accelerate your web API - development introducing Avanade Beef
.NET ラボ 勉強会 2022 年 5 月 (
https://dotnetlab.connpass.com/event/246279
) に登壇したときのスライドです。
Takashi Shinohara
April 23, 2022
More Decks by Takashi Shinohara
See All by Takashi Shinohara
Microsoft Build 2026 振り返り会 / Recap Microsoft Build 2026
karamem0
0
91
Microsoft 365 Copilot API を試してみる / Trying out Microsoft 365 Copilot APIs
karamem0
0
120
Microsoft 365 の認証と承認を理解する / Understanding Microsoft 365 Authentication and Authorization
karamem0
0
220
Power Automate のパフォーマンス改善レシピ / Power Automate Performance Improvement Recipes
karamem0
0
520
どっちの API SHOW?SharePoint 開発における SharePoint REST API Microsoft Graph API の違い / Which API show? Differences between Microsoft Graph API and SharePoint REST API
karamem0
0
2.3k
Microsoft Ignite 2024 最新情報!Microsoft 365 Agents SDK 概要 / Microsoft Ignite 2024 latest news Microsoft 365 Agents SDK overview
karamem0
0
610
徹底解説!Microsoft 365 Copilot の拡張機能 / Complete guide to Microsoft 365 Copilot extensions
karamem0
1
4.7k
Microsoft Search の Graph コネクタ ハンズオン / Handson for Graph Connector of Microsoft Search
karamem0
0
340
いまだから「検索」を語ろう! SharePoint FAST Search から Microsoft Search セマンティックインデックスまで / Let's talk about search now
karamem0
4
1.9k
Other Decks in Programming
See All in Programming
エンジニアにデザインハーネスを 〜デザインプロセスを規定するためのハーネス〜 / Design harness from an engineer's perspective
rkaga
2
630
Performance Engineering for Everyone
elenatanasoiu
0
250
Semantic Version 単位で戦略を柔軟に変えて、パッケージアップデートを自動化する
daitasu
1
340
dRuby over BLE
makicamel
2
400
例外の正しい扱い方 そのエラー try-catchして大丈夫?
jinwatanabe
0
320
Contextとはなにか
chiroruxx
1
390
The Bowling Game- From Imperative to Functional Programming - Part 1
philipschwarz
PRO
0
250
SREは、MCPとSRE Agentをこう使え!
kazumax55
0
130
関数型プログラミングのメリットって何だろう?
wanko_it
0
120
霧の中の代数的エフェクト
funnyycat
1
110
Skillsは効率化、Agentsは"自分の拡張"——Builder時代のエージェント編成(CC Night 2026)
wemra
1
190
AI がコードを書く時代における新卒エンジニアの仕事風景 (2026) / New Graduate Engineers in the Era of AI Coding (2026)
sushichan044
0
200
Featured
See All Featured
SEO for Brand Visibility & Recognition
aleyda
0
4.6k
The Cult of Friendly URLs
andyhume
79
6.9k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
49
10k
Deep Space Network (abreviated)
tonyrice
0
220
GraphQLとの向き合い方2022年版
quramy
50
15k
Code Reviewing Like a Champion
maltzj
528
40k
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
860
Fashionably flexible responsive web design (full day workshop)
malarkey
408
66k
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
460
Navigating Team Friction
lara
192
16k
Sam Torres - BigQuery for SEOs
techseoconnect
PRO
0
300
For a Future-Friendly Web
brad_frost
183
10k
Transcript
Web API 開発を加速しよう - Avanade Beef のご紹介 .NET ラボ 勉強会
2022 年 4 月 2022/4/23 篠原 敬志 (@karamem0)
自己紹介 篠原敬志 (Takashi Shinohara) アバナード株式会社 マネージャー Microsoft MVP for Office
Development (2018-) Japan M365 Dev User Group 運営 SharePoint をベースとしたアプリケーション開発に従事していました。近 年は Power Platform、Microsoft 365、Microsoft Azure を使った DX の支援を実施しています。アジャイル コーチ/スクラム マスターとしても 活動しています。
アバナードについて アクセンチュア × マイクロソフト = アバナード
本日のアジェンダ What is our problem? What is Beef? How to
use Beef?
アプリ開発の課題 マイクロサービス マルチデバイス アジリティ
アプリ開発に求められるもの 簡単な構成で 素早く構築でき 変化に強く 生産性が高い
本日のアジェンダ What is your problem? What is Beef? How to
use Beef?
Beef とは ビジネス エンティティ実行フレームワーク データ ドリブンでコードを自動生成することで Web API 開発のローコード化を実現 MIT
ライセンスで公開 https://github.com/Avanade/Beef
Beef が目指すもの 価値: ビジネス価値に集中 速度: コストと市場投入までの時間を短縮 シンプル: 学習を最小限に低減 標準化: 知識豊富な人材の増加
一貫性: 全体的な品質と保守性の向上 柔軟性: イノベーションと進化の実現 信頼性: 納期とリスクの軽減
Beef の機能 リッチなエンティティ (DTO) とリレーション データの整合性と一貫性を保証するバリデーション 標準化されたデータベースの CRUD の作成 データベースのセットアップ、構成、デプロイを自動化するためのツール
ページング (skip および top) のサポート ETag での同時実行制御のサポート JSON レスポンスのフィルタリング HTTP PATCH のサポート gRPC サーバーとの統合 イベント駆動型アーキテクチャ
Beef の概念アーキテクチャ
Beef のアプリケーション レイヤー
Beef のイベント駆動型アーキテクチャ
Beef のテンプレート .NET Core のカスタム テンプレートによりプロジェクトを簡単に作成可能 プロジェクト 説明 Company.AppName.Api サービス
インターフェイス Company.AppName.Business ビジネス ロジック コンポーネント Company.AppName.CodeGen エンティティおよび参照データコード生成コンソールツール Company.AppName.Common エンティティおよびサービス エージェントの共通コンポーネント Company.AppName.Database データベースおよびデータ管理コンソールツール Company.AppName.Test テストプロジェクト (NUnit) データソースの種類を選択可能 (Database, EntityFramework, Cosmos)
本日のアジェンダ What is your problem? What is Beef? How to
use Beef?
DEMO https://github.com/Avanade/Beef/blob/master/docs/Sample-EntityFramework- GettingStarted.md
まとめ
まとめ 価値を最大化するためにはできるだけ無駄をなくさなければならない 自動化できるところは楽をして価値を生み出す作業に集中するべき DX 推進にはシステムを API として提供する必要がある 👇 Beef はいいぞ
ご清聴ありがとうございました