摘要:項(xiàng)目總結(jié)游船管理系統(tǒng)這個(gè)學(xué)期有一門(mén)課,叫軟件工程。這里先亮出第一個(gè)項(xiàng)目。需求某公園有一個(gè)游船碼頭,負(fù)責(zé)人希望開(kāi)發(fā)一游船管理系統(tǒng)。要求如下當(dāng)游客租船時(shí),管理員輸入表示租船周期開(kāi)始當(dāng)游客還船時(shí),管理員輸入表示租船周期結(jié)束。
項(xiàng)目總結(jié):游船管理系統(tǒng)
http://blog.percymong.com/201...
這個(gè)學(xué)期有一門(mén)課,叫軟件工程。老師說(shuō),這個(gè)學(xué)期有四個(gè)項(xiàng)目,可以使用 any language(帥氣,正好可以拿來(lái)練 js)。這里先亮出第一個(gè)項(xiàng)目。
需求某公園有一個(gè)游船碼頭,負(fù)責(zé)人希望開(kāi)發(fā)一游船管理系統(tǒng)。要求如下:當(dāng)游客租船時(shí),管理員輸入 S 表示租船周期開(kāi)始;當(dāng)游客還船時(shí),管理員輸入 E 表示租船周期結(jié)束。
一天結(jié)束后,要求打印租船次數(shù)和平均租船時(shí)間
輸出一天中的最長(zhǎng)租用時(shí)間
將報(bào)告分上午和下午輸出
當(dāng)通信線(xiàn)路出問(wèn)題時(shí),刪除一切不完整租船信息
只要你學(xué)過(guò) C/C++,看到輸入 S 和輸入 E,總會(huì)情不自禁地想起那個(gè)黑黑的窗口,沒(méi)錯(cuò),就是控制端程序的那個(gè)窗口。
但是老師不是說(shuō)了,可以使用任何語(yǔ)言嘛!
真巧,最近正好發(fā)現(xiàn)了 node-webkit,可以用前端三把斧(HTML、CSS、JavaScript)來(lái)開(kāi)發(fā)桌面應(yīng)用嘍,那就來(lái)試試唄!
程序語(yǔ)言與環(huán)境語(yǔ)言: HTML、CSS、JavaScript
編輯器: Sublime Text 3
運(yùn)行環(huán)境: node-webkit
打包工具: Inno Setup Compiler
源代碼與應(yīng)用我已經(jīng)將源代碼寄存到了 GitHub 上面了,鏈接在這里!
應(yīng)用文件放在了度盤(pán)里:點(diǎn)這里。
優(yōu)化添加身份驗(yàn)證信息(姓名:2到4個(gè)漢字;身份證號(hào):18位數(shù)字;租船編號(hào):boat+編號(hào))
將主界面與詳細(xì)租船信息界面分離
打開(kāi)程序時(shí),檢測(cè)文件中的有效數(shù)據(jù),讀取并顯示在頁(yè)面上(使用nodejs的fs模塊)
還船時(shí),將完整數(shù)據(jù)存入文件(租船結(jié)束的稱(chēng)之為完整數(shù)據(jù))
添加歡迎界面,關(guān)閉頁(yè)面提醒(使用了一個(gè)JavaScript庫(kù):PleaseWait.js)
加入價(jià)格,租船結(jié)束后顯示賬單
將船的總量和租船價(jià)格只在全局變量中進(jìn)行定義,方便更改船的數(shù)量
管理員可通過(guò)更改 config.json 文件,從而更改船的數(shù)量以及租船價(jià)格(本來(lái)準(zhǔn)備為應(yīng)用添加一個(gè)設(shè)置菜單來(lái)實(shí)現(xiàn)這個(gè)功能,后來(lái)為了美觀(guān),放棄了這個(gè)決定)
表單優(yōu)化,不再使用alert提示錯(cuò)誤信息,使用css偽元素顯示錯(cuò)誤信息
禁用鼠標(biāo)右鍵和 F12
阻止外部文件拖拽進(jìn)窗口
記錄可重用代碼/* 禁用鼠標(biāo)右鍵、F12 *************************************************/ document.addEventListener("contextmenu", function(e) { e.preventDefault(); }); window.addEventListener("keydown", function(e) { if (e.keyCode == 123) { e.preventDefault(); } }); /* 阻止文件拖拽進(jìn)窗口 ***************************************************/ window.addEventListener("dragover", function(e) { e.preventDefault(); e.dataTransfer.dropEffect = "none"; }); window.addEventListener("drop", function(e) { e.preventDefault(); }); /* 一些 nodejs 路徑 ****************************************************/ var fs = require("fs"); var path = require("path"); // 獲取當(dāng)前exe文件所在的路徑 var execPath = process.execPath; // 獲取當(dāng)前exe文件所在的目錄 var execDirPath = path.dirname(execDirPath);總結(jié)
尋找應(yīng)用中的相似性,以便重用代碼。
不管做什么東西,提前的設(shè)計(jì)是非常有必要的,不能瞎頭瞎腦就開(kāi)始寫(xiě)代碼,不然你的代碼的重用性就大打折扣了。
不要惹惱你的用戶(hù),這也是我為什么對(duì)表單報(bào)錯(cuò)進(jìn)行了優(yōu)化,要是之前,每次報(bào)錯(cuò)都要 alert 一次,好煩的。
最后,引用張?chǎng)涡翊笊裾f(shuō)過(guò)的一句話(huà):通過(guò)技術(shù)彌補(bǔ)設(shè)計(jì)缺陷是很傻逼的。
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://m.hztianpu.com/yun/80673.html
摘要:前言由于寫(xiě)的文章已經(jīng)是有點(diǎn)多了,為了自己和大家的檢索方便,于是我就做了這么一個(gè)博客導(dǎo)航。 前言 由于寫(xiě)的文章已經(jīng)是有點(diǎn)多了,為了自己和大家的檢索方便,于是我就做了這么一個(gè)博客導(dǎo)航。 由于更新比較頻繁,因此隔一段時(shí)間才會(huì)更新目錄導(dǎo)航哦~想要獲取最新原創(chuàng)的技術(shù)文章歡迎關(guān)注我的公眾號(hào):Java3y Java3y文章目錄導(dǎo)航 Java基礎(chǔ) 泛型就這么簡(jiǎn)單 注解就這么簡(jiǎn)單 Druid數(shù)據(jù)庫(kù)連接池...
摘要:有必要建一個(gè)資源服務(wù)器存放靜態(tài)資源。一些用戶(hù)級(jí)別的數(shù)據(jù)輕量可以考慮存儲(chǔ)在中。存儲(chǔ)的是值,可以通過(guò)來(lái)對(duì)和對(duì)象之間的轉(zhuǎn)換如果我們的數(shù)據(jù)是在后臺(tái)傳過(guò)去或者轉(zhuǎn)換而成的,在前臺(tái)上并沒(méi)有做什么改變的話(huà)。 移動(dòng)商城項(xiàng)目總結(jié) 移動(dòng)商城項(xiàng)目是我第二個(gè)做得比較大的項(xiàng)目,該項(xiàng)目系統(tǒng)來(lái)源于傳智Java168期,十天的視頻課程(想要視頻的同學(xué)關(guān)注我的公眾號(hào)就可以直接獲取了) 通過(guò)這次的項(xiàng)目又再次開(kāi)闊了我的視野,...
摘要:需要對(duì)本項(xiàng)目做一個(gè)總結(jié),提醒自己,記得這些問(wèn)題。總結(jié)自己在這個(gè)項(xiàng)目犯得錯(cuò)以及踩的坑,自己在今后的項(xiàng)目將會(huì)注意以下事項(xiàng)了解項(xiàng)目整體需求和結(jié)構(gòu),知道哪些組件會(huì)公用。 新疆智營(yíng)銷(xiāo)項(xiàng)目是我來(lái)到亞信的第一個(gè)項(xiàng)目,項(xiàng)目初期需求分析沒(méi)有參加,接到設(shè)計(jì)圖直接寫(xiě),沒(méi)來(lái)得及系統(tǒng)的了解整個(gè)項(xiàng)目的結(jié)構(gòu),表格組件定下來(lái)之后,表單form的輸入項(xiàng)打算讓郭山專(zhuān)職負(fù)責(zé),后來(lái)情況發(fā)生變化導(dǎo)致表單一塊前后三個(gè)人參與,沒(méi)有...
閱讀 1888·2021-11-23 09:51
閱讀 1030·2021-10-08 10:05
閱讀 3523·2021-09-26 09:55
閱讀 1105·2021-09-22 15:21
閱讀 1684·2021-09-09 09:33
閱讀 1470·2019-08-30 15:56
閱讀 1348·2019-08-30 15:55
閱讀 1027·2019-08-30 13:19