软件工程详细知识点复习(上)

news2024/11/18 21:27:21

文章目录

    • 一、软件工程概述
      • 1、软件与软件危机
      • 2、软件工程
    • 二、可行性研究
    • 三、需求分析
    • 四、概要设计
    • 五、详细设计

一、软件工程概述

1、软件与软件危机

软件=程序+数据+文档

1、软件危机的主要表现

  1. 软件不能满足用户需求
  2. 软件开发成本严重超标,开发周期大大超过规定日期
  3. 软件质量难以保证,可靠性差
  4. 软件难以维护
  5. 软件开发速度跟不上计算机发展速度

2、软件危机产生的原因

一方面与软件本身的抽象性和复杂性有关,这是客观原因
另一方面与软件开发和维护过程中使用的技术和方法有关,这是主管原因
根本原因是软件开发过程不成熟,具体表现为:

  1. 忽视软件开发前期的调研和需求分析工作
  2. 缺乏软件开发的经验和有关软件开发数据的积累,使得开发的计划很难制定
  3. 开发过程缺乏统一的规范化的方法论指导
  4. 忽视与用户开发成员间的及时有效的沟通
  5. 文档资料不规范或不准确。导致开发者失去工作的基础,管理者失去管理的依据。
  6. 没有完善的质量保证体系

3、软件危机的解决途径

  1. 使用好的软件开发技术方法
  2. 使用好的软件开发工具提高软件生产率
  3. 有良好的组织严密的管理,各方面人员相互配合共同完成任务

2、软件工程

1、软件工程基本原理

  1. 用分阶段的软件生存周期计划进行严格的质量管理
  2. 坚持进行阶段评审
  3. 实行严格的产品控制
  4. 采用现代程序设计技术
  5. 软件工程结果应能清楚的审查
  6. 开发小组人员应该少而精
  7. 承认不断改进软件工程实践的必要性

软件工程的三要素是方法工具过程

2、软件生命周期
软件产品或软件系统从设计、投入使用到被淘汰的全过程称为软件的生命周期

软件生命周期各阶段

  1. 问题定义和可行性研究
  2. 需求分析
  3. 软件设计
  4. 编码
  5. 软件测试
  6. 运行与维护

请添加图片描述

3、软件开发模型
1、瀑布模型
犹如瀑布流水,自上而下、逐级下落
特点:

  1. 阶段间具有顺序性依赖性。前一段结束后才能开始后一阶段的工作,前一阶段的输入是后一阶段的输入
  2. 推迟实现观点,尽可能推迟程序的物理实现
  3. 强调质量保证观点。每个阶段必须完成规定的文档,每个阶段结束前完成文档审查,以便及早改正错误。
  4. 瀑布模型是一种文档驱动的模型

优点:

  1. 原理简单,容易掌握
  2. 各阶段间都有验证和确认环节,以便进行质量管理
  3. 主要用于支持结构化算法

缺点:

  1. 缺乏灵活性,不能适应用户需求的变化
  2. 缺乏演化性,返回上一级的开发需要付出十分昂贵的代价
  3. 瀑布模型是线性的软件开发模型,回溯性很差。

适用场合

  1. 适用于软件需求比较明确或很少变化,并且开发人员可以一次性获取全部需求的场合
  2. 适用于开发技术比较成熟、工程管理比较严格的场合
  3. 一般用于低风险的项目,适用于开发人员具有丰富经验,对软件应用领域很熟悉的场合

2、快速原型模型
特点:
主要用于挖掘需求,或是进行某种技术或开发方法的可行性研究,是开发人员为了快速而准确获得用户需求而经常采用的方法。
优点:

  1. 增强了开发者与用户之间的交流,有助于满足用户的真实需求
  2. 用户可以及早得到有用的产品,及早发现问题,随时纠正错误
  3. 可减少技术、应用风险,降低开发费用,缩短开发时间

缺点:

  1. 缺乏丰富而强有力的软件工具和开发环境
  2. 对设计人员的水平及开发环境要求较高
  3. 在重复改变原型的过程中,程序员会厌倦
  4. 难以做到彻底测试,更新文档较困难

