勉強メモ。
#1.目標
Windowsバッチに対して入力した内容を元に、RubyでPostgresqlに接続し、
疑似的に本の検索と貸出ができる仕組みを作ること
#2.目的
①情報を管理のための各概念を関連付けることのイメージを何か一つ持ちたい
②プログラムからDBMSにつなぐ方法を知りたい
③Windowsバッチを実際に書いて学びたい
④Rubyを実際に書いて学びたい
#3.やったこと
##3-1.前提条件
・Windowsバッチを、本の検索・貸出システムの入力画面に見立てる
・WindowsバッチがRubyを実行する
・RubyがPostgresqlに接続し、SQLを実行する
##3-2.概要
①概念の関係を整理する
②Postgresqlをインストールする
③必要なテーブルを作る
④メニューもどきを用意する
⑤SQLを実行する文をRubyで書く
##3-3.各論
###①概念の関係を整理する
▼やったこと
・『UMLモデリングの本質』を参考に、型図を書いた。
▼学んだこと
・管理するのは呼称と実体だったりする(「書名」と「蔵書」(人事システムなら、社員IDと社員番号みたいなものか))
・アクションを指す概念(ex.貸出、返却)は汎化して、個々の概念を下位の概念とすることができる。
(人事システムなら、上位:発令、下位:退職発令、雇用発令など)
・汎化したら実際の管理方法としては区分管理になるはず。アクションを指す概念は、
処理区分は必須で持つだろうし、アクションによって変更されるところの対象の
コードや区分を持つのだろう。
###②Postgresqlをインストールする
▼やったこと
・以下のサイトを見てインストール
PostgreSQLのダウンロード及びインストール
https://www.dbonline.jp/postgresql/install/index1.html
▼学んだこと
・パスワード忘れて困った。
###③必要なテーブルを作る
▼やったこと
・以下のテーブルを作った(名前は適当)
・book (book_no,book_name,author 等)
・collection (collection_no,book_no(FK),rental_flag,rental_user_no,return_plan_date 等)
・member (menber_no,member_name, member_password 等)
など
▼学んだこと
・返却予定日って、貸出履歴側に持っておいて、抽出時に基準日指定の開始日で取れると
思うけれど、検索の頻度の方が高そうだから、蔵書側に持っていた方がいいのだろうな
と思った。
###④メニューもどきを用意する
▼やったこと
・Windowsバッチで
#4.学んだことまとめ
#99.参考
▼図書館システム
①https://ksuap.github.io/2016spring/library/index.html