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
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
kata_junn
September 06, 2021
Technology
1
1.7k
[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
480
O11?ODC?一体何が違うのさ?_v1.0.2.pdf
kata_junn
0
1.4k
[OutSystems] O11 ユーザーに贈る ODC 移行に備えておくと良さそうなコト
kata_junn
0
590
ODC を乗りこなすために理解しておくと良いかもしれないいくつかのこと~Case:External Logic~
kata_junn
0
460
[OutSystems] シン・とりあえず Reactive なプロジェクトにはこれ導入しておくと良い規約
kata_junn
0
290
[OutSystems] Testing Framework がいい。とてもいい。
kata_junn
0
1.8k
[OutSystems] OutSystems が誘う Null がない世界の罠
kata_junn
0
1k
[OutSystems] CodeceptJS で快適な E2E ライフを送ろう!
kata_junn
0
340
[Agile][Scrum] 転リファ
kata_junn
3
11k
Other Decks in Technology
See All in Technology
スピンアウト講座01_GitHub管理
overflowinc
0
1.3k
ReactのdangerouslySetInnerHTMLは“dangerously”だから危険 / Security.any #09 卒業したいセキュリティLT
flatt_security
0
480
イベントで大活躍する電子ペーパー名札を作る(その2) 〜 M5PaperとM5PaperS3 〜 / IoTLT @ JLCPCB オープンハードカンファレンス
you
PRO
0
200
開発チームとQAエンジニアの新しい協業モデル -年末調整開発チームで実践する【QAリード施策】-
qa
0
250
ThetaOS - A Mythical Machine comes Alive
aslander
0
150
モジュラモノリス導入から4年間の総括:アーキテクチャと組織の相互作用について / Architecture and Organizational Interaction
nazonohito51
3
1.8k
AI時代のオンプレ-クラウドキャリアチェンジ考
yuu0w0yuu
0
230
スピンアウト講座06_認証系(API-OAuth-MCP)入門
overflowinc
0
1.1k
SaaSに宿る21g
kanyamaguc
2
150
20年以上続く PHP 大規模プロダクトを Kubernetes へ ── クラウド基盤刷新プロジェクトの4年間
oogfranz
PRO
0
170
欠陥分析(ODC分析)における生成AIの活用プロセスと実践事例 / 20260320 Suguru Ishii & Naoki Yamakoshi & Mayu Yoshizawa
shift_evolve
PRO
0
380
大規模ECサイトのあるバッチのパフォーマンスを改善するために僕たちのチームがしてきたこと
panda_program
1
390
Featured
See All Featured
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
250
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
62
52k
Designing Powerful Visuals for Engaging Learning
tmiket
0
290
How STYLIGHT went responsive
nonsquared
100
6k
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
150
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
500
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
93
Principles of Awesome APIs and How to Build Them.
keavy
128
17k
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
75
Heart Work Chapter 1 - Part 1
lfama
PRO
5
35k
Fashionably flexible responsive web design (full day workshop)
malarkey
408
66k
Believing is Seeing
oripsolob
1
94
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 の責務を明確にできる ⚫ 具体的にどんな実装になるの?
ご清聴ありがとうございました ご質問があれば お願いします!