董 航
(遼寧工程職業(yè)學(xué)院,遼寧 鐵嶺 112008)
古往今來,貨幣始終都是眾多發(fā)展體系的核心運(yùn)營(yíng)介質(zhì),管理它的收支也成為一種必然需求[1]。特別是在如今互聯(lián)網(wǎng)和物聯(lián)網(wǎng)高速發(fā)展的時(shí)代,生活在成熟經(jīng)濟(jì)體系之下的人們都需要進(jìn)行財(cái)富管理:大到理財(cái),比如各大銀行以及金融機(jī)構(gòu)推出的一系列服務(wù)于大眾的理財(cái)產(chǎn)品,可以不斷滿足人們對(duì)個(gè)人、家庭以及其它方面的理財(cái)需求;小到記賬,比如人們隨時(shí)隨地記錄的各種零零碎碎收入和開銷。
目前,各大物聯(lián)網(wǎng)平臺(tái)都有大同小異的記賬管理產(chǎn)品為人們所熟知,其主要都是為人們提供收入支出數(shù)據(jù)的管理,并以這種簡(jiǎn)單、便捷、實(shí)用的功能特點(diǎn)為用戶服務(wù)。但是,此類產(chǎn)品在個(gè)性化訂制方面似乎還缺少點(diǎn)什么,所以做一個(gè)獨(dú)特的自己喜歡的記賬管理系統(tǒng)顯得很有必要[2]。
本文設(shè)計(jì)的系統(tǒng)在具有收入支出數(shù)據(jù)管理功能的前提下完善了便簽數(shù)據(jù)管理模塊和賬號(hào)自由選擇模塊,讓人們?cè)诠芾硎杖胫С鰯?shù)據(jù)的同時(shí)也能夠?qū)δ承┲匾氖禄蛐畔⒁员愫灥男问郊右杂涗?。此外,使用者既可以用系統(tǒng)默認(rèn)賬號(hào)對(duì)數(shù)據(jù)進(jìn)行管理,也可以注冊(cè)自己獨(dú)有的賬號(hào)進(jìn)行數(shù)據(jù)管理。
Android Studio和Eclipse同屬于Android開發(fā)軟件,但Eclipse相對(duì)Android Studio而言具有如下特點(diǎn):首先它在CPU占用率上較低[3],在Logcat命令行方面它可以讓日志直接保存到電腦上;在工程結(jié)構(gòu)顯示方面,一個(gè)Eclipse工程只需要一個(gè)結(jié)構(gòu)視圖,一個(gè)Android Studio工程卻需要多個(gè)結(jié)構(gòu)視圖;在兼容性方面,它可以很好地兼容Android Studio的工程,而Android Studio的工程導(dǎo)入到Eclipse里會(huì)比較麻煩,而且還不一定成功[4]。因此Eclipse是一款適宜于很多開源項(xiàng)目搭建的比較通用的Android開發(fā)軟件,很多人更愿意選擇它作為Android的項(xiàng)目開發(fā)工具。本次記賬管理系統(tǒng)的開發(fā)也是選擇它來進(jìn)行的。
SQLite數(shù)據(jù)庫(kù)具有其他開源的關(guān)系型數(shù)據(jù)庫(kù)所無(wú)法比擬的優(yōu)點(diǎn):首先,它不存在客戶端,僅需要一個(gè)很小的動(dòng)態(tài)庫(kù)即可完成它所有的功能,而且核心引擎不需要第三方軟件的部署;其次,它可以在多個(gè)主流的操作系統(tǒng)上運(yùn)行,這種良好的可移植性作為使用者的首選的主要原因;再次,它是以屬性作為數(shù)據(jù)的實(shí)現(xiàn)依據(jù),當(dāng)人們對(duì)各種數(shù)據(jù)進(jìn)行增刪改等操作的時(shí)候,SQLite可以對(duì)數(shù)據(jù)自動(dòng)進(jìn)行數(shù)據(jù)屬性匹配并進(jìn)行相應(yīng)的判斷以及實(shí)現(xiàn)對(duì)判斷結(jié)果的操作[5]。正是因?yàn)樗哂腥绱硕鄡?yōu)點(diǎn),所以本次記賬管理APP設(shè)計(jì)就選擇用SQlite來進(jìn)行數(shù)據(jù)管理。
實(shí)現(xiàn)系統(tǒng)的價(jià)值意義所在就是可行性前提所在,即讓本系統(tǒng)具備實(shí)用而安全的特點(diǎn),真正滿足使用者所需,讓它能夠方便地對(duì)收入、支出等數(shù)據(jù)進(jìn)行整合管理。因?yàn)榇罱ǖ腁PP是基于Android平臺(tái)的記賬管理系統(tǒng),所以綜合自身能力以及系統(tǒng)需求,在技術(shù)開發(fā)工具上選擇Eclipse,數(shù)據(jù)管理方面我們選擇SqLite數(shù)據(jù)庫(kù)[6]。
在以經(jīng)濟(jì)為基礎(chǔ)的日常生活中,每個(gè)人每天、每月、每季度,乃至每年都會(huì)有理財(cái)方面的需求,如果把日常的開銷、收入累積起來,任務(wù)量就非?,嵥楹妄嫶罅?。記錄并管理好自己的每一筆收支,這也是對(duì)自己和家人負(fù)責(zé)的表現(xiàn)。傳統(tǒng)的紙質(zhì)文本記錄不方便攜帶而且容易損毀[7],此時(shí),用一個(gè)實(shí)用的記賬管理軟件就能夠滿足人們的需求。當(dāng)今手機(jī)已成為人們出行必備的工具,在手機(jī)上安裝這樣一款軟件后,人們的開銷與收入就可以實(shí)時(shí)得到記錄和保存,只要想查看數(shù)據(jù)或編輯管理數(shù)據(jù)都可以隨時(shí)進(jìn)行。但是,不是所有的收支數(shù)據(jù)類型記錄都是一成不變的,有的或許屬性不同,有的或許范圍不一,有的或許有很多需要備注的重要信息,這些多樣化的需求都需要得到滿足。此外,該軟件要能夠?qū)θ藗兯涗浀臄?shù)據(jù)在不同條件下的統(tǒng)計(jì)結(jié)果有一個(gè)直觀的展示,能通過自己專屬的賬戶對(duì)數(shù)據(jù)進(jìn)行綜合管理。
該系統(tǒng)應(yīng)具備基本的數(shù)據(jù)增刪改查統(tǒng)、用戶管理、設(shè)置管理和數(shù)據(jù)清空等功能。具體功能需求分析如下。
1.基本數(shù)據(jù)管理
用戶可以根據(jù)自己的需求實(shí)時(shí)查看保存的信息,也可以做出適當(dāng)修改加以完善,以及信息的刪除和保留,還可以通過選擇不同的時(shí)間段來截取相應(yīng)的收支數(shù)據(jù)進(jìn)行數(shù)據(jù)的統(tǒng)計(jì)并顯示結(jié)果。
2.用戶管理
用戶既可以通過默認(rèn)賬號(hào)進(jìn)行各種數(shù)據(jù)管理,也可以注冊(cè)屬于自己的賬號(hào)。通過賬號(hào)密碼登錄,對(duì)數(shù)據(jù)進(jìn)行加密管理;通過賬號(hào)密碼服務(wù),對(duì)數(shù)據(jù)進(jìn)行一鍵式清除。這種一鍵式清除操作就相當(dāng)于恢復(fù)賬號(hào)“出廠設(shè)置”。
3.設(shè)置管理和數(shù)據(jù)清空
可以實(shí)現(xiàn)收入支出便簽數(shù)據(jù)的清空、收入支出數(shù)據(jù)類型的增刪、系統(tǒng)設(shè)置默認(rèn)還原,以及系統(tǒng)信息的查看等管理。
系統(tǒng)設(shè)計(jì)主要包括兩方面:功能界面和數(shù)據(jù)服務(wù)。功能界面采用一體式開發(fā),并且相互關(guān)聯(lián)又相互獨(dú)立;數(shù)據(jù)服務(wù)是將數(shù)據(jù)庫(kù)相關(guān)數(shù)據(jù)進(jìn)行完整的管理存儲(chǔ)、調(diào)用[8]。
1.功能目標(biāo)
根據(jù)用戶的需求分析,本系統(tǒng)需要實(shí)現(xiàn)的功能主要內(nèi)容如下:
一是實(shí)現(xiàn)用戶對(duì)賬號(hào)的管理。用戶既可以用系統(tǒng)默認(rèn)賬號(hào)對(duì)數(shù)據(jù)進(jìn)行管理,也可以注冊(cè)自己獨(dú)有的賬號(hào)進(jìn)行數(shù)據(jù)管理。
二是實(shí)現(xiàn)對(duì)收入支出模塊的數(shù)據(jù)增、刪、改、查,以及統(tǒng)計(jì)結(jié)果的顯示。
三是實(shí)現(xiàn)對(duì)便簽?zāi)K數(shù)據(jù)的增、刪、改、查。
四是實(shí)現(xiàn)對(duì)設(shè)置項(xiàng)信息的管理,可以對(duì)數(shù)據(jù)一鍵清空、數(shù)據(jù)類型增刪、系統(tǒng)設(shè)置,以及系統(tǒng)信息查詢等,讓用戶能夠更舒心更放心地使用。
2.界面目標(biāo)
軟件系統(tǒng)在擁有完善的功能的同時(shí),還應(yīng)該具備簡(jiǎn)單快捷、美觀而有層次的界面。因?yàn)榻缑媸墙o人的第一印象,所以該系統(tǒng)不管是界面操作上還是各界面間的連接上都應(yīng)該盡量符合用戶的需求。
3.后期擴(kuò)展目標(biāo)
在支持主體功能的情況下,為了能讓用戶體驗(yàn)到更多的功能,可以在后期各方面條件允許的情況下增加一些實(shí)用功能模塊[9],如日歷、許愿墻、心情樹、生日薄、留言板等,讓用戶能夠有更多的切實(shí)生活需求體驗(yàn),并能通過留言方式為系統(tǒng)提出一些有價(jià)值的建議。
通過結(jié)構(gòu)圖可以讓人對(duì)各個(gè)功能模塊有一定的基本認(rèn)識(shí),認(rèn)識(shí)它的結(jié)構(gòu)層次、功能體系和服務(wù)體系等。
1.賬號(hào)管理登錄模塊
賬號(hào)管理登錄模塊可實(shí)現(xiàn)用戶進(jìn)入界面后的賬號(hào)選擇。系統(tǒng)首先是以默認(rèn)賬號(hào)登錄,根據(jù)用戶自己的需求,進(jìn)行新賬號(hào)的注冊(cè)或老賬號(hào)的切換,以及密碼服務(wù)等操作(如圖1所示)。
2.收入支出便簽?zāi)K
收入支出便簽?zāi)K的功能是對(duì)數(shù)據(jù)進(jìn)行相應(yīng)的增、刪、改操作,并進(jìn)行選擇性合理判斷(如圖2所示)。
3.?dāng)?shù)據(jù)統(tǒng)計(jì)管理模塊
數(shù)據(jù)統(tǒng)計(jì)管理模塊的功能是在相應(yīng)時(shí)間段里獲取數(shù)據(jù)庫(kù)里對(duì)應(yīng)的數(shù)據(jù)信息,并顯示統(tǒng)計(jì)結(jié)果(如圖3所示)。
4.系統(tǒng)設(shè)置管理模塊
系統(tǒng)設(shè)置管理模塊的功能是通過對(duì)數(shù)據(jù)、數(shù)據(jù)類型、還原對(duì)應(yīng)操作進(jìn)行選擇判斷和對(duì)設(shè)定的某些系統(tǒng)信息進(jìn)行查詢(如圖4所示)。
圖1 賬號(hào)管理登錄圖
圖2 收入支出便簽圖
圖3 數(shù)據(jù)統(tǒng)計(jì)管理圖
圖4 系統(tǒng)設(shè)置管理圖
通過需求分析可知,需要在數(shù)據(jù)庫(kù)中建立基本信息表,即各種收支便簽數(shù)據(jù)信息的存取表、選擇性收支數(shù)據(jù)類型的增刪表,以及相應(yīng)賬號(hào)管理表。
1.賬號(hào)管理表
賬號(hào)管理表(見表1)用于管理用戶信息。該表存在一個(gè)默認(rèn)賬號(hào),用戶可以在沒有注冊(cè)專屬的賬號(hào)的情況下使用默認(rèn)賬號(hào)存儲(chǔ)數(shù)據(jù)信息。默認(rèn)賬號(hào)的用戶是無(wú)法對(duì)其賬號(hào)密碼進(jìn)行操作的,屬于系統(tǒng)默認(rèn)授權(quán)。
表1 賬號(hào)管理表
2.收入信息表
表2中Nickname與表1中的Nickname相互對(duì)應(yīng)[10]。Auto為收入數(shù)據(jù)信息的編號(hào),且定義由1開始,根據(jù)用戶的收入信息逐條自增。表2為用戶提供了收入數(shù)據(jù)信息的金額、時(shí)間、類型、來源、備注等較為完善的信息管理功能。
表2 收入信息表
3.支出信息表
表3中Nickname與表1中的Nickname相互對(duì)應(yīng)。Auto為支出數(shù)據(jù)信息的編號(hào),且同樣定義其由1開始,并根據(jù)用戶的支出信息逐條自增。該表為用戶提供了支出數(shù)據(jù)信息的金額、時(shí)間、類型、地點(diǎn)、備注等信息管理功能。
表3 支出信息表
4.便簽信息表
根據(jù)用戶的不同需求,在有的情況下想要通過便簽來記錄某些重要的東西,便簽表就可以為用戶提供增、刪、改等便簽數(shù)據(jù)信息管理功能[11]。表4中的Nickname與表1中的Nickname對(duì)應(yīng)。Auto為支出信息的編號(hào),且同樣定義其由1開始,并根據(jù)用戶的便簽數(shù)據(jù)信息逐條自增。
表4 便簽信息表
5.支出類型表
表5是為了滿足使用者對(duì)支出類型的增刪存儲(chǔ)而建立的。表5中的Nickname和表1中的Nickname對(duì)應(yīng),Auto為用戶選擇的類型默認(rèn)編號(hào)。
表5 支出類型表
6.收入類型表
表6的建立是為了滿足使用者對(duì)收入類型的增刪存儲(chǔ)。表6中的Nickname和表1中的Nickname對(duì)應(yīng),Auto為用戶選擇的類型默認(rèn)編號(hào)。
表6 收入類型表
總之,隨著互聯(lián)網(wǎng)的普及,網(wǎng)上管理系統(tǒng)的應(yīng)用范圍逐漸擴(kuò)大。基于安卓平臺(tái)的記賬管理APP系統(tǒng)需求將逐步走進(jìn)日常生活的其它領(lǐng)域。SQLite作為數(shù)據(jù)庫(kù)管理已經(jīng)成為應(yīng)用廣泛的技術(shù),其能利用Java編程語(yǔ)言,運(yùn)用Eclipse作為開發(fā)工具,讓使用者能夠簡(jiǎn)單便捷實(shí)時(shí)地對(duì)自己的數(shù)據(jù)進(jìn)行綜合管理,為提高人們的生活質(zhì)量做出貢獻(xiàn)。