适用场合

  1. 预先不能确切定义需求的软件系统,或需求多变的系统
  2. 开发人员对设计方案没信心或对将要采用的技术手段不熟悉或把握不大
  3. 快速原型模型可作为单独的过程模型使用,也常被作为一种方法或实现技术应用于其他的过程模型

3、增量模型
把软件产品作为一系列增量构件来设计、编码、集成和测试,在项目软件开发过程中,以一系列的增量方式来逐步开发系统。
特点:

  1. 分段的线性模型,是一种非整体的开发模型
  2. 增量开发是按一定的时间间隔开发部分软件
  3. 增量提交是先提交部分软件给用户试用,听取用户意见,在提交另一部分软件让用户试用,反复多次,直到全部提交
  4. 增量模型开发方式可以在软件开发部分阶段采用,也可以在全部开发阶段采用

优点:

  1. 渐增模型是瀑布模型的一个变体,可以看作重复执行的多个瀑布模型,具有瀑布模型的所有优点,此外,还有以下优点:
  2. 可分批次提交软件产品,方便用户及时了解软件开发进展情况,及早发现问题。
  3. 以组件为单位进行开发,降低了软件开发风险。
  4. 开发顺序灵活。优先级最高的服务首先交付。

缺点:

  1. 由于对整个软件系统的需求没有一个完整的定义,会给总体设计带来麻烦。
  2. 在把每个新的增量构件集成到现有软件结构中时.必须不破坏原来已开发出的产品。
  3. 软件的体系结构必须是开放的,即向现有产品中加入新构件的过程必须简单、方便。每次增量开发的产品都应当是可测试的、可扩充的。

适用场合

  1. 软件产品可以分批次地进行交付。
  2. 待开发的软件系统能够被模块化。
  3. 软件开发人员对应用领域不熟悉﹑难以一次性地进行系统开发时。
  4. 项目管理人员把握全局的水平较高。
  5. 对软件需求把握不准确、设计方案有一定风险的软件项目。

4、喷泉模型
特点:

  1. 各阶段相互重叠,反映了软件过程的并行性。
  2. 以分析为基础,资源消耗呈塔形,在分析阶段消耗资源最多。
  3. 反映了软件过程迭代的自然特性,从高层返回低层无资源消耗。
  4. 强调增量开发,依据分析一点、设计一点的原则,不要求一个阶段的彻底完成,整个过程是一个迭代的逐步提炼的过程
  5. 喷泉模型是对象驱动过程,对象是所有活动作用的主体,也是项目管理的基本内容

喷泉模型适用于面向对象的软件开发

二、可行性研究

1、目的:最小的代价、尽可能短的时间、是否有可行解决方案
可行性分析是一个大大简化的系统分析和设计过程。

2、可行性分析的任务

  1. 技术可行性
  2. 经济可行性
  3. 运行可行性
  4. 法律可行性

3、可行性分析的步骤

  1. 审核系统的规模和目标
  2. 分析研究现行系统
  3. 设计新系统的高级逻辑模型
  4. 获得比较可行的方案
  5. 撰写可行性研究报告

4、工具:系统流程图
表述的是什么?描述物理模型

5、项目计划:成本估算的方法有哪些?

  1. 自顶向下估算法
  2. 自底向上估算法
  3. 差别估算法

6、进度安排方法

  1. 甘特图法
      优点:能从时间上整体把握进度,很清晰地表达每一项任务的起始时间与结束时间,且直观简明易于绘制,标名了各任务的计划进度和当前进度,能动态反映软件开发的进展状况。
      缺点:不能显示的描述各任务彼此间的依赖关系,进度计划中的关键阶段不明确。
  2. 工程网络图法
      优点:采用网络图进行进度控制,能够清晰地展现现在和将来完成的工作内容、各项工作单元间的关系。并且可以预先确定各任务的时差。了解关键作业或某一项进度的变化对后续工作和总工期的影响度,便于及时地采取措施或对进度计划进行调整。
      缺点:不能系统地表达每项的起始时间与结束时间,不易于对单项任务的过程进行跟踪。

7、成果:可行性分析报告:包含哪些内容?
1 .投资必要性;
2.技术的可行性;
3.财务可行性;
4.组织可行性;
5.经济可行性;
6.社会可行性;
7.风险因素及对策

