Ⅰ 软件目录规范(对英语不好的人太不友好了)
core:存放核心业务逻辑;interface:存放中间接口文件,内可细分银行,功能接口,购物接口等,看个人了;db:数据库文件,主要与数据库交互功能,读取数据和修改数据;lib:存放程序的自定义模块:例如装饰器;conf:存放配置文件,如路径等;run.py:程序启动文件,一般放于项目所在的根目录,和上方文件夹平级;README:项目说明文件.
Ⅱ ATM+购物车项目要求
作业需求:
模拟实现一个ATM + 购物商城程序
额度 15000或自定义
①需要有注册功能
实现购物商城,买东西加入 购物车,调用信用卡接口结账
②购物车功能,结算功能
可以提现,手续费5%
③提现功能,并扣除手续费
每月22号出账单,每月10号为还款日,过期未还,按欠款总额 万分之5 每日计息
④拜拜了您嘞,现在不会
支持多账户登录
⑤登录功能
支持账户间转账
⑥转账功能
记录每月日常消费流水
⑦记录流水,金额变动记录
提供还款接口
⑧还款(就是存钱)
ATM记录操作日志
⑨日志功能
提供管理接口,包括添加账户、用户额度,冻结账户等。。。
⑩管理员功能(后台GM)
用户认证用装饰器
①①登录认证装饰器
Ⅲ 需求提取完后我们再分析出展示给用户的功能
登入;注册;查看余额;转账;还款;取款;查看流水;购物;查看商品;管理用户
Ⅳ 开整
注册功能:先分析逻辑
#1>循环,让用户输入用户名和两次一致的密码;2>判断两次密码是否一致;3>检验用户是否存在;3.1>若用户存在则重新输入,3.2>用户不存在,则组织用户的数据;4>保存用户数据到文件中;5>打印注册成功,并退出循环;剩下的问题就简单了,代码实现
这种呢就是之前的操作了,但是显而易见ATM得到目的不是这样的,下面说下程序三层结构
优点
1、开发人员可以只关注整个结du构中的其中某一层;2、可以很容易的用新的实现来替换原有层次的实现;3、可以降低层与层之间的依赖;4、有利于标准化;5、利于各层逻辑的复用。
缺点
1、降低了系统的性能。这是不言而喻的。如果不采用分层式结构,很多业务可以直接造访数据库,以此获取相应的数据,如今却必须通过中间层来完成。 2、有时会导致级联的修改。这种修改尤其体现在自上而下的方向。如果在表示层中需要增加一个功能,为保证其设计符合分层式结构,可能需要在相应的业务逻辑层和数据访问层中都增加相应的代码。