uc11

综合案例:
  发展道路:
   外行->菜鸟->准程序员->程序员->核心程序员(高级)->系统分析师/系统架构师/项目经理-->部门经理/总监(管理职位)-->CTO技术方面的总裁-->自己搞公司
  从菜鸟到准程序员 就是至少要 自己独立完成一个小项目。
  要求:
   1 一定自己动手,不要不写,也不要去抄。
   2 尽可能的完成,不懂的要问。
  做项目、软件的流程:
   1 需求 (要写什么)
   2 系统分析 (把客户的要求转成计算机软件系统)
   3 系统设计 (设计计算机的软件系统)
   4 编码 (把设计用代码实现)
   5 测试 (保证软件的质量,是否遵循需求)
   6 安装、调试和维护
  案例:写一个模拟银行ATM的案例
   银行包括:开户、销户、存取、取钱、转账、查询余额 6 个基本功能,今天重点实现开户。
   分析:
   系统包括 服务端和客户端,暂时做单机版。客户端和服务端数据交互用 消息队列,创建两个消息队列:一个是用于 服务端 发给 客户端,另一个用于 客户端发给服务端。
   服务端的功能:
   1 启动时 创建 两个消息队列,关闭时 删除。用信号关闭,在信号处理函数中删除。
   2 服务端要根据 客户端发送的数据,判断是 何种请求,再根据各种请求作出相应的处理。
    数据封存在struct msg{
      long mtype;
      struct account acc;
    };
    struct account 是账户类型的结构体,包括成员
     账号、用户名、密码、金额。
   3 分析开户的流程。
    客户端输入 用户名、密码和金额,把数据封在msg中,通过消息队列发送给服务端,服务端生成一个账号,然后把account信息写入文件中,并把处理结果返回给客户端。
    账号怎么生成?(保证不重复)
   先建一个账号的生成文件,写入初值。每次开户都先读文件,然后把读到的数加1,并作为新的账号,再把新的账号写回文件中。
   账户信息写入文件,一个账户对应文件,以账号+.dat做文件名。
   4 服务端用多进程完成各种功能。(vfork+exec)
  客户端的代码:
   1 提供选择的界面,打印各种功能的选择。
   2 提交相应数据(用struct msg),并等待处理结果
数据(用struct msg),并等待处理结果

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值