随笔分类 - 软件设计
摘要:一、今日学习内容 对数据库的操作一般包括连接、打开、使用、关闭等步骤,在数据库操作模板类中我们定义了connDB()、openDB()、useDB()、closeDB()四个方法分别对应这四个步骤。对于不同类型的数据库(如SQL Server和Oracle),其操作步骤都一致,只是连接数据库conn
阅读全文
摘要:一、今日学习内容 在“虚拟聊天室”实例中增加一个新的具体聊天室类和一个新的具体会员类,要求如下: 1. 新的具体聊天室中发送的图片大小不得超过20M。 2. 新的具体聊天室中发送的文字长度不得超过100个字符。 3. 新的具体会员类可以发送图片信息和文本信息。 4. 新的具体会员类在发送文本信息时,
阅读全文
摘要:一、今日学习内容 [实验任务一]:财务审批 某物资管理系统中物资采购需要分级审批,主任可以审批1万元及以下的采购单,部门经理可以审批5万元及以下的采购单,副总经理可以审批10万元及以下的采购单,总经理可以审批20万元及以下的采购单,20万元以上的采购单需要开职工大会确定。现用职责链模式设计该系统。
阅读全文
摘要:一、今日学习内容 当股票的价格上涨或下降5%时,会通知持有该股票的股民,当股民听到价格上涨的消息时会买股票,当价格下降时会大哭一场。 c++: #include<iostream> #include<list> using namespace std; class MyObserver { publ
阅读全文
摘要:一、今日学习内容 信1305班共44名同学,每名同学都有姓名,学号和年龄等属性,分别使用JAVA内置迭代器和C++中标准模板库(STL)实现对同学信息的遍历,要求按照学号从小到大和从大到小两种次序输出学生信息。 类图: 测试结果: c++: #include <iostream> #include<
阅读全文
摘要:一、今日学习内容 在“虚拟聊天室”实例中增加一个新的具体聊天室类和一个新的具体会员类,要求如下: 1. 新的具体聊天室中发送的图片大小不得超过20M。 2. 新的具体聊天室中发送的文字长度不得超过100个字符。 3. 新的具体会员类可以发送图片信息和文本信息。 4. 新的具体会员类在发送文本信息时,
阅读全文
摘要:一、今日学习内容 [实验任务一]:两个维度的桥接模式 用桥接模式实现在路上开车这个问题,其中,车可以是car或bus,路可以是水泥路或沥青路。 #include<iostream> #include<string> using namespace std; class Chexing { publi
阅读全文
摘要:一、今日学习内容 [实验任务一]:手机功能的升级 用装饰模式模拟手机功能的升级过程:简单的手机(SimplePhone)在接收来电时,会发出声音提醒主人;而JarPhone除了声音还能振动;更高级的手机(ComplexPhone)除了声音、振动外,还有灯光闪烁提示。 #include <iostre
阅读全文
摘要:一、今日学习内容 [实验任务一]:双向适配器 实现一个双向适配器,使得猫可以学狗叫,狗可以学猫抓老鼠。 二、遇到的问题 通过查阅相关资料,解决了错误 三、明日计划 明天继续学习
阅读全文
摘要:一、今日学习内容 用C++完成数学中向量的封装,其中,用指针和动态申请支持向量长度的改变,使用浅克隆和深克隆复制向量类,比较这两种克隆方式的异同。 #include<cmath> #include<iostream> using namespace std; class Vector{ privat
阅读全文
摘要:一、今日学习内容 1、类图 2、代码 #include<iostream> using namespace std; #include<string> class Computer { private: string host; //主机 string internal; //内存 string h
阅读全文
摘要:一、今日学习内容 使用抽象工厂模式,完成下述产品等级结构: 1、类图 2、源代码 2.1 Man.java package test4; /* * 抽象产品类Man */ public interface Man { public void makeM(); } 2.2 WhiteMan.java
阅读全文
摘要:一、今日学习内容 目前常用的加密算法有DES(Data Encryption Standard)和IDEA(International Data Encryption Algorithm)国际数据加密算法等,请用工厂方法实现加密算法系统。 1、类图 2、源代码 2.1 结构目录 2.2 所需jar包
阅读全文
摘要:一、今日学习内容 1、类图 2、源程序代码 #include<iostream> #include<vector> using namespace std; typedef enum PersonTypeTag { M, W, R }PersonType; class Person { public
阅读全文
摘要:一、今日学习内容 今天主要完成了软件设计实验一中的编程问题 [实验任务二]:单一职责原则 登录模块在实际项目开发中很常见,请按照教材28页利用单一职责原则重构后的类图实现这一模块。 1、新建 java project 2、导入jar包 mysql-connector-java-8.0.22.jar
阅读全文
摘要:一、今日学习内容 1 开闭原则:一个软件实体如类,模块和函数应该对扩展开放,修改关闭! 背景:一般情况下,在系统相对稳定的时候,一个Dao类都是通过实现一个抽象接口来完成一个Dao类,但是当我们对于某个Dao类的实现并不满足。我们需要在原来的Dao基础上新增方法或者模块。对于专属专用的接口自然比较容
阅读全文