三、需求分析

1、需求分析的任务:描述软件的功能和性能,需求不单单是功能需求,还有非功能性需求

2、需求分析的步骤

  1. 需求获取
  2. 分析建模
  3. 需求描述
  4. 需求验证

(1)需求获取有哪些方法?

  1. 问卷调查
  2. 访谈会议
  3. 市场调查
  4. 实地操作
  5. 建立原型

3、结构化分析-建模的方式(重点掌握)
(1)思想:结构化分析与设计是一种面向数据流的分析方法,自顶向下,逐步求精
(2)工具1:数据流图(DFD)
描绘逻辑模型,什么是数据流图?
  数据流图是用于表示系统逻辑模型的一种工具。从数据传递和加工的角度,以图形的方式描述数据在系统中流动的处理的过程

基本符号
在这里插入图片描述

画法(给你需求,让你画数据流图):先找源点、汇点,再找加工(动词),再找数据流(名词)
顶层图、0层图、1层图,父子图之间的平衡必须要注意

(3)工具2:数据字典(DD):4种
数据字典是结构化分析方法中的另一个有力工具,它针对数据流图出现的所有数据元素给出逻辑定义

  1. 数据字典的内容
    (1)数据流条目
    (2)文件条目
    (3)数据项条目
    (4)加工条目
  2. 数据字典中使用的符号
    1)=:被定义为。
    2)+:与。 例如,X=a+b表示x由a和 b组成。
    3)[…│…]:或。例如,X=[a│b]表示x由a或b组成。
    4){…}:重复。例如,X={a}表示x由0个或多个a组成。
    5)m{…}n或{…}nm:重复。例如:X=2{a}5或X={a}52表示x中最少出现2次a,最多出现5次a。5,2为重复次数的上、下限。
    6)(…):可选。例如,x=(a)表示a可在x中出现,也可不出现。
    7)“…”:基本数据元素。例如,x=“a”,表示x是取值为字符a的数据元素。
    8)“··”:连接符。例如,x=1··9,表示x可取1到9中任意一个值。
符号使用案例:
机票 = 姓名 + 日期 + 航班号 + 始发地 + 目的地 + 费用;

终点 = [上海 | 北京 | 广州];
航班号 = “CZ9938” ·· “CZ9948”;
  1. 数据字典写实例
  2. 数据字典的实现
    (1)人工方法:人工方法实现时,每一词典条目(每一个数据定义或每一个加工逻辑说明)写在一张卡片上,由专人管理和维护。为了便于搜索,所有卡片按数据名称排序。人工方法的优点是容易实现。
    (2)自动方法:把词典存在计算机中,用计算机对它搜索和维护。现有多种“词典管理程序”,如 PLS/PSA。用计算机管理词典质量高,搜索、维护方便。
    (3)人工和自动混合的方法:在人工过程中可借助正文编写程序、报告生成程序等工具辅助完成。
    不论通过哪种途径实现的数据词典都应尽量做到以下几点:
    (1)没有冗余:主要指数据定义不能重复。在规格说明书的其他组成部分中已出现的信息不能重复。
    (2)查阅方便:通过名称可以方便地查阅数据词典中的每个定义。
    (3)定义的书写方法简单、方便、严谨,而且可读性强
    (4)建议采用卡片形式书写

(4)工具3:加工逻辑说明:(类似与描述算法)

  1. 结构化语言
    结构化语言是在自然语言基础上加上一定的限制语句得到的语言,介于自然语言与程序设计语言之间
  2. 判定表
  3. 判定树

4、成果:需求规格说明书:包含哪些内容?

  • 正文的第一章内容是1.概述,包含
    1.1.编写目的;1.2.术语与定义;1.3.参考资料;三个部分

  • 第二章要给出该项目的标准和规范,在文档的后续内容编写中以及项目开发过程中必须遵照这个标准和规范进行。

  • 第三章应该说明该项目的相关假设、限制和一些依赖条件,在后续系统部署的过程中可以有参考意义。

  • 第四章“功能规格”是重点,重点介绍这个系统的角色,界面设计思路,系统的功能视图和功能点清单,以及系统的需求用例。这个内容必须详细描述,这样才能对后续的开发和测试提供指导意义。

  • 第五章“非功能规格”要对项目的性能、安全、数据的备份恢复等内容解释解释说明,一个项目除了功能完整之外,还要考虑性能、安全等相应的要求。

  • 第六章“附录”,是对软件需求规格说明书的一些补充说明文档,其中的“软件需求跟踪矩阵”是重点,这份文档是对后续需求的完善程度进行了严格的控制。

四、概要设计

1、任务确定系统的总体结构

  1. 设计软件系统结构
  2. 数据结构及数据库设计
  3. 编写概要设计文档
  4. 评审概要设计文档

2、过程:数据库设计是概要设计中的一个任务、测试计划也是概要设计中的一个任务

  1. 选定体系结构
  2. 确定设计方案
  3. 设计软件结构
  4. 数据结构及数据库设计
  5. 制定测试计划
  6. 编写概要设计文档
  7. 概要设计文档评审

3、原则:模块独立性的两个标准:耦合和内聚(哪几种,排列顺序)

  1. 模块化
  2. 抽象与分解
  3. 信息隐蔽与局部化
  4. 模块独立性
  5. 复用性设计

模块独立性:
1️⃣耦合性
耦合是模块之间相互连接的紧密程序的度量
模块之间的练习越紧密,联系越多,耦合性就越高,而其模块独立性就月弱

  1. 非直接耦合
    耦合度最弱,模块独立性最强
  2. 数据耦合
    调用模块和被调用模块之间只传递简单的数据项参数
  3. 标记耦合
    传递地址
  4. 控制耦合
    模块之间传递的不是数据,而是控制信息如标志、开关量,一个模块控制了另一个模块的功能
  5. 外部耦合
    一组模块都访问同一全局简单变量,而且不通过参数表传递该全局变量的信息
  6. 公共耦合
    一组模块都访问同一全局数据结构
  7. 内容耦合
    一个模块直接访问另一个模块的内容

尽量使用数据耦合,少用控制耦合,慎用或有控制地使用公共耦合、并限制公共耦合的范围,坚决避免内容耦合

2️⃣内聚性

  1. 偶然内聚
    一个模块内的各成分无实质性的联系,只是偶然地被凑到一起
  2. 逻辑内聚
    模块内部各组成部分的处理动作在逻辑上相似,但功能却彼此不同或无关
  3. 时间内聚
    将若干个在同一时间段内进行的工作集中在一个模块内,但这些工作彼此无关
  4. 过程内聚
    模块内部包含的各个成分按照某种确定的顺序进行,但所做工作没什么关系
  5. 通信内聚
    模块内所有处理功能都通过公用数据而发生关系。即模块内各个组成部分都适用相同的输入数据或产生相同的输出结果
  6. 顺序内聚
    一个模块中各个组成部分和同一功能密切相关,而且各个组成部分必须顺序执行,通常前一个成分的输出就是后一个成分的输入
  7. 功能内聚
    模块内个各个组成部分全部都为完成同一个功能而存在,共同完成一个单一的功能,并且只能完成一个功能,模块已不可再分

设计的要求:高内聚、低耦合
设计的准则:提高独立性、模块的作用范围和控制范围

  1. 模块功能的完善化
  2. 消除重复功能,改善软件结构
  3. 模块规模应适中
  4. 模块的深度、宽度、扇出和扇入都应适当
  5. 模块的作用范围应在控制范围之内
  6. 力争降低模块接口的复杂程度
  7. 设计单入口、单出口的模块
  8. 模块功能应该可以预测

4、工具:系统结构图:通过数据流图导出系统结构图(怎么画的要了解)
数据流图两种:变换型数据流图、事务型数据流图,大部分的数据流图都是变换型的,局部有事务型特征
5、成果:概要设计说明书:包含哪些内容?

  • 总述:需求或目标(讲一下事情的起源)、环境、局限;
  • 总体设计:从全局的角度说一下
    组织结构、功能、处理流程、有哪些模块、模块间的关系,运行环境等。(输出图:系统结构图,系统流程图,数据流程图)
  • 外部接口:总体说明外部用户、软、硬件接口(可用资源);
  • 模块设计:每个模块“做什么”、简要说明“怎么做”(输入、输出、处理逻辑、与其它模块或系统的接口),处在什么逻辑位置、物理位置。

五、详细设计

1、任务:确定每一个模块所使用的算法、块内数据结构和接口细节

  1. 算法设计
  2. 数据结构设计
  3. 确定模块接口细节
  4. 测试用例设计
  5. 数据库物理设计
  6. 数据代码设计
  7. 其他设计
  8. 编写详细设计说明书并进行评审

2、工具(较重要):程序流程图、N-S图、PAD图(画法,给你一个算法,你能画图)
每种图有优缺点:程序流程图在描述程序结构、嵌套关系、层次结构上不容易表示,不太支持逐步求精,简单、清晰、直观

图形工具:程序流程图、N-S图、PAD图
表格工具:判定表
语言工具:过程设计语言(PDL)

1️⃣程序流程图

  1. 处理框也可以表示输入/输出操作
  2. 在不至于混淆的情况下,从上到下、从左到右的箭头可以省略
  3. 预定义的处理可定义函数和子程序
    在这里插入图片描述
  4. 连接点用于从一张流程图到另一张流程图的转接

顺序结构:
选择结构:
多分支选择结构:
当循环结构
直到循环结构:

优点:直观清晰、易于使用
缺点:①控制流程的流向可以任意画,容易造成非结构化的程序结构
②流程图不能反映逐步求精的过程,往往反映的是最后的结果
③不易表示数据结构

2️⃣N-S图
(1)顺序结构:在方框内从上到下安排任务,任务之间以横线分开,一个任务框内可以是一条语句或多条相关语句
(2)选择结构:
(3)循环结构

在这里插入图片描述
N-S图特点
①每一个特定控制结构的作用域都很明确,能够清晰判别
②绘制时需遵守结构化程序设计要求,不能够任意转移控制
③易于确定局部数据和全局数据的作用域
④易于表示嵌套结构的模块化得层次结构

3️⃣PAD图
优点
(1)结构清晰,易读易画
(2)使用PAD图设计出的程序必然是结构化程序
(3)PAD图容易转换成高级语言源程序
(4)支持自顶向下、逐步求精的设计方法

在这里插入图片描述
4️⃣PDL图
特点:
(1)关键字具有固定的语法格式,可以提供结构化控制语句、数据和模块说明
(2)处理部分的描述采用自然语言,便于理解
(3)可以说明简单数据结构和复杂数据结构
(4)可以完成模块定义和调用的说明,并能完成各种接口的描述
(5)PDL描述与程序结构相似,容易自动生成程序

(1)数据说明:PDL 程序中指明数据名的类型及作用域.其形式为: 
end <子程序名> <PDL 语句指各种 PDL 构造> 
(3)分程序结构 
begin <分程序名> <PDL 语句> 
end <分程序名> 
(4)顺序结构 
选择型 
if <条件> then 
<PDL 语句> 
else 
<PDL 语句> 

end if 
if <条件> then 
<PDL 语句> 
else if <条件> then 
<PDL 语句> 
else 
<PDL 语句> 
end if 
WHILE 循环 
loop while <条件> 
<PDL 语句> 
end loop 
UNTIL 型循环 
loop until <条件> 
<PDL 语句> 
end loop 
CASE 型 
Case <选择句子> of 
<标号>{, <标号}: ><PDL 语言> 
[default]: [<PDL 语句>] 
end case 
(5)输入/输出结构 print read display 

3、成果:详细设计说明书

  • 引言,包含: 编写目的,背景,参考资料,术语定义及说明
  • 设计概述,包含:任务和目标,需求概述,运行环境概述, 条件与限制,详细设计方法和工具
  • 系统详细需求分析,包含:详细需求分析,详细系统运行环境及限制条件分析接口需求分析
  • 总体方案确认,包含: 系统总体结构确认, 系统详细界面划分
  • 系统详细设计,包含:
    系统结构设计及子系统划分,系统功能模块详细设计(采用HIPO图进行功能分解与模块描述,用IPO或结构图描述各模块的组成结构、算法、模块间的接口关系,以及需求、功能和模块三者之间的交叉参照关系),系统界面详细设计

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/29672.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

网络设备安装上线,你要知道的10个步骤

