如何編寫程序?qū)崿F(xiàn)圖書管理系統(tǒng)的個人圖書借閱查詢功能?
我們要做圖書管理系統(tǒng)的話,先就需要分析,圖書管理系統(tǒng)的核心是做什么?
圖書管理、圖書管理,自然管理好書是核心,那書的數(shù)字化就是必須的功能了,怎么管理呢?在實際的圖書館中,書都是放在一個固定的書架上,而我們的書架都是有相對應的編號的。并且,不同的圖書,還有不同的分類。例如:歷史類的書籍在一個區(qū)域、科學類的書籍在一個區(qū)域。根據(jù)這些現(xiàn)實場景,自然就需要將這些書籍管理相關(guān)的數(shù)據(jù)還原在系統(tǒng)上。
那么,書、書架、區(qū)域的簡單關(guān)系也就出來了。
但是,如果書籍僅僅是待在書架上,位置都不發(fā)生變化,這個圖書管理系統(tǒng)就僅僅是一個書籍的索引系統(tǒng),想要豐富功能,我們就需要考慮到圍繞書還會有什么行為呢?借閱就是圖書館中發(fā)生得比較頻繁的一個行為了。我作為借書者,我會需要將我喜歡的書借走,然后再歸還。
那針對這個場景,我們的書籍管理功能也就會發(fā)生了變化,我們首先需要知道,能夠借書的人都是誰,這就需要對借閱者有一個用戶管理的功能。那如果可能,還會有押金管理的功能。
其次就是對書的操作要有一個管理。借閱者什么時候借了書,什么時候還了書,借了多久等等。這樣,在圖書館管理員盤點所有的書籍時,他就能夠知道每本書的下落。如果這本書既沒有借出去,也沒有在圖書館里,可能就是丟失了。
那么,我們就圍繞著上面說的內(nèi)容,進行相關(guān)的數(shù)據(jù)庫設計,功能設計,然后通過代碼來實現(xiàn)。當然,這里面還需要有很多的基礎數(shù)據(jù)管理的功能,例如:對于書的分類定義,書架的分類定義,區(qū)域的分類定義,這樣,我們才能夠引導管理員將散落的書籍快速的歸還到對應的書架上。
而有了這些簡單的功能后,一個圖書管理系統(tǒng)也就完成了。但是,這樣的系統(tǒng)要投入到實際的應用中,還非常的簡陋,肯定還需要有更多的優(yōu)化。還需要哪些優(yōu)化呢?首先,用戶在借書的時候,如果一本一本書的去查詢?nèi)缓箐浫虢钑畔ⅲ俣葧浅5穆M瑯樱脩暨€書以后,圖書管理員一本一本的去查詢?nèi)缓箐浫脒€書記錄也是非常的慢的,并且還容易出錯。
怎么能夠加快這個借還書的過程呢?
一個簡單的方式就是,給每本書都加上一個身份。這個身份比較簡單的就是使用書本自身的GS1編碼。不過,有的書可能沒有GS1編碼,但是也需要能夠管理。那么我們就打印一個二維碼的標簽,貼到每本書上。
那么在借書的時候,就好像超市買東西一樣,掃一下就可以了。而用戶的借書證上,也有一個二維碼。通過操作結(jié)束,然后掃描用戶借書證和書籍上的二維碼完成借書。還書也是一樣。
這樣,還書和借書的時間就被大大的縮短了,并且操作難度也大大降低了。
借還書的過程雖然優(yōu)化了,但是盤點的難度還是很高。那么大一個圖書館,那么多的書,盤點的時候,一本書一本書的去掃描,就算有二維碼,也是一個大工程。在這個方面能夠如何優(yōu)化呢?還是圍繞著書本上的二維碼來思考。二維碼需要通過攝像頭等設備來掃描,雖然在盤點時比較麻煩。那么如果能夠不掃描,批量的進行圖書的識別就可以很好的解決這個問題了。
那么,我們就可以考慮RFID的物聯(lián)網(wǎng)技術(shù)。將原來書本上貼的二維碼升級成為RFID標簽。然后原有的二維碼掃描設備升級成為RFID掃描設備。RFID是通過射頻技術(shù)來做到識別的,并且也是一本書一個身份ID寫入到RFID標簽中。所以,判斷時,我們只需要一個RFID終端,就可以在不把書拿出書架的情況下,批量的進行書本的盤點了。
以上,一個完整的圖書管理系統(tǒng)就搞定了。當然,我們這里只是講了概念,還有很多具體的細節(jié)和實現(xiàn)上,就還需要個人去摸索了。