Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
OutSystems愛知ユーザー会#3使用 回答例
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
out-developers
January 29, 2020
Programming
260
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
OutSystems愛知ユーザー会#3使用 回答例
out-developers
January 29, 2020
More Decks by out-developers
See All by out-developers
OutSystemsベストプラクティス紹介
outdevelopers
1
1.3k
Other Decks in Programming
See All in Programming
ハーネス設計入門 〜 基礎知識の整理から実務へのステップアップ 〜
kinopeee
20
21k
Embedded Swiftで作る自作USBデバイス によるiOSデバイスの自動テスト / iOSDC Japan 2026 glassfiber
glassfiber
0
290
ジョジョの世界をXRで再現する
mofurune
0
100
Findy - エンジニア向け会社紹介/Findy Company Deck
findyinc
6
400k
技術的負債を組織課題として解く-増えすぎたマイクロサービスとの戦い-
reimaru
1
2.8k
モジュールの視点からSwiftを読み解く #iosdc
s_shimotori
0
340
Herb in Rails 8.2: Your ERB views, now HTML-aware @ Rails World 2026, Austin, Texas
marcoroth
0
190
Java 27新機能 / Java 27 new features
kishida
2
200
スマートフォンでモールス信号を送受信する 〜スマートフォンのLEDとカメラで作る光通信の設計と実装〜
atsuki_seo
0
230
更なる可用性を求めて、5年間運用したKotlinのアプリケーションをGoでリプレイスする話
ken_tunc
0
440
そのリトライ、死んだコネクションを使い回していませんか ── GoのHTTPクライアントとHTTP/2を実プロダクト障害から学び直す
myus4a
0
390
難しいけど、読めた。- OSSの入口に立った話。
sts11142
0
140
Featured
See All Featured
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
300
Become a Pro
speakerdeck
PRO
31
6.3k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Skip the Path - Find Your Career Trail
mkilby
1
240
Joys of Absence: A Defence of Solitary Play
codingconduct
1
530
The SEO identity crisis: Don't let AI make you average
varn
0
580
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
390
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
Building a Modern Day E-commerce SEO Strategy
aleyda
45
9.2k
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
690
VelocityConf: Rendering Performance Case Studies
addyosmani
331
25k
The Spectacular Lies of Maps
axbom
PRO
1
1.1k
Transcript
回答例
使用していない変数、Entityは削除する • GroupEntity • TaskEntity: Attrebute GroupId • home :ローカル変数Count
• Tasks Preparation:GetGroupAggregate • ServerActions: GetTasksByStatus
命名規則に沿った内容にする • 意味が伝わりやすい名前にする – WebScreen : Detail→TaskDetail – InputParameter :
commentInsert Task → TaskId • パスカルケースを使用する – WebScreen : home → Home commentInsert → CommentInsert • 外部キーには「Id」というサフィックスを付ける – Entity : Comment User → UserId Task → TaskId Task Priority → PriorityId
ハードコーディングは避ける • home:Preparationでのデータ取得 GetTasksTodo
ハードコーディングは避ける • home:Preparationでのデータ取得 GetTasksdoing,GetTasksComplete
ハードコーディングは避ける • Tasks の優先度アイコンの表示設定
SQLよりはAggregateを使う • home:PreparationGetTasksdoing,GetTasksComplete GetTasksTodoと同じ方法で代替可能
クエリの数を最小限にする • home:ChartStatusCountはForEachを使わなくても取得可能
クエリの数を最小限にする • home:ChartStatusCountはForEachを使わなくても取得可能
再利用化する • タスク一覧にある優先度アイコンはhomeにもTasksにもあるの でWebBlockにまとめる – InputParameterによってアイコンを変えるWebBlockを作る – home、TasksにWebBlockを配置
再利用化する • タスク一覧にある優先度アイコンはhomeにもTasksにもあるの でWebBlockにまとめる – InputParameterによってアイコンを変えるWebBlockを作る – home、TasksにWebBlockを配置
再利用化する(ロジック)① • homePreparationの GetTask~はStatus毎の件数 を出してExpressionに表示して いる
再利用化する(ロジック)① • homePreparationの GetTask~はStatus毎の件数 を出してExpressionに表示して いる
再利用化する(ロジック)② • StatusId:InputParameter 件数:OutputParameterの ServerActionを作成 (FunctionはYesにする)
再利用化する(ロジック)③ • ExpressionValueにServerActionが 選択できるように
モジュールを分割する① モジュールをCloneする以外の手順 ①データを保持するモジュールを作成 ②分割前のモジュールのEntityを参照する ③参照元のEntityのコピーを作成する
モジュールを分割する② ③参照元のEntityのデータをコピーしたEntityに保存する アクションを作る ④③のアクションを実行する(タイマーなどで) ⑤コピーしたEntityを参照して動作確認できたら 分割前のモジュールのEntityを削除する
その他細かい箇所 • Is Mandatoryプロパティを忘れずに設定する – Entity:Task Titleや Comment:Text (Formも同様に設定する) •
サイトプロパティはロジック内で書き換えない – Tasks:PreparationのFileter(Site.Tasks_SearchStatusId) • 表示、非表示の定義の仕方は統一したほうがよい – Commentformの表示・非表示だけ プロパティ:Displayに設定している