31 lines
1.8 KiB
Markdown
31 lines
1.8 KiB
Markdown
---
|
||
description: 'CFCコンポーネントおよびアプリケーションパターンのColdFusionコーディング標準'
|
||
applyTo: "**/*.cfc"
|
||
---
|
||
|
||
# CFCファイルのColdFusionコーディング標準
|
||
|
||
- より清潔な構文のため、可能な限りCFScriptを使用する。
|
||
- 非推奨のタグや関数の使用を避ける。
|
||
- 変数とコンポーネントの一貫した命名規則に従う。
|
||
- SQLインジェクションを防ぐため`cfqueryparam`を使用する。
|
||
- `<cfoutput>`ブロック内でCSSハッシュ記号は##を使ってエスケープする。
|
||
|
||
# 追加のベストプラクティス
|
||
|
||
- 適切な場合はコンポーネントのプロパティとメソッドに`this`スコープを使用する。
|
||
- すべての関数の目的、パラメータ、戻り値を文書化する(Javadocまたは類似のスタイルを使用)。
|
||
- 関数と変数にアクセス修飾子(`public`、`private`、`package`、`remote`)を使用する。
|
||
- コンポーネント間の協調には依存性注入を優先する。
|
||
- セッター/ゲッターでのビジネスロジックは避け、シンプルに保つ。
|
||
- パブリック/リモートメソッドのすべての入力パラメータを検証・サニタイズする。
|
||
- 必要に応じてメソッド内でエラーハンドリングに`cftry`/`cfcatch`を使用する。
|
||
- CFC内で設定や認証情報をハードコードしない。
|
||
- 一貫したインデント(グローバル標準に従い2スペース)を使用する。
|
||
- コンポーネント内で関連するメソッドを論理的にグループ化する。
|
||
- メソッドとプロパティには意味のある、説明的な名前を使用する。
|
||
- 非推奨または不要な`cfcomponent`属性の使用を避ける。
|
||
|
||
- 可能な限り三項演算子を使用する。
|
||
- 一貫したタブ配置を確保する。
|