前置き
これは、CS2203 DatabasesのコースのFinal Examの感想を綴った文章です。「思ったより簡単だった!」みたいなFinal Examを軽くみた表現が多々みられますが、筆者はこのコースの最終評定がBのポンコツでございます。GPA4.5とかとってそうな言い回しですが、ポンコツのGPAは合計3.0くらいです。
所感
テスト時間90分のうち20分で40問完答できました。Review Quizの時ほど悩む問題は少なく、結構簡単に答えられるものが多かったです。
抽象的な質問に悩みました。「データベースを作るということは、XXXということである」True or false、といった出題形式の問題があったのですが、提示されている文章が事実の一部分のみについて言及しているので、確かに合っているけれど事象を網羅していないから言い切るのはfalse?かと悩みましたが、trueで正解です。
例えば、SQLのupdateについて言及する文章が提示される。insertの時も同じことが言えるから、updateについてだけ断言していいの?と悩みました。間違ったことは言っていないのでtrue。
テストの難易度は?
現役エンジニアであれば、低いです。
経験で知っていれば答えられるものが多いです。「そんなの知らないわ!」な問題はReview Quizを数回解いておくことで解消。
CSで学び初めの方には、難しい。
エンジニアが経験から勘でわかる部分を知識で補わないといけないからです。しかし、テキストを全部しっかり読んでおく!というよりも各ユニットのSelf Quizを繰り返しておいて、要点をしっかり押さえておくことが大切だと思います。
テスト勉強はどれくらいしたか
こちらの記事にまとめています。
自信がある方はReview Quizを3回解いておけば大丈夫です。
自信のない方は各ユニットのSelf Quizを数回それぞれといて、出てくる単語でわからないものがない状態にできれば勝ちです。
私は、最終週になっても定義のわかっていない用語がいくつもあったので急いでググってまとめて理解を深めました。
要点、キーワード
テストを受けて、重要だと思った点を思いつくままに連ねます。
- データベース正規化
- Closure set of attribute
- create tableのSQL
- Primary key, candidate key
- constraint文の書き方(SQL)
- domainの定義
- attributeの定義
- JDBC
個人的難所
Closure set of attrbuteの概念と意味の理解に時間がかかりました。英語でも日本語でも理解できずでしたが、最後の最後で納得し、その後は問題なく問題を解けるようになりました。
詳細は別記事にまとめています。
テキストの記載が理解できなかった
上のClosure set of attributeの時もですが、3箇所ほどテキストに記載されている数式?データベースのリレーションに関する記載方法が理解できず時間をとりました。
A -> BC -> CE
意味:項目Aの値が項目Bと項目Cの値を決め、項目Bと項目Cの値が項目Cと項目Eの値を決める
これがまさにClosure set of attributeの説明で出てくるところ①です。
C = +C とか +A = {A,B,C}
意味:項目Cの値は項目Cの値を決める(当然)、項目Aの値は項目A、項目B、項目Cの値を決める
ここの意味がなかなか理解できませんでした。+Xといった表記の意味は一言で言うと「項目Xの値が決める項目」です。
R = {A, B, C}
意味:リレーショナルテーブルRには項目A、項目B、項目Cがある。
これは感覚で理解したのですが、感覚でうっかり理解できず悩むこともあるのでは?と思ったものです。
Final Examで満点を取るには
繰り返しになってしまいますが、各ユニットのSelf Quizを全て解き直し、その後Review Quizを解いておくことで可能です。
これまでに出てこなかった質問が急に出題されることはないので、復習をしっかりすればOKです。
コメント