软件体系结构实验(01):项目的搭建和提交.docx
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
### 软件体系结构实验知识点解析 #### 实验背景与目标 本次实验的主要目的是让学生了解如何进行项目的搭建与提交工作,并通过实际操作掌握软件体系结构的基础知识与实践技巧。实验涉及的内容包括项目的创建、接口编程实践以及相关文档的编写等。 #### 项目搭建与提交流程 1. **Gitee账号注册与项目创建** - 首先需要在[Gitee](https://gitee.com/)平台上注册账号。 - 注册完成后,创建一个新的公共(Public)项目,项目名称按照“学号+姓名”的格式命名,例如:“30003069张三”。 2. **Eclipse项目创建** - 在Eclipse集成开发环境中新建一个项目,项目名称同样遵循“学号+姓名”的格式。 - 创建好项目后,接下来进行接口编程实验。 3. **接口编程实验** - 实验内容主要是实现一个简单的接口程序,该程序包括客户端和服务端两个部分。 - 客户端位于`cn.edu.scau.cmi.zhangsan.client`包下,文件名为`InterProgrammingClient.java`。 - 服务端实现了一个简单的学习状态模拟,其中定义了抽象类`Student`,以及继承自`Student`的两个具体子类`GraduateStudent`和`UndergraduateStudent`。 4. **文档编写** - 编写实验报告文档,文档名称为“软件体系结构实验(1).doc”。 - 文档内容包括但不限于: - UML设计图 - 核心代码实现 - 运行效果展示 5. **代码示例分析** - **Student.java** ```java package cn.edu.scau.cmi.kongzhe.interProgramming; public abstract class Student { public String learning() { return "Studying hard, day day up!!"; } } ``` 这个抽象类`Student`定义了一个名为`learning`的方法,用于表示学习行为。 - **GraduateStudent.java** ```java package cn.edu.scau.cmi.kongzhe.interProgramming; public class GraduateStudent extends Student { @Override public String learning() { return "day day researching!!"; } } ``` `GraduateStudent`继承自`Student`,并重写了`learning`方法,表示研究生的学习状态更偏向于研究。 - **UndergraduateStudent.java** ```java package cn.edu.scau.cmi.kongzhe.interProgramming; public class UndergraduateStudent extends Student { @Override public String learning() { return "day day programming!!"; } } ``` `UndergraduateStudent`也继承自`Student`,但其学习状态更加偏向于编程。 - **InterProgrammingController.java** ```java package cn.edu.scau.cmi.kongzhe.interProgramming; import javafx.event.ActionEvent; import javafx.fxml.FXML; import javafx.scene.control.Button; import javafx.scene.control.TextField; public class InterProgrammingController { @FXML private Button gra; @FXML private Button ungra; @FXML private TextField msg; @FXML public void graClick(ActionEvent event) { Student graduateStudent = new GraduateStudent(); msg.setText(graduateStudent.learning()); } @FXML public void ungraClick(ActionEvent event) { Student undergraduateStudent = new UndergraduateStudent(); msg.setText(undergraduateStudent.learning()); } } ``` 这段代码展示了如何使用JavaFX框架实现用户界面逻辑。其中,`graClick`方法处理点击研究生按钮时的操作,`ungraClick`方法处理点击本科生按钮时的操作。 - **interProgramming.fxml** ```xml <?xml version="1.0" encoding="UTF-8"?> <?import javafx.scene.control.Button?> <?import javafx.scene.control.TextField?> <?import javafx.scene.layout.AnchorPane?> <AnchorPane maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="400.0" prefWidth="600.0" xmlns="http://javafx.com/javafx/10.0.1" xmlns:fx="http://javafx.com/fxml/1" fx:controller="cn.edu.scau.cmi.kongzhe.interProgramming.InterProgrammingController"> <children> <Button fx:id="gra" layout... ``` 这段XML代码定义了用户界面布局,使用JavaFX的FXML格式编写,包括两个按钮和一个文本框。 6. **实验报告编写要点** - **UML设计图**:绘制出类之间的关系图,如类继承关系、方法调用关系等。 - **核心代码实现**:详细解释上述代码实现的具体逻辑,以及各个类和方法的功能。 - **运行效果展示**:提供程序运行的截图或视频,展示不同情况下学生学习状态的变化。 7. **项目提交** - 将实验完成的所有代码、文档等资料提交至Gitee仓库。 - 将Gitee仓库的地址告知课代表。 通过以上步骤,不仅能够锻炼学生的动手能力,还能帮助他们更好地理解软件体系结构的基本概念和技术。此外,这种方式也有助于培养团队协作能力和文档编写能力,对学生的未来发展具有重要意义。
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![avatar-default](https://csdnimg.cn/release/downloadcmsfe/public/img/lazyLogo2.1882d7f4.png)
![avatar](https://profile-avatar.csdnimg.cn/94edbbc4834d49358614912369b17ec0_m0_46529566.jpg!1)
- 粉丝: 9021
- 资源: 4051
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助
![voice](https://csdnimg.cn/release/downloadcmsfe/public/img/voice.245cc511.png)
![center-task](https://csdnimg.cn/release/downloadcmsfe/public/img/center-task.c2eda91a.png)
最新资源
- 代码调试工具gdb指令
- 数据库工具redis-desktop-manager、wiindow安装 Redis-x64-3.0.504
- JavaScript中的`reduce`方法:精解与实战应用
- 46YW-VB一款N-Channel沟道SOT23-6的MOSFET晶体管参数介绍与应用说明
- 如何在C++中实现代码安全性分
- QQ陌生空间留站苹助手
- 446W-VB一款N-Channel沟道SOT23-6的MOSFET晶体管参数介绍与应用说明
- 数据库工具navicat15
- Vue3+ts+threejs实现360度VR全景
- 4451GH-HF-VB一款P-Channel沟道TO252的MOSFET晶体管参数介绍与应用说明
![feedback](https://img-home.csdnimg.cn/images/20220527035711.png)
![feedback-tip](https://img-home.csdnimg.cn/images/20220527035111.png)
![dialog-icon](https://csdnimg.cn/release/downloadcmsfe/public/img/green-success.6a4acb44.png)