例外処理とその他の事象(まとめ用)
例外処理とは
例外とは、ある処理を実行したときに、望んでいた結果にならず、エラーが発生してしまうことです。エラーが起きると、その後の処理は中止してしまうため、実行されなくなります。
そのため、例外処理をコードに書くことによって、予め起こりそうなエラーを処理し、スムーズに処理されるようにします。
オブジェクト指向とは
- オブジェクト指向は、プログラミングのパラダイムの一つであり、コードの再利用性や保守性を高める手法です。
- クラスとオブジェクトの概念を導入し、データとそれに関連するメソッド(処理)をひとまとめに管理することができます。
- オブジェクト指向の主な特徴は、カプセル化、継承、ポリモーフィズムです。
- カプセル化はデータとメソッドを隠蔽することで、外部からの不正なアクセスを制限します。
- 継承は既存のクラスを拡張することで、コードの再利用性や保守性を向上させます。
アプリケーションを設計するうえでの原則
アプリケーションを作成するうえで、単一責任の原則があります。
単一責任の原則とは
→1つのクラスには1つの役割しか持たないようにすること
例えば、あるお店で社員の勤務時間や給与を管理するアプリケーションを作成し、社員クラスを作成してその中で勤務時間と給与を管理しようとします。
その時、ある社員の勤務時間を変更しようとすると、社員クラス全体(勤務時間と給与の管理システム)に影響を与えてしまうことにつながりかねません。
→そのため、社員クラス内に勤務時間クラスと給与クラスを作成し、それぞれ別々に処理されるほうがいいです。
社員クラス(親クラス) →{勤務時間クラス、給与クラス}(子クラス)
そうすると、自他ともにコードを見たときに読みやすく、修正もしやすいです。
また、例えば、追加で社内規定の残業時間を超えていないか確認できるシステムを導入するとなった時、どのようにクラスを取り扱うべきでしょうか?
残業時間の管理なんだから、勤務時間クラスでまとめればいいのではと考えてしまうかもしれません。
しかし、別に既定の残業時間を超えていないか確認する要素がなくても、勤務時間を管理する役割は全うできると思います。
そのため、単一責任の原則に従って勤務時間管理の役割を複雑なものにすることなく、勤務時間クラスとは別クラスに分ける必要があります。
この記事が気に入ったらサポートをしてみませんか?