今日の電車
- 行き: 勝ち
- 帰り: 勝ち
期末試験
データベース論の期末試験をした. 個人的にはまずまず解けた気持ちでいる. だいたい教科書の説明が丁寧だったおかげという感じがある. 「リレーショナルデータベース入門」, ありがとう.
暑い
冷房の効いた部屋から出た瞬間に熱風を顔面に受け, 死を直感するなどしている. 死.
データベース論の期末試験をした. 個人的にはまずまず解けた気持ちでいる. だいたい教科書の説明が丁寧だったおかげという感じがある. 「リレーショナルデータベース入門」, ありがとう.
冷房の効いた部屋から出た瞬間に熱風を顔面に受け, 死を直感するなどしている. 死.
翌日にデータベース論の試験を控えていたので, 勉強をしていた. 「リレーショナルデータベース入門」という結構有名な本?が教科書として採用されていたので, それをひたすら読んでいた. とても説明が丁寧で良い本だったと思う.
ところで試験勉強している各位に紹介したい超絶便利なウェッブサービスがあるんですが, どうでしょうか. shinchokudodesuka.tumblr.com ってサービスなんですけど.
https://t.co/fPa1K6d86L pic.twitter.com/qNLi4xVytk
— mizdra (@mizdra) July 16, 2018
今日は弊学でおーぷんにゃんぱすが開催されていた. 現在学部3年で暫くしたら研究室配属ということもあって, 研究室見学をしにおーぷんにゃんぱすに参加した.
僕は開発者が楽をできるシステムや仕組みを考えることが好きなので, それらに関連した研究室をいくつか見て回り, 序に研究室の学生の方や教授と話してすり合わせをしたりした. とりあえず良さそうな研究室の目星は付けられたという感じ. 良かった.
3日目. 今日はswitch文を実装したり, リファクタリングしたりしていた. 4日前の日記でも触れたけど, 自作言語の開発にTDDを導入しているおかげてテストがあるため, リファクタリングを恐れずに実行できる. ありがたや〜.
弊部室には救急箱が備えられていて, 絆創膏や体温計, 冷却材などの救急用具が入っている. 今日はこの中に入っている殆どの救急用具の使用期限が切れていたので, それらをリプレースした. 中には3年前が使用期限のものもあって, マジか状態だった. 皆さんもおうちにある救急箱の点検を定期的に行いましょう.
昨日から引き続き課題の自作言語を作ってた. 一年前に学んだアセンブリのこと結構忘れていて, 唸りながらアセンブリを書いている状態. にゅ〜.
こわい.
そういえばnpmアカウントの2FA無効化したままだな…と思い出したので, シュュと有効化しておいた. 2FA, 導入も簡単でやっておくと安心ではあるけど, ワンタイムパスワードジェネレータのインストールされたスマホを紛失すると, 復旧が面倒なのが難点. 2FAを有効化した全サービスのリカバリーコード入力するのだるそう.
npmの2FAリカバリーコード, 見切れていて悲しい (ダブルクリックで選択してコピーすれば, 見切れてる部分もクリップボードに取れます) pic.twitter.com/xSvm5vHrlB
— mizdra (@mizdra) July 12, 2018
課題で自作言語を作っている. とはいっても一から全てやる訳ではなく, 数値演算や標準入力/標準出力などの基本的な機能の付いたテンプレートを与えられ, それをカスタマイズする形で機能を実装している.
開発にはテスト駆動開発 (TDD) を導入している. 元々, 少しずつ小さな機能を実装していくタイプの課題だったので相性も良い. 例えば do-while
文の実装では, 以下のように先にテストを書き, それから実装する.
#!/bin/bash ################################################ # do-while 文はブロックを評価した後に条件式を評価する. # 評価された値が真ならループし, 偽ならループを抜ける. ################################################ program=$(cat <<EOS main { x = 0; do { print x; x = x + 1; } while (x == 1); } EOS ) input=$(cat <<EOS EOS ) expected_output=$(cat <<EOS 0 1 EOS ) ./assert-run.sh "$program" "$input" "$expected_output"
TDDについて知りたいときは, TDD伝道師と呼ばれる和田さん訳の本を読むと良さそう. 僕はまだ第Ⅱ部までしか読みきれてないけど…