$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
OutSystemsベストプラクティス紹介
Search
out-developers
January 29, 2020
Programming
0
740
OutSystemsベストプラクティス紹介
out-developers
January 29, 2020
Tweet
Share
More Decks by out-developers
See All by out-developers
OutSystems愛知ユーザー会#3使用 回答例
outdevelopers
0
230
Other Decks in Programming
See All in Programming
AIコードレビューがチームの"文脈"を 読めるようになるまで
marutaku
0
360
Developing static sites with Ruby
okuramasafumi
0
300
ローターアクトEクラブ アメリカンナイト:川端 柚菜 氏(Japan O.K. ローターアクトEクラブ 会長):2720 Japan O.K. ロータリーEクラブ2025年12月1日卓話
2720japanoke
0
730
Canon EOS R50 V と R5 Mark II 購入でみえてきた最近のデジイチ VR180 事情、そして VR180 静止画に活路を見出すまで
karad
0
120
実は歴史的なアップデートだと思う AWS Interconnect - multicloud
maroon1st
0
200
Rubyで鍛える仕組み化プロヂュース力
muryoimpl
0
140
開発に寄りそう自動テストの実現
goyoki
2
1k
マスタデータ問題、マイクロサービスでどう解くか
kts
0
100
Navigation 3: 적응형 UI를 위한 앱 탐색
fornewid
1
350
ViewファーストなRailsアプリ開発のたのしさ
sugiwe
0
480
生成AIを利用するだけでなく、投資できる組織へ
pospome
2
350
AIエージェントを活かすPM術 AI駆動開発の現場から
gyuta
0
430
Featured
See All Featured
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
Typedesign – Prime Four
hannesfritz
42
2.9k
Agile that works and the tools we love
rasmusluckow
331
21k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
970
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.6k
Java REST API Framework Comparison - PWX 2021
mraible
34
9k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
196
70k
Mobile First: as difficult as doing things right
swwweet
225
10k
Designing for humans not robots
tammielis
254
26k
How to Think Like a Performance Engineer
csswizardry
28
2.4k
Learning to Love Humans: Emotional Interface Design
aarron
274
41k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
54k
Transcript
OutSystemsベストプラクティスの紹介
はじめに ここで紹介する内容はあくまで推奨事項です 必ずそうしないとダメ ということではないので、 開発環境に合わせて調整してください
OutSystemsのホームページにあり
命名規則 誰が見ても役割を理解できるようにしよう 意味がわかりやすい言葉を使おう (例:CheckUser→IsUser) 外部キーは「id」を付けよう (例: 「CustomerId」) パスカルケースを使用する 最初の文字と単語の先頭を大文字にする表記方法 (「例:ZipCode)
コーディング規約 後から見たときにロジックなどわかりやすいようにする アクションフローは縦方向にして、整理する ハードコーディングをしない 会計=製品単価*購入数+製品単価*購入数*0.1 代わりに静的エンティティを使用する
重複した処理は部品化して再利用する ロジックで重複箇所→ユーザーアクションを使用 画面の重複箇所→WebBlockを使用して画面の一部 を再利用
クエリ(AggregateやSQL) 基本はAggregateを使用する SQLは必要なときのみに使用する 何回もAggregateを使うより SQLを1回使って求めているデータが取得ならSQL 実行する必要があるクエリの数は最小限にする
ロジック 使用していない、重複しているものは削除する 画面のPreparationを簡素化する 画面の読み込み速度を向上させるため ノード数は10まで位を目安にする 頻繁に変更する変数としてサイトプロパティを使用し ない サイトプロパティの変更は時間がかかる
アーキテクチャを見直す • 他のモジュールのEntityやWebBlockは ManageDependenciesから参照できる • 役割によってモジュールを分割して、 必要なモジュールを参照して開発していく
モジュールのアーキテクチャ • 4 layersCampasを使用 • オーケストレーション:ダッシュボード • エンドユーザ:ユーザーが使用する画面 • コア:データやビジネスロジック
• ライブラリ:外部システムのコネクタとか 他システムで使用できるもの
まとめ 誰から見ても理解しやすいようにしよう 処理の高速化のため、管理のため簡素にしよう 後から変更しやすいシステムを作ろう