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.6k
[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
320
O11?ODC?一体何が違うのさ?_v1.0.2.pdf
kata_junn
0
1k
[OutSystems] O11 ユーザーに贈る ODC 移行に備えておくと良さそうなコト
kata_junn
0
320
ODC を乗りこなすために理解しておくと良いかもしれないいくつかのこと~Case:External Logic~
kata_junn
0
390
[OutSystems] シン・とりあえず Reactive なプロジェクトにはこれ導入しておくと良い規約
kata_junn
0
250
[OutSystems] Testing Framework がいい。とてもいい。
kata_junn
0
1.6k
[OutSystems] OutSystems が誘う Null がない世界の罠
kata_junn
0
910
[OutSystems] CodeceptJS で快適な E2E ライフを送ろう!
kata_junn
0
310
[Agile][Scrum] 転リファ
kata_junn
3
9.7k
Other Decks in Technology
See All in Technology
DDD集約とサービスコンテキスト境界との関係性
pandayumi
3
290
データ分析エージェント Socrates の育て方
na0
5
480
EncryptedSharedPreferences が deprecated になっちゃった!どうしよう! / Oh no! EncryptedSharedPreferences has been deprecated! What should I do?
yanzm
0
470
Modern Linux
oracle4engineer
PRO
0
150
要件定義・デザインフェーズでもAIを活用して、コミュニケーションの密度を高める
kazukihayase
0
120
react-callを使ってダイヤログをいろんなとこで再利用しよう!
shinaps
2
260
【NoMapsTECH 2025】AI Edge Computing Workshop
akit37
0
220
Webアプリケーションにオブザーバビリティを実装するRust入門ガイド
nwiizo
7
860
Platform開発が先行する Platform Engineeringの違和感
kintotechdev
4
580
機械学習を扱うプラットフォーム開発と運用事例
lycorptech_jp
PRO
0
560
下手な強制、ダメ!絶対! 「ガードレール」を「檻」にさせない"ガバナンス"の取り方とは?
tsukaman
2
450
株式会社ログラス - 会社説明資料【エンジニア】/ Loglass Engineer
loglass2019
4
65k
Featured
See All Featured
Into the Great Unknown - MozCon
thekraken
40
2k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.1k
Designing Experiences People Love
moore
142
24k
A designer walks into a library…
pauljervisheath
207
24k
Documentation Writing (for coders)
carmenintech
74
5k
Testing 201, or: Great Expectations
jmmastey
45
7.7k
Writing Fast Ruby
sferik
628
62k
How to Ace a Technical Interview
jacobian
279
23k
Automating Front-end Workflow
addyosmani
1370
200k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Navigating Team Friction
lara
189
15k
Code Review Best Practice
trishagee
71
19k
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 の責務を明確にできる ⚫ 具体的にどんな実装になるの?
ご清聴ありがとうございました ご質問があれば お願いします!