こんにちは。
情報処理技術者試験 ITサービスマネージャ午後Ⅰ試験勉強中です。
今回から「grep大作戦」と銘打って、解答プロセスを改善中です。
grep作戦とは、設問で問われた語句、キーワードを問題文から見つけ出し解答根拠を探し出すことを指しています。
問題文の解析はコンパイラ処理に似ているかも
その昔、UNIXが全盛期だった頃、yaccやlexと呼ばれるパーサプログラムがありました。
パーサプログラムとは、構文解析プログラムのことで、入力された文が正しいかチェックする処理を指します。
例えば、プログラミング言語Cには、コンパイラでパーサ処理を使い実行形式ファイルを生成しています。
正しくは、中間ファイル(オブジェクトファイル)へ変換した後、リンカーで中間ファイルと結合させて、実行形式ファイルを生成しますが、その辺りは私も詳しく覚えていません。(笑)
コンパイラは、文(プログラムコード)が、C言語の記述ルールに従って、正しく書かれているかチェックする機能を持っています。
- 予約されたキーワード(C言語だと、if,else,switch,case,breakなど)は、正しく書かれているか?
- 構文エラー(Syntax Error)はないか?
コンパイラが行っている文のチェック処理は、過去問のgrep作戦に似ている処理もあるなと感じています。(笑)
- 設問の語句やキーワード(予約語)を問題文から探して解答根拠に辿り着く。
- 設問の指定文字数で解答記述としてまとめる。
午後Ⅰで高得点を出すには、コンパイラ的な能力を高めれば良いのかもしれません。(←私の妄想です)
ではでは。