版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、門禁系統(tǒng)的面向?qū)ο笤O(shè)計(jì)門禁系統(tǒng)的面向?qū)ο笤O(shè)計(jì) 問(wèn)題描述問(wèn)題描述某公司安裝了電子門,要設(shè)計(jì)門禁系統(tǒng):某公司安裝了電子門,要設(shè)計(jì)門禁系統(tǒng):公司的雇員可以憑借密碼、胸卡或指紋進(jìn)入公司公司的雇員可以憑借密碼、胸卡或指紋進(jìn)入公司計(jì)算機(jī)根據(jù)雇員的驗(yàn)證方式對(duì)其身份進(jìn)行驗(yàn)證計(jì)算機(jī)根據(jù)雇員的驗(yàn)證方式對(duì)其身份進(jìn)行驗(yàn)證 管理員在監(jiān)控室可以通過(guò)按鈕直接開(kāi)啟電子門管理員在監(jiān)控室可以通過(guò)按鈕直接開(kāi)啟電子門訪客可以按門鈴請(qǐng)求進(jìn)入,由管理員為其放行訪客可以按門鈴請(qǐng)求進(jìn)入,由管理員為其放行管理員可以為新職員設(shè)置密碼管理員可以為新職員設(shè)置密碼問(wèn)題分析問(wèn)題分析-1 根據(jù)需求分析對(duì)象根據(jù)需求分析對(duì)象 門禁系統(tǒng)、電子門、計(jì)算機(jī)、輸入設(shè)
2、備門禁系統(tǒng)、電子門、計(jì)算機(jī)、輸入設(shè)備 管理員、管理員、 雇員、雇員、 訪客訪客 驗(yàn)證接口、驗(yàn)證實(shí)現(xiàn)驗(yàn)證接口、驗(yàn)證實(shí)現(xiàn)問(wèn)題分析問(wèn)題分析-2 對(duì)象關(guān)系對(duì)象關(guān)系管理員管理員雇員雇員訪客訪客驗(yàn)證接口驗(yàn)證接口默認(rèn)實(shí)現(xiàn)默認(rèn)實(shí)現(xiàn)指紋識(shí)別指紋識(shí)別密碼驗(yàn)證密碼驗(yàn)證胸卡驗(yàn)證胸卡驗(yàn)證extends門禁系統(tǒng)包含:電子門、輸入設(shè)備、計(jì)算機(jī)門禁系統(tǒng)包含:電子門、輸入設(shè)備、計(jì)算機(jī)implementsextendsextendsextends難點(diǎn)分析難點(diǎn)分析-1門禁系統(tǒng)類:門禁系統(tǒng)類:ControlSys包含屬性:包含屬性:電子門對(duì)象、計(jì)算機(jī)對(duì)象、輸入設(shè)備對(duì)象、門鈴、開(kāi)電子門對(duì)象、計(jì)算機(jī)對(duì)象、輸入設(shè)備對(duì)象、門鈴、開(kāi)門信號(hào)、日
3、志對(duì)象門信號(hào)、日志對(duì)象包含方法:工作方法包含方法:工作方法private Door door; / 門禁系統(tǒng)的電子門門禁系統(tǒng)的電子門private Computer computer; / 門禁系統(tǒng)的計(jì)算機(jī)門禁系統(tǒng)的計(jì)算機(jī)private InputEquip inputEquip; / 門禁系統(tǒng)的輸入設(shè)備門禁系統(tǒng)的輸入設(shè)備private int ring; / 門鈴,門鈴,0為安靜,為安靜,1為鳴響為鳴響private int openSign; / 開(kāi)門信號(hào),由管理員按下按鈕時(shí)產(chǎn)生開(kāi)門信號(hào),由管理員按下按鈕時(shí)產(chǎn)生private Logger logger; / 日志日志public void
4、 work()難點(diǎn)分析難點(diǎn)分析-2門禁系統(tǒng)工作分門禁系統(tǒng)工作分3步:步:第一步:檢查輸入設(shè)備的輸入緩存第一步:檢查輸入設(shè)備的輸入緩存第二步:檢查開(kāi)門信號(hào)第二步:檢查開(kāi)門信號(hào)第三步:電子門開(kāi)啟狀態(tài)維持第三步:電子門開(kāi)啟狀態(tài)維持5秒后關(guān)閉電子門秒后關(guān)閉電子門如果有輸入且輸入信息存在,開(kāi)啟電子門如果有輸入且輸入信息存在,開(kāi)啟電子門輸入是否正確由計(jì)算機(jī)類調(diào)用驗(yàn)證接口的相關(guān)方法判斷輸入是否正確由計(jì)算機(jī)類調(diào)用驗(yàn)證接口的相關(guān)方法判斷如果收到開(kāi)門信號(hào),開(kāi)啟電子門如果收到開(kāi)門信號(hào),開(kāi)啟電子門/如果電子門已開(kāi)啟,維持如果電子門已開(kāi)啟,維持5秒,關(guān)閉電子門秒,關(guān)閉電子門java.lang.Thread.sleep(
5、5000); / 程序暫停程序暫停5000毫秒毫秒難點(diǎn)分析難點(diǎn)分析-3輸入設(shè)備類模擬輸入各種驗(yàn)證信息:輸入設(shè)備類模擬輸入各種驗(yàn)證信息:密碼、胸卡、指紋都以字符串形式從控制臺(tái)輸入:密碼、胸卡、指紋都以字符串形式從控制臺(tái)輸入:1、密碼以、密碼以“pa”開(kāi)頭開(kāi)頭2、胸卡以、胸卡以“ca”開(kāi)頭開(kāi)頭3、指紋以、指紋以“fi”開(kāi)頭開(kāi)頭輸入的驗(yàn)證信息保存在輸入設(shè)備的緩存中輸入的驗(yàn)證信息保存在輸入設(shè)備的緩存中門禁系統(tǒng)保存的驗(yàn)證信息不以上述字符開(kāi)頭門禁系統(tǒng)保存的驗(yàn)證信息不以上述字符開(kāi)頭驗(yàn)證時(shí)使用驗(yàn)證時(shí)使用String類的方法解析字符串類的方法解析字符串java.lang.String.substring( in
6、t beginIndex, int endIndex ) java.lang.String.substring( int beginIndex )private String input = null; / 輸入設(shè)備緩存輸入設(shè)備緩存難點(diǎn)分析難點(diǎn)分析-4用戶級(jí)別用戶級(jí)別管理員管理員 雇員雇員 訪客訪客 extendsextends 只能按門鈴只能按門鈴 可以輸入驗(yàn)證信息可以輸入驗(yàn)證信息 可以直接開(kāi)啟電子門,監(jiān)控門鈴可以直接開(kāi)啟電子門,監(jiān)控門鈴 難點(diǎn)分析難點(diǎn)分析-5驗(yàn)證驗(yàn)證驗(yàn)證接口定義驗(yàn)證方法驗(yàn)證接口定義驗(yàn)證方法編寫默認(rèn)的實(shí)現(xiàn)類:編寫默認(rèn)的實(shí)現(xiàn)類:GenericValidate具體的驗(yàn)證類繼承默認(rèn)
7、的實(shí)現(xiàn)類具體的驗(yàn)證類繼承默認(rèn)的實(shí)現(xiàn)類public boolean check(); / 定義驗(yàn)證方法定義驗(yàn)證方法private Object inner; / 系統(tǒng)保存的身份信息系統(tǒng)保存的身份信息private Object input; / 需要驗(yàn)證的身份信息需要驗(yàn)證的身份信息public class PassWordVld extends GenericValidatepublic class FingerMarkVld extends GenericValidatepublic class CardVld extends GenericValidate 階段劃分階段劃分第一階段(第一階段
8、(25分鐘)分鐘)編寫類:電子門、輸入設(shè)備編寫類:電子門、輸入設(shè)備 第二階段(第二階段(45分鐘)分鐘)編寫類:計(jì)算機(jī)、門禁系統(tǒng)編寫類:計(jì)算機(jī)、門禁系統(tǒng)第三階段(第三階段(45分鐘)分鐘)編寫類:訪客、雇員、管理員編寫類:訪客、雇員、管理員第四階段(第四階段(25分鐘)分鐘)編寫類:驗(yàn)證接口、默認(rèn)實(shí)現(xiàn)編寫類:驗(yàn)證接口、默認(rèn)實(shí)現(xiàn)第五階段(第五階段(35分鐘)分鐘)編寫類:密碼驗(yàn)證、指紋驗(yàn)證、胸卡驗(yàn)證編寫類:密碼驗(yàn)證、指紋驗(yàn)證、胸卡驗(yàn)證第六階段(第六階段(15分鐘)分鐘)編寫類:測(cè)試雇員通過(guò)電子門編寫類:測(cè)試雇員通過(guò)電子門第七階段(第七階段(30分鐘)分鐘)編寫類:測(cè)試訪客按門鈴、管理員開(kāi)啟電子門
9、編寫類:測(cè)試訪客按門鈴、管理員開(kāi)啟電子門第一階段第一階段第一階段(第一階段(25分鐘)分鐘)利用利用Eclipse創(chuàng)建工程、項(xiàng)目所需包創(chuàng)建工程、項(xiàng)目所需包編寫類:電子門、輸入設(shè)備編寫類:電子門、輸入設(shè)備要求學(xué)員自己動(dòng)手完成,教員巡視,解答學(xué)員提出的問(wèn)題要求學(xué)員自己動(dòng)手完成,教員巡視,解答學(xué)員提出的問(wèn)題階段檢查階段檢查針對(duì)第一階段抽查學(xué)員的操作結(jié)果針對(duì)第一階段抽查學(xué)員的操作結(jié)果教員給出點(diǎn)評(píng)教員給出點(diǎn)評(píng)第一階段標(biāo)準(zhǔn)代碼演示第一階段標(biāo)準(zhǔn)代碼演示創(chuàng)建工程和包創(chuàng)建工程和包sys包:放置門禁系統(tǒng)相關(guān)類包:放置門禁系統(tǒng)相關(guān)類user包:放置訪客、雇員、管理員類包:放置訪客、雇員、管理員類validate包:
10、放置驗(yàn)證身份的接口及其實(shí)現(xiàn)類包:放置驗(yàn)證身份的接口及其實(shí)現(xiàn)類test包:放置測(cè)試類包:放置測(cè)試類編寫類:電子門類編寫類:電子門類 Door.java編寫類:輸入設(shè)備類編寫類:輸入設(shè)備類 InputEquip.java第二階段第二階段第二階段(第二階段(45分鐘)分鐘)編寫類編寫類 :計(jì)算機(jī)、門禁系統(tǒng):計(jì)算機(jī)、門禁系統(tǒng)要求學(xué)員自己動(dòng)手編寫,教員巡視,解答學(xué)員提出的問(wèn)題要求學(xué)員自己動(dòng)手編寫,教員巡視,解答學(xué)員提出的問(wèn)題階段檢查階段檢查針對(duì)第二階段抽查學(xué)員的編碼結(jié)果針對(duì)第二階段抽查學(xué)員的編碼結(jié)果抽查學(xué)員編寫的完整代碼,要求學(xué)員上臺(tái)講解抽查學(xué)員編寫的完整代碼,要求學(xué)員上臺(tái)講解教員給出點(diǎn)評(píng)或集中演示難點(diǎn)
11、部分教員給出點(diǎn)評(píng)或集中演示難點(diǎn)部分第二階段標(biāo)準(zhǔn)代碼演示第二階段標(biāo)準(zhǔn)代碼演示計(jì)算機(jī)類:計(jì)算機(jī)類: Computer.java門禁系統(tǒng)類:門禁系統(tǒng)類: ControlSys.java第三階段第三階段第三階段(第三階段(45分鐘)分鐘)編寫類:訪客、雇員、管理員編寫類:訪客、雇員、管理員要求學(xué)員自己動(dòng)手編寫,教員巡視,解答學(xué)員提出的問(wèn)題要求學(xué)員自己動(dòng)手編寫,教員巡視,解答學(xué)員提出的問(wèn)題階段檢查階段檢查針對(duì)第三階段抽查學(xué)員的編碼結(jié)果針對(duì)第三階段抽查學(xué)員的編碼結(jié)果抽查學(xué)員編寫的完整代碼,要求學(xué)員上臺(tái)講解抽查學(xué)員編寫的完整代碼,要求學(xué)員上臺(tái)講解教員給出點(diǎn)評(píng)或集中演示難點(diǎn)部分教員給出點(diǎn)評(píng)或集中演示難點(diǎn)部分第
12、三階段標(biāo)準(zhǔn)代碼演示第三階段標(biāo)準(zhǔn)代碼演示訪客類:訪客類:Guest.java雇員類:雇員類:Employee.java管理員:管理員:Admin.java第四階段第四階段第四階段(第四階段(25分鐘)分鐘)編寫類:驗(yàn)證接口、默認(rèn)實(shí)現(xiàn)編寫類:驗(yàn)證接口、默認(rèn)實(shí)現(xiàn)要求學(xué)員自己動(dòng)手編寫,教員巡視,解答學(xué)員提出的問(wèn)題要求學(xué)員自己動(dòng)手編寫,教員巡視,解答學(xué)員提出的問(wèn)題階段檢查階段檢查針對(duì)第四階段抽查學(xué)員的編碼結(jié)果針對(duì)第四階段抽查學(xué)員的編碼結(jié)果抽查學(xué)員編寫的完整代碼,要求學(xué)員上臺(tái)講解,并演示抽查學(xué)員編寫的完整代碼,要求學(xué)員上臺(tái)講解,并演示運(yùn)行結(jié)果運(yùn)行結(jié)果教員給出點(diǎn)評(píng)教員給出點(diǎn)評(píng)第四階段標(biāo)準(zhǔn)代碼演示第四階段標(biāo)準(zhǔn)
13、代碼演示驗(yàn)證接口驗(yàn)證接口 : Validate.java默認(rèn)實(shí)現(xiàn):默認(rèn)實(shí)現(xiàn):GenericValidate.java/*- GenericValidate.java -*/ private Object inner; private Object input; /* * 比較方法的默認(rèn)的實(shí)現(xiàn),判斷輸入信息是否存在比較方法的默認(rèn)的實(shí)現(xiàn),判斷輸入信息是否存在 * return 比較結(jié)果比較結(jié)果 */ public boolean check() for( int i=0; ithis.getInner().length; i+ ) if( this.getInput()!=null & t
14、his.getInput().equals(this.getInner()i) ) return true; return false; 第五階段第五階段第五階段(第五階段(35分鐘)分鐘)編寫類:密碼驗(yàn)證、指紋驗(yàn)證、胸卡驗(yàn)證編寫類:密碼驗(yàn)證、指紋驗(yàn)證、胸卡驗(yàn)證要求學(xué)員自己動(dòng)手編寫,教員巡視,解答學(xué)員提出的問(wèn)題要求學(xué)員自己動(dòng)手編寫,教員巡視,解答學(xué)員提出的問(wèn)題階段檢查階段檢查針對(duì)第五階段抽查學(xué)員的編碼結(jié)果針對(duì)第五階段抽查學(xué)員的編碼結(jié)果抽查學(xué)員編寫的完整代碼,要求學(xué)員上臺(tái)講解,并演示抽查學(xué)員編寫的完整代碼,要求學(xué)員上臺(tái)講解,并演示運(yùn)行結(jié)果運(yùn)行結(jié)果教員給出點(diǎn)評(píng)教員給出點(diǎn)評(píng)第五階段標(biāo)準(zhǔn)代碼演示第五階
15、段標(biāo)準(zhǔn)代碼演示密碼驗(yàn)證密碼驗(yàn)證: PassWordVld.java胸卡驗(yàn)證:胸卡驗(yàn)證: CardVld.java指紋驗(yàn)證:指紋驗(yàn)證: FingerMarkVld.java第六階段第六階段第六階段(第六階段(15分鐘)分鐘)編寫類:測(cè)試雇員通過(guò)電子門編寫類:測(cè)試雇員通過(guò)電子門要求學(xué)員自己動(dòng)手編寫,教員巡視,解答學(xué)員提出的問(wèn)題要求學(xué)員自己動(dòng)手編寫,教員巡視,解答學(xué)員提出的問(wèn)題階段檢查階段檢查針對(duì)第六階段抽查學(xué)員的編碼結(jié)果針對(duì)第六階段抽查學(xué)員的編碼結(jié)果抽查學(xué)員編寫的完整代碼,要求學(xué)員上臺(tái)講解,并演示抽查學(xué)員編寫的完整代碼,要求學(xué)員上臺(tái)講解,并演示運(yùn)行結(jié)果運(yùn)行結(jié)果教員給出點(diǎn)評(píng)教員給出點(diǎn)評(píng)第六階段標(biāo)準(zhǔn)代
16、碼演示第六階段標(biāo)準(zhǔn)代碼演示測(cè)試雇員通過(guò)電子門測(cè)試雇員通過(guò)電子門:EmployeeTest.javapublic class EmployeeTest public static void main(String args) Employee employee = new Employee(雇員雇員a); / 管理員管理員 ControlSys controlSys = new ControlSys(); / 門禁系統(tǒng)門禁系統(tǒng) System.out.println(門禁系統(tǒng)門禁系統(tǒng)-雇員測(cè)試雇員測(cè)試); System.out.println(*); while(true) employee.in
17、put(controlSys); controlSys.work(); 第七階段第七階段第七階段(第七階段(30分鐘)分鐘)編寫類:測(cè)試訪客按門鈴、管理員開(kāi)啟電子門編寫類:測(cè)試訪客按門鈴、管理員開(kāi)啟電子門要求學(xué)員自己動(dòng)手編寫,教員巡視,解答學(xué)員提出的問(wèn)題要求學(xué)員自己動(dòng)手編寫,教員巡視,解答學(xué)員提出的問(wèn)題階段檢查階段檢查針對(duì)第七階段抽查學(xué)員的編碼結(jié)果針對(duì)第七階段抽查學(xué)員的編碼結(jié)果抽查學(xué)員編寫的完整代碼,要求學(xué)員上臺(tái)講解,并演示抽查學(xué)員編寫的完整代碼,要求學(xué)員上臺(tái)講解,并演示運(yùn)行結(jié)果運(yùn)行結(jié)果教員給出點(diǎn)評(píng)教員給出點(diǎn)評(píng)第七階段標(biāo)準(zhǔn)代碼演示第七階段標(biāo)準(zhǔn)代碼演示測(cè)試訪客:測(cè)試訪客:GuestTest.ja
18、va測(cè)試管理員:測(cè)試管理員:AdminTest.javapublic class GuestTest public static void main(String args) Guest guest = new Guest(趙強(qiáng)趙強(qiáng)); / 訪客員訪客員 Admin admin = new Admin(王石頭王石頭); / 管理員管理員 ControlSys controlSys = new ControlSys(); / 門禁系統(tǒng)門禁系統(tǒng) System.out.println(門禁系統(tǒng)門禁系統(tǒng)-訪客測(cè)試訪客測(cè)試); System.out.println(*); while(true) guest.pressRing(controlSys); admin.work(controlSys, guest); controlSys.work(); public class AdminTest public static void main(String args) Admin admin = new Admin(王哲王哲); / 管理員管理員 ControlSys controlSys = new Co
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年商標(biāo)保護(hù)義務(wù)協(xié)議
- 2025年健身房特選設(shè)備訓(xùn)練服務(wù)協(xié)議
- 2025年基層金融質(zhì)押協(xié)議
- 2025年連帶責(zé)任保證合同(借款)
- 中小企業(yè)2024年期限勞動(dòng)合同3篇
- 正規(guī)2025年度藝人經(jīng)紀(jì)合同3篇
- 二零二五年度足療技師外出服務(wù)安全協(xié)議范本
- 2025年度度假酒店委托運(yùn)營(yíng)管理服務(wù)合同
- 二零二五年度汽車牌照租賃與車輛抵押貸款服務(wù)協(xié)議
- 2025年度門窗行業(yè)產(chǎn)品召回與質(zhì)量追溯合同電子版
- 江蘇省南京市協(xié)同體七校2024-2025學(xué)年高三上學(xué)期期中聯(lián)合考試英語(yǔ)試題答案
- 青島版二年級(jí)下冊(cè)三位數(shù)加減三位數(shù)豎式計(jì)算題200道及答案
- GB/T 12723-2024單位產(chǎn)品能源消耗限額編制通則
- GB/T 16288-2024塑料制品的標(biāo)志
- 麻風(fēng)病防治知識(shí)課件
- 干部職級(jí)晉升積分制管理辦法
- TSG ZF003-2011《爆破片裝置安全技術(shù)監(jiān)察規(guī)程》
- 2024年代理記賬工作總結(jié)6篇
- 電氣工程預(yù)算實(shí)例:清單與計(jì)價(jià)樣本
- VOC廢氣治理工程中電化學(xué)氧化技術(shù)的研究與應(yīng)用
- 煤礦機(jī)電設(shè)備培訓(xùn)課件
評(píng)論
0/150
提交評(píng)論