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ベストプラクティス紹介
Search
out-developers
January 29, 2020
Programming
0
540
OutSystemsベストプラクティス紹介
out-developers
January 29, 2020
Tweet
Share
More Decks by out-developers
See All by out-developers
OutSystems愛知ユーザー会#3使用 回答例
outdevelopers
0
220
Other Decks in Programming
See All in Programming
プロパティベーステストによるUIテスト: LLMによるプロパティ定義生成でエッジケースを捉える
tetta_pdnt
0
1.4k
ユーザーも開発者も悩ませない TV アプリ開発 ~Compose の内部実装から学ぶフォーカス制御~
taked137
0
180
Cache Me If You Can
ryunen344
2
1.2k
さようなら Date。 ようこそTemporal! 3年間先行利用して得られた知見の共有
8beeeaaat
3
1.4k
The Past, Present, and Future of Enterprise Java with ASF in the Middle
ivargrimstad
0
120
MCPとデザインシステムに立脚したデザインと実装の融合
yukukotani
4
1.4k
Swift Updates - Learn Languages 2025
koher
2
480
モバイルアプリからWebへの横展開を加速した話_Claude_Code_実践術.pdf
kazuyasakamoto
0
330
Vue・React マルチプロダクト開発を支える Vite
andpad
0
110
rage against annotate_predecessor
junk0612
0
170
アルテニア コンサル/ITエンジニア向け 採用ピッチ資料
altenir
0
110
250830 IaCの選定~AWS SAMのLambdaをECSに乗り換えたときの備忘録~
east_takumi
0
390
Featured
See All Featured
GraphQLとの向き合い方2022年版
quramy
49
14k
Building Flexible Design Systems
yeseniaperezcruz
328
39k
Building a Modern Day E-commerce SEO Strategy
aleyda
43
7.6k
Rails Girls Zürich Keynote
gr2m
95
14k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.6k
Typedesign – Prime Four
hannesfritz
42
2.8k
Building Applications with DynamoDB
mza
96
6.6k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
15k
The World Runs on Bad Software
bkeepers
PRO
70
11k
Git: the NoSQL Database
bkeepers
PRO
431
66k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Code Review Best Practice
trishagee
70
19k
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を使用 • オーケストレーション:ダッシュボード • エンドユーザ:ユーザーが使用する画面 • コア:データやビジネスロジック
• ライブラリ:外部システムのコネクタとか 他システムで使用できるもの
まとめ 誰から見ても理解しやすいようにしよう 処理の高速化のため、管理のため簡素にしよう 後から変更しやすいシステムを作ろう