TDDBC仙台09/課題_3

TDDBC仙台09課題:スケジューラー

スケジューラーとは、ジョブ(コマンドやシェルスクリプトなど)を定期的に実行するためのアプリケーションです。

スケジューラーは、スケジューラー設定を元にジョブを決まった時刻に実行します。

本課題では スケジューラー設定 をテーマとします。

課題1 実行時刻の設定

時刻 ()を与えて、スケジューラー設定オブジェクトを作成し、その文字列表現を取得できるようにしましょう。

  • (例) スケジューラー設定の時、分、秒 にそれぞれ 18932 を与えると、その文字列表現は文字列 "32 9 18" となります。
  • 例外的な入力(負の値、数値以外 など)を考慮する必要はありません。
  • うるう秒の考慮は必要はありません。

課題2 実行時刻の判断

課題1で作成したスケジューラー設定オブジェクトを元に、スケジューラーが特定の時刻にジョブを実行するかを判断できるようにしましょう。

具体的には、作成されたスケジューラー設定オブジェクトに特定の時刻を与えて、時刻が一致するかを判断してください。

  • (例) スケジューラー設定 "32 9 18" において、実行時刻は18時9分32秒と一致します
  • (例) スケジューラー設定 "32 9 18" において、実行時刻は8時7分15秒と一致しません

課題3 実行時刻の拡張

課題2までは、特定の時刻(1日1回)しかジョブを実行できませんでした。

この課題では、1日に複数回ジョブを実行できるようにスケジューラー設定を拡張します。

具体的には、時、分、秒、それぞれに 毎時毎分毎秒 を設定できるように拡張してください。

毎時、毎分、毎秒を設定した箇所の文字列表現は *(アスタリスク) となります。

  • (例) スケジューラー設定の時、分、秒 にそれぞれ 毎時932 を与えると、その文字列表現は文字列 "32 9 *" となります。
  • (例) スケジューラー設定 "32 9 *" において、実行時刻は「0時9分32秒」「1時9分32秒」...「23時9分32秒」のいずれかと一致します。
Last modified:2019/11/23 15:54:27
Keyword(s):
References: