【软件设计师-中级——刷题记录2(纯干货)】


个人昵称:lxw-pro
个人主页:欢迎关注 我的主页
个人感悟: “失败乃成功之母”,这是不变的道理,在失败中总结,在失败中成长,才能成为IT界的一代宗师。


编程的益处:

编程的特点

  • 训练思维
  • 增进认识
  • 带来乐趣
  • 提高效率
  • 带来就业机会

模块的内聚模型:

  • 某模块中各个处理元素都密切相关于同一功能且必须顺序执行,前一处理元素的输出就是下一处理元素的输入,则该模块的内聚类型为顺序内聚

过程内聚:若一个模块内部的处理成分是相关的,而且这些处理必须以特定的次序执行
时间内聚:若一个模块完成的功能必须在同一时间内执行,但这些功能知识因为时间因素关联在一起
顺序内聚:若一个模块的各个成分和同一个功能密切相关,而且一个成分的输出作为另一个成分的输入
逻辑内聚:几个逻辑上相关的功能被放在同一模块中

  • 网络管理员通过命令行方式对路由器进行管理,要确保ID,口令和会话内存的保密性,应采取的访问方式是SSH【利用SSH协议可以有效防止远程管理过程中的信息泄露问题】
  • 面向对象分析过程中,从给定需求描述中选择名词短语来识别对象
  • 采用面向对象方法分析时,首先要在应用领域中按自然存在的实体认定对象,即将自然存在的“名词”作为一个对象
  • 在软件开发过程中,系统测试阶段的测试目标来自于需求分析阶段
  • 包过滤防火墙对网络层的数据报文进行检查
  • 在程序执行过程中,高速缓存(Cache)与主存间的地址映射由硬件自动完成
  • 浏览器开启了无痕浏览模式后,下载文件依然会被保存下来
  • 常见公开密匙加密算法有ECC、DSA、RSA【注:DES(又称公匙数字签名)不是】
  • 在数据库系统中,一般由DBA使用DBMS提供的授权功能为不同用户授权,其主要目的是为了保证数据库的安全性
  • 先采用自底向上的方法求n个矩阵相乘的最优计算顺序,则求解该问题的算法设计策略为:动态规划法
  • 默认情况下,FTP服务器的控制端口为21,数据端口(上传文件时的端口)为20
  • 将高级语言源程序先转化为一种中间代码是现代编译器的常见处理方式。常用的中间代码有后缀式、三地址码、语法树等【中间代码不依赖于具体的机器、使用中间代码可提高编译程序的可移植性、中间代码可以用树或图表示(注:不可以用栈和队列表示)】
  • Flynn分类法基于信息流特征将计算机分为4类,其中MISD只有理论意义而无实例
  • 实现二分查找(折半查找)时,要求查找表顺序存储,关键码有序排列
  • 编译程序对高级语言源程序进行编译的过程中,要不断收集、记录和使用源程序中一些相关符号的类型和特征等信息,并将其存入符号表
  • 在设计某购物中心的收银软件系统时,要求能够支持在不同时期推出打折、返利、满减等不同促销活动,则适合采用策略模式(使用策略模式可以将不同时期的促销活动定义为一个个算法,进行封装,它们彼此可以互相替换,也能独立于使用它们的客户而变化。
  • 属于应用层协议的是简单网络管理协议SNMP,它的传输协议是UDP。ARP和CMP都属于网络层协议,X.25是分组交换网上的协议,也归于网络层

汇编语言:

汇编语言源程序中的指令语句将被翻译成机器代码
汇编程序以汇编语言源程序为输入,以机器语言表示的目标程序为输出
汇编语言的指令语句必须具有操作码字段,可以没有操作数字段

  • 某企业信息系统采用分布式数据库系统。当某一场地故障时,系统可以使用其他场地上的副本而不至于使整个系统瘫痪称为分布式数据库的可用性
  • 在屏蔽软件错误的容错系统中,冗余附加技术的构成有冗余备份程序的存储及调用、实现错误检测和错误恢复的程序、实现容错软件所需的固化程序【不包括关键程序和数据的冗余存储及调用】
  • 进行面向对象系统设计时,在包的依赖关系图中不允许存在环,这属于无环依赖原则

面向对象系统设计中的原则:

单一责任原则:设计目的单一的类
无环依赖原则:在包的依赖关系图中不允许存在环,
依赖倒置原则:要依赖于抽象,而不是具体实现;针对接口编程,不要针对实现编程
里氏替换原则:子类可以替换父类

  • Singleton(单例)设计模式是一种创建型模式,其意图是保证一个类仅有一个实例,并提供一个访问这个唯一实例的全局访问点。
  • 设计操作系统时需要考虑的问题有计算机系统软、硬资源的管理,用户于计算机之间的接口【不需要考虑语言编译器的设计实现
  • 为实现程序指令的顺序执行,CPU程序计数器中的值将自动加1.
  • 耦合度描述了模块之间相互关联的程度。
  • 采用MVC(模型-视图-控制器)体系结构进行软件系统开发的优点有:有利于代码重用、提高系统的开发效率、提高系统的可维护性(没有提高系统的运行效率

主动攻击:重放、IP地址欺骗、拒绝服务
被动攻击:流量分析

几种编程语言的识别:

XML(可扩展标记语言)是标准通用标记语言的子集,是一种用于标记电子文件使其具有结构性的标记语言
Python是一种面向对象、解释型计算机程序语言
Prolog是逻辑型程序设计语言
C++为面向对象的编译型语言,而非解释型语言

  • TCP和UDP均提供了端口寻址功能【UDP是一种不可靠的、无连接的协议,没有连接管理能力,不负责重新发送丢失或出错的数据消息,也没有流量控制的功能。
  • 在ISO/IEC9126软件质量模型中,软件质量功能性特性的质量子特性包括适合性、准确性、互用性、依从性和安全性
  • 在微机系统中,BIOS(基本输入输出系统)保存在主板上的ROW
  • 程序运行过程中,把函数(或过程)调用与响应调用所需要的代码相结合的过程称为动态绑定。静态绑定是指在程序编译过程中,把函数(方法或者过程)调用与响应调用所需的代码结合的过程称之为静态绑定。
  • 相比于TCP,UDP的优势为开销较小
  • 在信息交换中,采用异步传输方式的是CPU与I/O接口交换信息
  • 配置管理是软件开发过程的重要内容,贯穿软件开发的整个过程,其内容包括:软件配置标识、变更管理、版本控制、系统建立、配置审核和配置状态报告【注:风险管理不是
  • 关系规范化在数据库设计的逻辑设计阶段进行
  • 在结构化分析中,用数据流图描述数据在系统中如何被传送或变换,以及如何对数据流进行变换的功能或子功能,用于对功能建模
  • 仓库风格是一种软件体系结构,其中包含一个数据仓库和若干个其他构件。数据库系统、超文本系统和黑板系统都属于仓库风格
  • 联机分析处理OLAP是一种软件技术,它使分析人员能够迅速、一致、交互地从各个方面观察信息,以达到深入理解数据的目的。
  • partial 部分的
  • 因使用大量的对象而造成很大的存储开销时,适合采用享元模式进行对象共享,以减少对象数量从而达到较少的内存占用并提升性能。
  • 增量代发模型将软件产品分解成一系列的增量构件,在增量开发中逐步加入。其优点主要有:能在较短的时间内交付可以使用的部分产品;逐步增加的产品功能可以使用户有充裕的时间学习和适应新产品;优先级最高的功能首先交付,这意味着最重要的功能经过最多的测试。但是要求对要开发的系统进行精心的分析和设计
  • 软件工程的基本安装包括方法、工具和过程
  • 软件项目风险有团队成员离职、团队成员缺乏某方面培训、招不到符合项目技术要求的团队成员【团队成员可以进行良好沟通不属于软件项目风险】
  • 为图形用户界面组件定义不同平台的并行类层次结构,适合采用抽象工厂模式
  • 软件测试是软件开发中不可缺少的活动,通常单元测试编写阶段进行。检查软件的功能是否与用户要求一致是验收测试的任务
  • 设计制作一个多媒体地图导航系统,使其能根据用户需要缩放地图并自动搜索路径,最适合的地图数据应该是矢量化图形。

面向对象设计与分析:

面向对象设计与面向对象分析是面向对象软件过程中两个重要的阶段
面向对象设计应该依赖于面向对象分析的结果
面向对象设计产生的结果在形式上可以与面向对象分析产生的结果类似,例如都可以使用UML

类的静态成员

类的静态方法只能访问该类的静态数据成员
静态数据成员可被该类的所有方法访问
该类的对象共享其静态数据成员的值
【该类的静态数据成员的值并非不可修改】

  • HTML文档中<table>标记的align属性用于定义对齐方式
  • 瀑布开发过程模型最不适用开发需求缺乏准确全面认识的情况
  • 系统可维护性的评价指标包括可理解性、可测试性、可修改性【不包括可移植性】

4-不要让坏情绪过夜

有位朋友跟我说过一句话,让我有种很上头的感受。他说:“事情不会击垮人,但情绪会。”所以从那之后,我会花一些时间去处理自己的情绪,每当坏情绪来的时候,会让自己专注投入的做一件事情,告诉自己“它只是暂时的,他一定会过去。”不断地暗示自己,并且行动起来对抗它,会让我感觉舒服真多。

5-丢掉虚荣心

虚荣心体现在很多方面上,攀比是一种,对自己的不自信也是一种。我是属于第二种的类型,因为对自己不够自信,所以需要其他东西来包裹自己,比如显得自己见多识广等等,当我意识自己的问题后,我就会在想要展示虚荣心的时候提醒自己,“坦诚点,自信点。”杨幂有句话说的很有道理,那就是“极度的坦诚就是无坚不摧”。

6-在社交时,不把自己放在被评价的位置

遇到比自己强的人,也不要太在意,承认对方的优点,并不意味着否定自我。不要把自己放在被评价的位置,也没必要那么在意 别人的看法。


每日一言

我的名字必须闪闪发光,这是我活着的唯一理由


持续更新中…

点赞,你的认可是我创作的动力
收藏,你的青睐是我努力的方向
评论,你的意见是我进步的财富
关注,你的喜欢是我长久的坚持
在这里插入图片描述

欢迎关注微信公众号程序人生6】,一起探讨学习哦!!!

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,很高兴为您解答这个问题。 在深度学习中,数据增强是一种常用的技术,它可以通过对原始数据进行变换、裁剪、旋转、翻转等操作,来扩充训练集,从而提高模型的泛化能力和鲁棒性。在图像领域,常用的数据增强方法包括随机裁剪、随机旋转、随机翻转、色域变换等。下面,我将为您介绍如何使用 Python 对图像进行随机数据增强。 1. 随机裁剪 随机裁剪是一种简单而有效的数据增强方法,它可以通过对原始图像进行随机裁剪,来扩充训练集。在 Python 中,我们可以使用 PIL 库中的 Image 模块来实现随机裁剪。 ```python from PIL import Image import random def random_crop(img, crop_size): w, h = img.size left = random.randint(0, w - crop_size) top = random.randint(0, h - crop_size) right = left + crop_size bottom = top + crop_size return img.crop((left, top, right, bottom)) ``` 2. 随机旋转 随机旋转是一种常用的数据增强方法,它可以通过对原始图像进行随机旋转,来扩充训练集。在 Python 中,我们可以使用 PIL 库中的 Image 模块来实现随机旋转。 ```python from PIL import Image import random def random_rotate(img, angle_range): angle = random.uniform(-angle_range, angle_range) return img.rotate(angle) ``` 3. 随机翻转 随机翻转是一种简单而有效的数据增强方法,它可以通过对原始图像进行随机翻转,来扩充训练集。在 Python 中,我们可以使用 PIL 库中的 Image 模块来实现随机翻转。 ```python from PIL import Image import random def random_flip(img, flip_prob): if random.random() < flip_prob: return img.transpose(Image.FLIP_LEFT_RIGHT) return img ``` 4. 色域变换 色域变换是一种常用的数据增强方法,它可以通过对原始图像进行色彩变换,来扩充训练集。在 Python 中,我们可以使用 PIL 库中的 Image 模块来实现色域变换。 ```python from PIL import Image import random def random_color(img, color_range): r, g, b = img.split() r = r.point(lambda i: i + random.randint(-color_range, color_range)) g = g.point(lambda i: i + random.randint(-color_range, color_range)) b = b.point(lambda i: i + random.randint(-color_range, color_range)) return Image.merge('RGB', (r, g, b)) ``` 以上就是使用 Python 进行随机数据增强的一些常用方法,希望对您有所帮助。如果您有任何问题,请随时联系我。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值