项目总结:游船治理体系
这个学期有一门课,叫软件工程。先生说,这个学期有四个项目,能够运用 any language(帅气,恰好能够拿来练 js)。这里先亮出第一个项目。
需求
某公园有一个游船船埠,负责人愿望开辟一游船治理体系。请求以下:当旅客租船时,治理员输入 S 示意租船周期最先;当旅客还船时,治理员输入 E 示意租船周期完毕。
一天完毕后,请求打印租船次数和均匀租船时候
输出一天中的最长租用时候
将报告分上午和下昼输出
当通信线路出问题时,删除统统不完全租船信息
只需你学过 C/C++,看到输入 S 和输入 E,总会不由自主地想起谁人黑黑的窗口,没错,就是掌握端顺序的谁人窗口。
然则先生不是说了,能够运用任何言语嘛!
真巧,近来恰好发现了 node-webkit,能够用前端三把斧(HTML、CSS、JavaScript)来开辟桌面运用喽,那就来尝尝呗!
顺序言语与环境
言语: HTML、CSS、JavaScript
编辑器: Sublime Text 3
运转环境: node-webkit
打包东西: Inno Setup Compiler
源代码与运用
我已将源代码寄放到了 GitHub 上面了,链接在这里!
运用文件放在了度盘里:点这里。
优化
增加身份验证信息(姓名:2到4个汉字;身份证号:18位数字;租船编号:boat+编号)
将主界面与细致租船信息界面星散
翻开顺序时,检测文件中的有用数据,读取并显现在页面上(运用nodejs的fs模块)
还船时,将完全数据存入文件(租船完毕的称之为完全数据)
增加迎接界面,封闭页面提醒(运用了一个JavaScript库:PleaseWait.js)
到场价钱,租船完毕后显现账单
将船的总量和租船价钱只在全局变量中举行定义,轻易变动船的数目
治理员可经由过程变动
config.json
文件,从而变动船的数目以及租船价钱(原本预备为运用增加一个设置菜单来完成这个功用,厥后为了雅观,摒弃了这个决议)表单优化,不再运用alert提醒错误信息,运用css伪元素显现错误信息
禁用鼠标右键和 F12
阻挠外部文件拖拽进窗口
纪录可重用代码
/* 禁用鼠标右键、F12
*************************************************/
document.addEventListener("contextmenu", function(e) {
e.preventDefault();
});
window.addEventListener("keydown", function(e) {
if (e.keyCode == 123) {
e.preventDefault();
}
});
/* 阻挠文件拖拽进窗口
***************************************************/
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");
// 猎取当前exe文件地点的途径
var execPath = process.execPath;
// 猎取当前exe文件地点的目次
var execDirPath = path.dirname(execDirPath);
总结
寻觅运用中的相似性,以便重用代码。
不论做什么东西,提早的设想黑白常有必要的,不能瞎头瞎脑就最先写代码,不然你的代码的重用性就大打折扣了。
不要触怒你的用户,这也是我为何对表单报错举行了优化,如果之前,每次报错都要 alert 一次,好烦的。
末了,援用张鑫旭大神说过的一句话:经由过程手艺填补设想缺点是很傻逼的。