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
[OutSystems] とりあえず Reactive なプロジェクトにはこれ導入しておくと良...
Search
kata_junn
September 06, 2021
Technology
1
1.4k
[OutSystems] とりあえず Reactive なプロジェクトにはこれ導入しておくと良いって規約
OutSystems で Reactive なアプリを開発する際の規約の提言です
あつまれOutSystems Developer!開発者超会議
#6(2021/08/25) にて LT した内容です
kata_junn
September 06, 2021
Tweet
Share
More Decks by kata_junn
See All by kata_junn
[OutSystems] ユニットテスト in OutSystems
kata_junn
0
100
O11?ODC?一体何が違うのさ?_v1.0.2.pdf
kata_junn
0
380
[OutSystems] O11 ユーザーに贈る ODC 移行に備えておくと良さそうなコト
kata_junn
0
160
ODC を乗りこなすために理解しておくと良いかもしれないいくつかのこと~Case:External Logic~
kata_junn
0
220
[OutSystems] シン・とりあえず Reactive なプロジェクトにはこれ導入しておくと良い規約
kata_junn
0
190
[OutSystems] Testing Framework がいい。とてもいい。
kata_junn
0
1.1k
[OutSystems] OutSystems が誘う Null がない世界の罠
kata_junn
0
730
[OutSystems] CodeceptJS で快適な E2E ライフを送ろう!
kata_junn
0
270
[Agile][Scrum] 転リファ
kata_junn
3
8.5k
Other Decks in Technology
See All in Technology
Developers Summit 2025 浅野卓也(13-B-7 LegalOn Technologies)
legalontechnologies
PRO
0
710
データ資産をシームレスに伝達するためのイベント駆動型アーキテクチャ
kakehashi
PRO
2
530
抽象化をするということ - 具体と抽象の往復を身につける / Abstraction and concretization
soudai
16
3.6k
7日間でハッキングをはじめる本をはじめてみませんか?_ITエンジニア本大賞2025
nomizone
2
1.8k
人はなぜISUCONに夢中になるのか
kakehashi
PRO
6
1.6k
ハッキングの世界に迫る~攻撃者の思考で考えるセキュリティ~
nomizone
13
5.2k
データの品質が低いと何が困るのか
kzykmyzw
6
1.1k
リアルタイム分析データベースで実現する SQLベースのオブザーバビリティ
mikimatsumoto
0
1.3k
一度 Expo の採用を断念したけど、 再度 Expo の導入を検討している話
ichiki1023
1
170
Data-centric AI入門第6章:Data-centric AIの実践例
x_ttyszk
1
400
Amazon S3 Tablesと外部分析基盤連携について / Amazon S3 Tables and External Data Analytics Platform
nttcom
0
130
PHPカンファレンス名古屋-テックリードの経験から学んだ設計の教訓
hayatokudou
2
260
Featured
See All Featured
How GitHub (no longer) Works
holman
314
140k
How to Think Like a Performance Engineer
csswizardry
22
1.3k
Fireside Chat
paigeccino
34
3.2k
It's Worth the Effort
3n
184
28k
Building a Scalable Design System with Sketch
lauravandoore
461
33k
Art, The Web, and Tiny UX
lynnandtonic
298
20k
Code Reviewing Like a Champion
maltzj
521
39k
Automating Front-end Workflow
addyosmani
1368
200k
Fashionably flexible responsive web design (full day workshop)
malarkey
406
66k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
30
2.2k
Building a Modern Day E-commerce SEO Strategy
aleyda
38
7.1k
Designing for Performance
lara
604
68k
Transcript
とりあえず Reactive なプロジェクトには これ導入しておくと良い、って規約 片野 潤一 伊藤忠テクノソリューションズ株式会社 アジャイル営業推進部 あつまれ OutSystems
Developer! 開発者超会議
Java Struts/Spring/MyBATIS 2005 2014 OutSystems Developer@3人(6か月) Developer && TL@約10人(24か月) OutSystems
推進 2019 2020 Scrum on AWS Role:Developer TypeScript Serverless Dynamo, Lambda, S3, SQS, Kinesis, Athena Angular 認定スクラムマスター(CSM) AWS Certified DevOps Engineer - Professional OutSystems Expert Traditional Web Developer OutSystems Architecture Specialist 好き:リアル脱出ゲーム、低温調理、スパイス、モブプロ、DQW、ゼルダ 20% OutSystems OutSystems 推進 Expert Service BootCamp 講師 PoC 提案+実施 now!! 2 片野 潤一(かたじゅん) Twitter:@kata_junn
3 Traditional だよ! Zoom の チャットで教えてください! 今やってるプロジェクトは… Reactive だよ! OutSystems
未導入だよ!
今日の話が響きそうな人 ⚫ Reactive なアプリケーションを実装している人 ⚫ これから Reactive なアプリケーションに関わりそうな人 ⚫ Traditional
はもう飽きたな、な人 ⚫ OutSystems の規約の雰囲気を味わいたい人 4
Façade Action
6 “Facade(ファサード)とは「建物の正面」を意味す る。異なるサブシステムを単純な操作だけを持った Facadeクラスで結び、サブシステム間の独立性を高め る事を目的とする。 Wikipedia https://ja.wikipedia.org/wiki/Facade_%E3%83%91%E3%82%BF%E3%8 3%BC%E3%83%B3
Screen Action Server Action
Screen Action Server Action
Screen Action Server Action
Screen Action Server Action Screen Action から Server Action 呼び出しは
1 回以下
None
Façade Action
13 “Facade(ファサード)とは「建物の正面」を意味す る。異なるサブシステムを単純な操作だけを持った Facadeクラスで結び、サブシステム間の独立性を高め る事を目的とする。 Wikipedia https://ja.wikipedia.org/wiki/Facade_%E3%83%91%E3%82%BF%E3%8 3%BC%E3%83%B3
14 “Facade(ファサード)とは「建物の正面」を意味す る。異なるサブシステムを単純な操作だけを持った Facadeクラスで結び、サブシステム間の独立性を高め る事を目的とする。 Wikipedia https://ja.wikipedia.org/wiki/Facade_%E3%83%91%E3%82%BF%E3%8 3%BC%E3%83%B3 いろんな処理を捌いてくれる執事
None
None
Façade Action
Façade Action Screen Action と 1:1 の Façade Action を作る
Façade Action の具体的な規約 ⚫ フォルダ/Action 名 ⁻ ServerActions -> [Screen
名] ⁻ [Screen 名]_[Screen Action 名]Facade ⁻ ex. HogeDetail_SaveFacade ⚫ 他細かいの ⁻ Façade Action → Façade Action 呼び出し禁止 ⁻ Server Action → Façade Action 呼び出し禁止
Façade Action を設ける利点 ⚫ Screen Action の品質一定化 ⁻ Screen Action
が呼び出す Server Action が明確になる ⁻ 規約に従うと Reactive 実装ベストプラクティスが遵守できる ⚫ 実装責務の明確化 ⁻ Screen Action、Façade Action、(非 Façade な)Server Action ⁻ 副次的に影響範囲の局所化
Façade Action の責務 ⚫ 画面機能に特化したサーバーサイドロジックの実装 ⁻ 共通ロジックに切り出す必要がないロジックを実装 ⚫ ビジネスロジックのオーケストレータ ⁻
共通ロジックへのパラメータ授受 ⁻ 呼び出し順序制御 ⁻ エラーハンドリング
まとめ ⚫ Façade Action を設けるといいこといっぱい! ⁻ Reactive 実装のベストプラクティスに則ることができる ⁻ Screen
Action/Façade Action/Server Action の責務を明確にできる ⚫ 具体的にどんな実装になるの?
ご清聴ありがとうございました ご質問があれば お願いします!