<面向对象程序设计>课程作业一
Github链接
在看完这次的作业要求后我整个人是混乱的,因为作业要求把不同的函数放在一个main函数中;我们之前也是进行了函数分离,但是是放在了不同的文件中。如果要改的话相当于重写(而且这两种形式其实也都是在调用函数),绝不是星期日一个小时就能做完的,所以我和助教聊了一下:

在得到助教的回答后我又重新看了一遍代码,发现我们之前写的代码功能都混在一起了,没有办法完全分离成不同的函数,所以还是要重构。。。。
作业感想
虽然代码达到了要求,但是我还是不太了解到底什么是模块化,所以我又上网查了一下,看到了一位网友的回复,我觉得说的挺好的,所以和大家分享一下:
举例来说吧,比如你设计了3个不同用途的系统,而3个系统都恰好要用到同一个外部设备,假设这个外部设备是个液晶显器吧,那你就仅仅只要写一个液晶驱动(而不用写三个),设定好入口函数,3个不同用途的系统就都能用了,是不是很省事呢?
其他也一样,比如使用传感器,常常要多次采样取平均值,以提高准确性,那就可以做一个通用的计算平均值的子程序,需要的时候拿来用就行了,不用管这次是温度传感器、压力传感器还是加速度感器,全部通用,就不用每次都编了.这样就提高效率了嘛。
至于把各模块连接起来,这本来概念上就不对。模块不是连接的,而是被调用的。 设计程序时应当先设计主程序的流程图,再逐步细化,细化到一定程度自然就变成一个个模块的组合了。而在主程序中只是设置一些参数,然后调用模块完成相应的功能。
这次的作业主要还是想让我们进一步熟练的运用函数调用,然后进一步向模块化编程靠近,相信我们有一天能真正进行模块化编程
其他功能


<面向对象程序设计>课程作业一的更多相关文章
- 201771010128王玉兰《面向对象程序设计(Java)》课程学习总结
1.实验目的与要求 (1) 综合掌握java基本程序结构: (2) 综合掌握java面向对象程序设计特点: (3) 综合掌握java GUI 程序设计结构: (4) 综合掌握java多线程编程模型: ...
- 王之泰《面向对象程序设计(java)》课程学习总结
第一部分:理论知识学习部分 总复习纲要 1. Java语言特点与开发环境配置(第1章.第2章) 2. Java基本程序结构(第3章) 3. Java面向对象程序结构(第4章.第5章.第6章) 4. 类 ...
- 2018面向对象程序设计(Java)第18周学习指导及要求
2018面向对象程序设计(Java) 第18周学习指导及要求(2018.12.27-2018.12.30) 学习目标 (1) 综合掌握java基本程序结构: (2) 综合掌握java面向对象程序设 ...
- 2018面向对象程序设计(Java)第17周学习指导及要求
2018面向对象程序设计(Java)第17周学习指导及要求(2018.12.20-2018.12.23) 学习目标 (1) 掌握线程同步的概念及实现技术: (2) Java线程综合编程练习 学习资 ...
- 2018面向对象程序设计(Java)第16周学习指导及要求
2018面向对象程序设计(Java)第16周学习指导及要求(2018.12.13-2018.12.16) 学习目标 (1) 掌握线程概念: (2) 掌握线程创建的两种技术: (3) 理解和掌握线程 ...
- 2018面向对象程序设计(Java)第15周学习指导及要求
2018面向对象程序设计(Java)第15周学习指导及要求 (2018.12.6-2018.12.9) 学习目标 (1) 掌握Java应用程序打包操作: (2) 了解应用程序存储配置信息的两种方法 ...
- 2018面向对象程序设计(Java)第14周学习指导及要求
2018面向对象程序设计(Java)第14周学习指导及要求(2018.11.29-2018.12.2) 学习目标 (1) 掌握GUI布局管理器用法: (2) 掌握各类Java Swing组件用途及 ...
- 2018面向对象程序设计(Java)第13周学习指导及要求
2018面向对象程序设计(Java)第13周学习指导及要求 (2018.11.22-2018.11.25) 学习目标 (1) 掌握事件处理的基本原理,理解其用途: (2) 掌握AWT事件模型的工作机 ...
- 2018面向对象程序设计(Java)第12周学习指导及要求
2018面向对象程序设计(Java)第12周学习指导及要求 (2018.11.15-2018.11.18) 学习目标 (1) 掌握Java GUI中框架创建及属性设置中常用类的API: (2) 掌 ...
随机推荐
- Spring容器技术内幕之BeanDefinition类介绍
引言 org.springframework.beans.factory.config.BeanDefinition是配置文件< bean >元素标签在容器中地内部表示.< bean ...
- Go学习笔记01-环境搭建
最近想学学Go语言,就在笔记本上配置了Go的环境. 本人的运行环境为:Windows 10 1709. 1.下载安装包 到官网下载安装包,官网网址为:Go安装包下载地址 现在Go的最新版本为1.9.2 ...
- 分包收集 android 运行的 logcat 日志
# -*- coding:utf-8 -*- import os import time from common import Common comm = Common() cmd = r'adb l ...
- 【原创】Linux常用命令记录
1. 查看网络状态分布 #!/bin/sh netstat -apn >/dev/ \ | awk 'BEGIN {printf("%-15s%-15s%-15s%-15s\n&quo ...
- 管道流_PipedInputStream与PipedOutputStream
输入和输出可以直接进行连接,通过结合线程使用(一个线程用于写,另一个用于读,因为管道输入流(读)是要读取管道输出流的数据的,又因为输入流中的read方法是阻塞式的,当两个流在同一个线程中时,输入流的r ...
- c++のurlmon实现下载文件并进度回调
主文件: #include "stdafx.h" #include <UrlMon.h> #pragma comment(lib, "urlmon.lib&q ...
- Spark DataSet 、DataFrame 一些使用示例
以前使用过DS和DF,最近使用Spark ML跑实验,再次用到简单复习一下. //案例数据 1,2,3 4,5,6 7,8,9 10,11,12 13,14,15 1,2,3 4,5,6 7,8,9 ...
- Python基础(5)——函数
函数 定义 #函数定义 def calc(x,y): res = x**y return res #返回函数执行结果 calc() #调用函数 关键参数 正常情况下,给函数传参数要按顺序,不想按顺序就 ...
- Photoshop 基础六 图层
图层就像一张张叠在一起的胶片,最上层的图像挡住下面的图像,使之看不见 上层图像中没有像素的地方为透明区域,通过透明区域可以看到下一层的图像 图层是相对独立的,在一个图层编辑时,不影响其它图层 每次只能 ...
- JDBC使用MYSQL的LOAD DATA LOACAL INFILE和LOAD DATA INFILE
MYSQL的LOAD方法都必须建立在mysql服务允许使用该命令的情况下: 开启该命令的方法: 1.在实例对应的my.cnf(windows为my.ini)中添加一行local-infile=1(默认 ...