根据上一周的上台答辩,我们从同学们,助教身上了解到我们项目的不足之处,现有如下两点:1.身份证和姓名如何对接?需要些什么接口?2.电子图书怎么做到的,从网上下载还是自己做?经过小组的讨论,以我们现在的知识水平来说,第一个问题我们选择将被认证人的“公民身份号码”、“姓名”等数据通过电信运营商的网络通道传送至公安部“全国人口信息社会应用平台”进行比对,返回“一致”或“不一致”的比对结果;第二个问题我们则采用向用户提供网上现有的pdf链接,让用户可以自主进行访问,下载。
包(packages):采用反域名命名规则,全部使用小写字母。一级包名为com,二级包名为xxx(可以是公司域名或者个人命名),三级包名根据应用进行命名,四级包名为模块名或层级名。
类(classes):名词,采用大驼峰命名法,尽量避免缩写,除非该缩写是众所周知的,则单词缩写的每个字母均应大写。
变量(variables)采用小驼峰命名法。公开的常量:定义为静态final,名称全部大写。控件的命名:
方法(methods):动词或动名词,采用小驼峰命名法。//这里的方法我觉得等我们代码写完再写吧,现在还不知道有哪些方法。
为了减少他人阅读你代码的痛苦值,请在关键地方做好注释。
每个类完成后应该有作者姓名的注释,对自己的代码负责。
每一个成员方法(包括自定义成员方法、覆盖方法、属性方法)的方法头都必须做方法头注释,在方法前一行输入/**+回车eclipse会帮你生成模板,我们只需要补全参数即可。
表示层:包括所有与客户机交互的边界对象,如窗口,网页等。功能层:实现程序的处理逻辑和规则。数据层:实现对数据库的存储,查询和更新。
三级功能的表示层配置在客户端,功能层和数据层分别放在不同的服务器上。用户在用户机的系统界面上输入数据并发出业务处理请求。功能层服务器的业务处理程序接受请求,进行处理。在需要进行数据存取的时候,向数据层服务器发出数据存取请求。服务器将执行数据库连接,查找和存取操作,并把结果进行返回功能层服务器。功能层服务器业务处理结束将数据返回给客户端。客户机对返回的数据进行处理,在表示层上进行输出。
C/S架构一般面向相对固定的用户群,对信息安全的控制能力很强。相比于C/S两层构架大大降低了客户端的负荷,减轻了系统维护和升级的成本和工作量。在增加新的业务量处理时可以在装有功能层的服务器。系统的灵活性和伸缩性变得很强,随着系统规模的扩大这种优势会变得更加明显。所以选择三层C/S构架。
续借:属于辅助的外围功能,采取“抵消”的办法,以最低成本维持该功能。
关键技术:(1)图形界面与数据库的连接实现对数据库的系统功能等操作。(2)服务端实现身份验证,消息提示,提供支付渠道等功能。(3)实现代码对硬件的控制。
难点一:答辩中提到的关于身份证与姓名的匹配问题。解决方法:在《全国人口信息社会应用平台WebService接口调用规范V2.3-4777》pdf文档中有详细讲到关于如何使用WebServices服务接口的方法与格式样例可供参考。
难点二:在实现押金,购买电子书等所用到的第三方支付认证需要注册公司和对公账户等详细信息解决方法:通过展示支付二维码的方式在前期模拟支付环境,后续开发尾声完整实现第三方服务。
难点三:如何实现代码对硬件的控制解决方法:代码对硬件的控制主要在于图书馆内部仪器识别电子图书证或实体图书证上的二维码或者条形码。学习Google开源的Zxing能够通过摄像头基础实现扫码功能。简化修改投入项目使用。