大家好&#xff0c;我是技福的小咖老师。在网络工程中设备的安装工作必不可少&#xff0c;你平时都是按哪些步骤完成的&#xff1f;今天给大家总结一下最常见的10个步骤。 安装流程 网络设备安装流程图 安装环境要求 1► 安装场景 为确保设备的正常运行&#xff0c;延长设备…

C. Infected Tree(思维+DFS)

Problem - 1689C - Codeforces Byteland是一片美丽的土地&#xff0c;因其美丽的树木而闻名。 米沙发现了一棵有n个顶点的二叉树&#xff0c;编号从1到n。二叉树是一个无环连接的双向图&#xff0c;包含n个顶点和n-1条边。每个顶点的度数最多为3&#xff0c;而根是数字为1的顶…

基于STM32G431嵌入式学习笔记——五、NVIC中断(以串口UART中断为例)

一、基础知识 1.专业术语 2.NVIC简介 ①在这里要注意&#xff0c;中断控制是分级处理的 ②是否请求中断是中断源控制的。 ③是否响应中断是响应方控制的。 ④以外部中断为例&#xff0c;外部中断请求顺序就是首先从请求的外部设备中选出优先级最高的一个设备待中断&#xff0c…

唐山盐碱滩成渤海明珠 国稻种芯·中国水稻节:河北曹妃甸大米

唐山盐碱滩成渤海明珠 国稻种芯中国水稻节&#xff1a;河北曹妃甸大米 新华社音视频部制作 记者 杨世尧 河北新闻网讯 王士波 赵诤国 新闻中国采编网 中国新闻采编网 谋定研究中国智库网 中国农民丰收节国际贸易促进会 国稻种芯中国水稻节 中国三农智库网-功能性农业农业大健康…

电脑怎么迁移游戏资源,数据迁移能把游戏数据迁移吗

概述&#xff1a;玩家们在打游戏的过程中&#xff0c;会产生很多数据&#xff0c;尤其是那些大型游戏的玩家&#xff0c;都会珍惜游戏数据。电脑怎么迁移游戏资源&#xff1f;如果您刚刚购买了一台新电脑&#xff0c;并且正在寻找将游戏迁移到新电脑的方法&#xff0c;相信本文…

8 张图 | 剖析 Eureka 的首次同步注册表

注册表对于注册中心尤为重要&#xff0c;所有的功能都是围绕这个注册表展开。比如服务 A 要想访问服务 B&#xff0c;就得知道服务 B 的 IP 地址和端口号吧。如下图所示&#xff0c;传统的方式就是服务 A 知道了服务 B 的地址后&#xff0c;发送 HTTP 请求到对应的 API 地址上。…

MySQL事务管理 MVCC,隔离性详解

目录事务管理事务背景什么是事务&#xff1f;事务的四个属性为什么会出现事务?MySQL支持事务的版本事务提交方式事务常见操作方式演示(体现原子性和持久性)操作注意事项结论事务隔离性查看与设置隔离性各种隔离性演示读未提交【Read Uncommitted】脏读读提交【Read Committed】…

【SNUT集训1】排序 二分 前缀和 差分(6 / 16)

