2024-2025-1 20241320 《计算机基础与程序设计》第8周学习总结
作业信息
|这个作业属于哪个课程|
https://edu.cnblogs.com/campus/besti/2024-2025-1-CFAP
|这个作业要求在哪里|
https://www.cnblogs.com/rocedu/p/9577842.html#WEEK08
|这个作业的目标|
功能设计与面向对象设计
面向对象设计过程
面向对象语言三要素
汇编、编译、解释、执行
|作业正文|
https://www.cnblogs.com/yixin20060813/p/18548796
教材学习内容总结
一.功能设计
定义:功能设计是按照产品定位的初步要求,在对用户需求及现有产品进行功能调查分析的基础上,对所定位产品应具备的目标功能系统进行概念性构建的创造活动。
特点:
侧重于系统功能的实现和问题的解决。
强调模块化设计,将系统分解成若干个功能模块。
模块之间的交互通过函数调用实现。
二.设计过程:
根据需求找出对象,并抽象每个对象为类。
找出各对象之间的关系,使用组合、继承、分类、扩展等描述这些关系。
为每个对象实体定义要做的事(写对象方法),以及每个类在不需要有对象实体的情况下要做的事(写类方法)。
特点:
侧重于对象的抽象、封装、继承和多态性。
强调以对象为中心进行设计和开发。
有助于提高系统的可重用性、灵活性和扩展性。
二者区别
关注点不同:功能设计更注重系统功能的实现和问题的解决,而面向对象设计则更注重对象的抽象、封装、继承和多态性。
设计思路不同:功能设计采用模块化设计思路,将系统分解成若干个功能模块;而面向对象设计则采用以对象为中心的设计思路,将系统分解成若干个对象。
交互方式不同:在功能设计中,模块之间的交互通过函数调用实现;而在面向对象设计中,对象之间的交互则通过消息发送和接收来实现。
综上所述,功能设计与面向对象设计各有其独特的知识点和设计理念。在实际应用中,应根据具体需求和场景选择合适的设计方法,以确保软件系统的质量和效率。
三.面向对象设计过程
- 需求分析和理解
- 识别类和对象
- 建立类图
- 设计原则的应用
- 细化设计
- 迭代和验证
- 文档编写
- 持续学习和改进
四.面向对象语言三要素 - 封装(Encapsulation)
- 继承(Inheritance)
- 多态(Polymorphism)
优点:
提高了系统的灵活性和可扩展性。
允许在不修改现有代码的情况下添加新的功能(开闭原则)。
增强了代码的可读性和可维护性。
需要注意的是,虽然封装、继承和多态是面向对象语言的三要素,但不同的面向对象语言在实现这些要素时可能会有所不同。例如,一些语言可能提供了更丰富的访问权限修饰符或更灵活的继承机制。因此,在学习和使用不同的面向对象语言时,需要仔细了解它们的具体实现方式和特点。
五.汇编、编译、解释、执行
汇编
定义:
汇编语言是一种低级的、面向硬件的编程语言,它拥有与机器语言相近的指令集,同时允许程序员使用助记符来代替机器码中的二进制数字。
特点:
汇编语言编写的程序需要经过汇编器转换成机器码才能在计算机上执行。
汇编语言与机器语言有很高的对应关系,因此执行效率较高。
汇编语言依赖于特定的硬件平台,因此不同平台的汇编语言有所不同。
组成:
汇编指令(机器码的助记符):如MOV AX,BX。
伪指令:由编译器执行。
其他符号:由编译器识别,如+、-、*、/。
寄存器:
寄存器是CPU中可以存储数据的器件,一个CPU中有多个寄存器。
寄存器用于存放操作数和操作结果,以及控制指令的执行。
编译
定义:
编译是将高级语言编写的源代码转换成机器码或中间码的过程。
过程:
编译过程包括预处理、编译、汇编和链接等多个阶段。
预处理阶段处理宏定义、文件包含等指令。
编译阶段将源代码转换成中间代码或汇编代码。
汇编阶段将汇编代码转换成机器码。
链接阶段将多个目标文件链接成一个可执行文件。
特点:
编译型语言通常以其高性能和效率为最大卖点,适用于性能要求高的应用场景。
编译型语言在程序运行之前需要进行完整的编译过程,因此程序启动速度较快。
解释
定义:
解释是在程序运行时由解释器逐行转换和执行源代码的过程。
特点:
解释型语言通常具有更好的灵活性和跨平台性,因为解释器可以在不同的平台上运行。
解释型语言的执行速度可能相对较慢,因为每次运行程序时都需要逐行解释和执行源代码。
优势:
解释型语言易于调试和修改,因为可以立即看到代码更改的效果。
解释型语言通常具有更丰富的动态特性和内置函数库。
执行
定义:
执行是程序在计算机上运行并完成特定任务的过程。
方式:
无论是编译型语言还是解释型语言,最终都需要在计算机上执行以完成特定的任务。
编译型语言的可执行文件可以直接在计算机上运行,而解释型语言则需要通过解释器来运行。
特点:
执行过程涉及CPU、内存、I/O设备等硬件资源的调度和管理。
程序的执行效率受到多种因素的影响,包括编译器或解释器的性能、硬件资源的配置等。
基于AI的学习
-
计划学习时间:1小时
-
实际学习时间:1小时
-
改进情况:
(有空多看看现代软件工程 课件
软件工程师能力自我评价表)
参考资料
- 《计算机科学概论(第七版)》
- ...