第5次任务:迭代改进购物车3(添加图形界面)

目录

  • 前期调查
  • 程序运行视频
  • 使用MVC模式编写购物车程序
  • 对项目中的类使用包进行管理
  •  能否直接复用以前编写的购物车代码?在复用以前的购物车代码时,会碰到什么问题。
  • MVC模式

1.前期调查 

我们以QQ为例,体验注册账号,登录账号,找回密码的全过程,并对此过程进行思考和学习,设计自己的购物车相关代码。

2.程序运行视频

3.使用MVC模式编写购物车程序。并明确自己的系统中M、V、C各有什么类

MVC模式的结构分为三部分,模型(Model),视图(View),以及控制器(Controller)
好处:
·mvc分别负责不同的功能,编写逻辑代码的时候不用考虑界面操作。
·有利于分工合作,系统故障的时候只需要对相应的层次进行修改,节省工作量。
·有利于组件的重用,同一组件可以进行多次使用。

具体实现

控制器:从页面获取商品信息

        DefaultTableModel dtm = (DefaultTableModel) jt3.getModel();
        int row[] = jt1.getSelectedRows();
        int value[] = new int[20];
        for (int i = 0; i < row.length; i++) {
            Vector ve = new Vector();
            value[i] = (Integer) jt1.getValueAt(row[i], 2);
            int id = (Integer) jt1.getValueAt(row[i], 0);
            String name = (String) jt1.getValueAt(row[i], 1);
            int price = (Integer) jt1.getValueAt(row[i], 2);
            Shopitem it = new Shopitem(id, name, price);
            dtm.addRow(shopcart.add(it, ve));
        }

视图层,包含了登录,欢迎,购物车和订单界面

模型层:加入购物车

         DefaultTableModel dtm1=(DefaultTableModel)jt1.getModel();
         DefaultTableModel dtm2=(DefaultTableModel)jt2.getModel();
         Shop shop=new Shop();
         shop.setproduct();
         for(int i=0;i<8;i++) dtm1.addRow(shop.addproduct());
         for(int i=8;i<15;i++) dtm2.addRow(shop.addproduct());

4.对项目中的类使用包进行管理

  1. model:存放实体类。
  2. ui: 存放界面相关代码,比如控制台界面或者图形界面。
  3. util: 存放工具类。
  4. test: 存放测试类。
  5. dao: 存放数据持久化类。
  6. service: 存放业务逻辑代码类。

5.能否直接复用以前编写的购物车代码?在复用以前的购物车代码时,会碰到什么问题。

不能直接复用,会碰到很多问题

6.MVC模式

MVC开始是存在于桌面程序中的,M是指业务模型,V是指用户界面,C则是控制器,使用MVC的目的是将M和V的实现代码分离,从而使同一个程序可以使用不同的表现形式。比如一批统计数据可以分别用柱状图饼图来表示。C存在的目的则是确保M和V的同步,一旦M改变,V应该同步更新。

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值