モジュール分割
Module Decomposition
もじゅーるぶんかつ
他の資格での定義
プログラムを機能単位のまとまり(モジュール)に分けて開発する手法。モジュール間の独立性を高めることで、開発効率の向上や保守性の改善が図れる。
プログラムを独立性の高い機能単位のモジュールに分割する設計手法。STS分割やTR分割、共通機能分割などの手法がある。モジュールの凝集度を高め、結合度を低くすることが良い設計の基準であり、保守性と再利用性の向上に寄与する。
ソフトウェアを独立性の高いモジュール(部品)に分割する設計技法。モジュール強度(凝集度)を高く、モジュール結合度を低くすることが設計原則。STS分割、TR分割、共通機能分割などの技法がある。
関連キーワードの用語
関数が自分自身を呼び出すプログラミング技法。基底条件(終了条件)と再帰ステップで構成される。木構造の巡回、フィボナッチ数列、ハノイの塔などの問題に適する。スタックオーバーフローに注意が必要で、末尾再帰最適化やメモ化で改善できる。
プログラムの記述スタイルや命名規則、コメントの書き方、インデンテーション、ネストの深さ制限、使用禁止命令などを統一するための規約。可読性・保守性の向上とバグ混入の防止を目的とし、チーム開発での一貫性を確保する。
オブジェクト指向プログラミングにおいて、スーパークラスで定義されたメソッドをサブクラスで再定義すること。ポリモーフィズム(多態性)の実現手段であり、同じメソッド名でクラスごとに異なる振る舞いを実装できる。
同一名のメソッドや関数を引数の型や数を変えて複数定義すること。コンパイル時に引数に応じて適切なメソッドが選択される(静的多態性)。コンストラクタのオーバーロードにより、異なる初期化方法を提供できる。
データとそれに対する操作をまとめて定義し、実装の詳細を隠蔽したデータ型。スタック、キュー、リストなどが代表例。利用者はインタフェースのみを通じてデータにアクセスし、実装に依存しないプログラミングが可能になる。
Webブラウザ上でネイティブに近い速度でプログラムを実行するためのバイナリ命令形式。C/C++、Rustなどからコンパイル可能で、JavaScriptと連携して動作する。サンドボックス環境で安全に実行される。