関心の分離
関心の分離 separation of concerns (かんしんのぶんり)
システムの設計思想。
インプットからアウトプットまでの一連の動作を機能単位で分割し、それぞれに対し、「どのようなことをしたいのか」で分類し、その機能単位で実装しようという設計思想。
たとえば、djangoであれば、データベースとのデータの出し入れは model が担い、htmlページのレンダリングは template が担う。
view は全体の流れをコントロールする。
このとき、 model 用のモジュールには model らしい処理のみを記述するように務める。
view 用のモジュールには、 view らしい処理のみを記述するように務める。
モジュール内にそのモジュールで行いたいこと以外の機能が増えてきた際には、別のモジュールを作り、そこにプログラムを置き換えたりする。
たとえば、システムをアップデートしているうちに、 views モジュールに決済に係る処理が増えてきたら、 新たに payments という名前のモジュールを作り、views モジュールから移転させる。
掲載用語一覧:
TOPへ(新着順に表示できます)i18n
アセンブリ言語 (assembly language)
アンスコ
イテラブル (iterable)
イテレート (iterate)
イミュータブル (immutable)
インスタンス (instance)
WSGI
ウェルノウンポート (well known port)
API
SQL
m17n
MTVフレームワーク (mtv framework)
MVCフレームワーク (mvc framework)
l10n
LTS
演算子 (operator)
オブジェクト指向プログラミング (object oriented programming)
仮想環境 (virtual environment)
関心の分離 (separation of concerns)
git
github
キャメルケース (Camel Case)
クッキー (Cookie)
クライアント (client)
クラス (class)
クラスの継承 (class inheritance)
CRUD
ケバブケース (kebab case)
高階関数 (high order function)
コンパイラ (compiler)
サーバ (server)
CMS
JSON
識別子 (identifier)
辞書 (dictionary)
車輪の再発明 (reinventing the wheel)
シリアライズ (seralize)
スネークケース (snake case)
セッション (Session)
多重継承 (multiple inheritance)
dunder
ディストリビューション (distribution)
デシリアライズ (deserialize)
DRY
認可 (authorization)
認証 (certification)
パスカルケース (Pascal Case)
ハッシュ (hash)
バッテリーインクル-デッド (battery included)
バリデーション (validation)
引数 (argument)
ビルトイン (built in)
フレームワーク (framework)
プロトコル (protocol)
ポート番号 (port number)
メソッド (method)
メンバー (member)
UUID
ライブラリ (library)
LAMP
リクエストメソッド (request method)
RESTful
レンダリング (rendering)
この用語集はこんな人が書いています
2025年05月14日 10:40
小川 慶一さん
2025年05月14日 09:33
AIユーザさん
2025年05月14日 09:33
jinoseさん
2025年05月14日 09:32
AIユーザさん
2025年05月14日 09:32
jinoseさん