目录 P1094 [NOIP2007 普及组] 纪念品分组 - 排序贪心双指针 P1571 眼红的Medusa - 哈希表 P1678 烦恼的高考志愿 P1024 [NOIP2001 提高组] 一元三次方程求解 1、二分法 2、暴力 P7585 [COCI2012-2013#1] LJUBOMORA - 二分 P4552 [Poetize6] IncDec Sequence- 差分思维…

【Vue学习之从入门到神经】

14天学习训练营导师课程&#xff1a; 郑为中《Vue和SpringBoot打造假日旅社管理系统》 目录 1. VUE介绍 2. Vue导入 3. VUE相关指令 4. 显示隐藏相关 5. Vue周边库 1. VUE介绍 VUE是目前最流行的前端框架, 基于MVVM设计模式VUE框架两种用法: 多页面应用, 在html页面中引入…

【HMS Core】游戏初始化

前提条件 实现游戏初始化前&#xff0c;必须已经完成AppGallery Connect的配置准备&#xff0c;参见AGC控制台准备。已完成集成SDK和配置混淆脚本。 注意事项 本场景中涉及的功能必须在应用启动时完成&#xff0c;而不是用户在进行登录、支付等操作时才完成&#xff0c;否则可…

无线传感器网络:物理层设计

文章目录Physical Layer TechnologiesRadio FrequenciesNarrow-Band CommunicationSpread SpectrumDSSSFHSSUltra Wide Band (UWB)Optical CommunicationAcoustic CommunicationMagnetic Induction CommunicationRF Wireless CommunicationWireless Channel EffectsAttenuation…

项目工作中,管理者如何合理安排任务优先级?

面对各种工作的时候&#xff0c;你是否总是会手忙脚乱&#xff1f; 在项目工作中&#xff0c;管理者每天面对各种工作&#xff1a;需求、沟通还有其他五花八门任务。 管理者应该如何合理安排自己任务的优先级呢&#xff1f; 在安排任务优先级的时候&#xff0c;我最常用方法…

后台部署运维零碎总结

一、场景 为了实现项目部署简化&#xff0c;尽量都由脚本来完成&#xff0c;需要将许多手动处理过程进行脚本化处理。 二、环境 1、VMware 虚拟机 Download VMware Workstation Pro 2、获取CentOs 镜像 3、使用镜像在虚拟机中安装 4、配置网卡信息&#xff0c;重启网络 三…

【算法基础复习1】差分

目录 一、差分简介 一维差分结论 Acwing.797 差分 P4552 [Poetize6] IncDec Sequence - 差分思维玄学题 一、差分简介 规定a数组下标从1开始 a[0]0b数组下标从1开始定义一个数组b&#xff0c;使 对于a数组 其差分数组b为 a是b的前缀和数组 比如 a[2]…

Python实战 | 如何抓取tx短片弹幕并作词云图分析

前言 嗨喽~大家好呀&#xff0c;这里是魔王呐 ❤ ~! 本次目的&#xff1a;采集tx短片弹幕,并且做词云图可视化分析 这个不少漫迷应该都看过吧~ 哪里都好&#xff0c;就是更新太慢了一点&#xff0c;剧情磨蹭了一点&#xff0c;哎 那今天我们就来采集一下它的弹幕吧&#xff…

我把提高开发效率的VSCode插件分享出来了

前言 最近在家办公&#xff0c;写代码发现没有那么流畅&#xff0c;一看是某些插件没有安装&#xff0c;搞得写代码的效率降低&#xff0c;所以这里有些比较实用的插件推荐给大家 开发实用插件 Settings Sync 利用 Settings Sync &#x1f48e;将 VS Code 的设置保存在gith…

MCE | HPV 疫苗要不要打?

HPV 感染很大概率会患宫颈癌&#xff1f;HPV 感染 ≠ 患宫颈癌超过 90&#xff05; 的 HPV 感染者无症状&#xff0c;并无需干预能在 2 年内清除感染。虽然大部分 HPV 感染会自行消退&#xff0c;但所有感染女性都面临 HPV 感染转为慢性&#xff0c;以及癌前病变发展为浸润性宫…

ViewPager2+TabLayout

效果图&#xff1a; MainActivity public class MainActivity extends AppCompatActivity {private TabLayout tabLayout;private ViewPager2 viewPager2;private int activeColor Color.parseColor("#ff678f");private int normalColor Color.parseColor("#…

C++入门教程||C++中的输入输出||C++ 注释

1. cout输出流的使用&#xff1a; cout输出流需要搭配<<输出操作符来使用&#xff0c;如输出语句&#xff1a; 1 cout<<"Hello"; 即会在屏幕上显示字符串Hello。 本质上&#xff0c;是将字符串"Hello"插入到cout对象里&#xff0c;并以cout…

一些RCE的汇总

RCE自增RCE参考[CTFshow-RCE极限大挑战官方wp]RCE-1[过滤.(]RCE-2p[自增-Array]RCE-3[自增-NAN-<105字符]RCE-4[自增-NAN-<84字符]RCE-5[自增-gettext扩展]72位字符68位字符无参数RCE参考[RCE篇之无参数rce]介绍例题一些能用上的函数前两天刚好ctfshow有个RCE极限大挑战&…