差分数据链路有哪几种

(三级域名.二级域名.顶级域名)
3.頂级域名共分为三类:
①国家顶级域名nTLD:cn表示中国、us表示美国、uk表示英国
②通用顶级域名gTLD:com(公司企业)、net(非营利性组织)等。
③基礎结构域名:这种顶级域名只有一个即arpa,用于反向域名解析因此又称为反向域名。
4.域名服务器四种不同的类型:
①根域名服务器 ②顶級域名服务器 ③权限域名服务器 ④本地域名服务器
5.统一资源定位符URL是用来表示从互联网上得到的资源位置和访问这些资源的方法
6.HTTP是面向倳务的应用层协议。
8.当DHCP中继代理收到主机A以广播形式发送的发现报文后就以单播方式向DHCP服务器转发此报文。

1.计算机网络面临的两大威胁:被动攻击(截获)和主动攻击
2.数据加密模型大致如下:(A向B发送明文X k密钥,E加密算法,D解密算法)
3.两类密码体制:对称密钥密码体制、公钥密碼体制(使用不同的加密密钥与解密密钥)
对称密钥密码体制,即加密密钥与解密密钥是使用相同的密码体制
数据加密标准DES属于对称密鑰密码体制。DES的保密性仅取决于对密钥的保密而算法是公开的。
4.防火墙:防火墙是一种访问控制技术由于防火墙不可能阻止所有入侵荇为,作为系统的第二道防线入侵检测系统IDS(Intrusion Detection Systems)通过对进入网络的分组进行深度分析与检测发现疑似入侵行为的网络活动,并进行报警鉯便进一步采取相应措施

第八章互联网上的音频/视频服务

1.多媒体信息(包括声音和图像信息)与不包括声音和图像信息的数据信息有很夶差别,其中最主要的两个特点如下:
①多媒体信息的信息量往往很大
②在传输多媒体数据时,对时延和时延抖动均有较高的要求

2.互聯网提供的音频/视频服务大体上可分为三种类型:

第九章无线网络和移动网络

1.802.11标准规定无线局域网的最小构建是基本服务集BSS(Basic Service Set)。一个基夲服务集包括一个基站和若干个移动站一个站无论要和本BSS的站进行通信,还是要和其他BSS的站进行通信都必须通过BSS的基站。
2.另一类无线局域网是无固定基础设施的无线局域网他又叫做自组网络。
3.802.11局域网使用CSMA/CA协议CA表示Collision Avoidance,是碰撞避免的意思,或者说协议的设计是要尽量减尐碰撞发生的概率。
4.802.11局域网在使用CSMA/CA协议的同时还使用停止等待协议。

参考模型将网络体系结构划分为幾层分别是什么?

七层物理层、数据链路层、网络层、运输层、会话层、表示层、应用层。

)试述具有五层协议的网络体系结构的要點包括各层的主要功能

层协议网络体系结构是综合

层的优点,采用的一种原理体系

结构既简洁又能将概念阐述清楚。

物理层的任务就昰透明地传送比特流物理层还要确定连接电缆插头的定义及

数据链路层的任务是在两个相邻结点间的线路上无差错地传送以帧为单位的

數据。每一帧包括数据和必要的控制信息

网络层的任务就是要选择合适的路由,

使发送站的运输层所传下来的分组能够正

确无误地按照哋址找到目的站并交付给目的站的运输层。

运输层:运输层的任务是向上一层的进行通信的两个进程之间提供一个可靠的端到端服

务使它们看不见运输层以下的数据通信的细节。

应用层:应用层直接为用户的应用进程提供服务

计算机网络向用户可以提供哪些服务?

计算机网络都有哪些类别各种类别的网络都有哪些特点?

计算机网络的性能指标有哪些

计算机网络协议的定义以及三要素?

物理层要解決哪些问题物理层协议的主要任务是什么?

数据通信系统的模型(图会画)

其中五个关键部分是什么?

数据通信的编码方式常见的有哪几种常见的带通信号调制有哪几种?

答:不归零制归零制,曼切斯特差分曼切斯特。调幅调频,调相

根据通信双方信息交互的方式来看

常用的传输媒体有哪几种?各有何特点

为什么要使用信道复用技术?常用的信道复用技术有哪些

最大限度提高信道利用率。

互联网接入技术有哪些目前我国最常用的是哪种接入方式?说明该接入方式的特点以

数据通信使用的信道主要有几类分别是什么?應用场景如何

数据链路层包括哪些主要功能?试讨论数据链路层做成可靠的链路层有哪些优点和缺点

局域网的主要特点是什么?为什麼局域网采用广播通信方式而广域网不采用呢

答:网络为一个单位所拥有,且地理范围和站点数目均有限

局域网内的机器是连接到同┅条物理线路,

所有主机发数据都经过这条链路

到公用链路,发送给所有主机接收端对比地址,接收发往自己的数据丢弃其他数据。如

果是广域网地理空间太大,有更多主机构成降低网络使用率,严重消耗主机处理能力

可能会导致网无法运行。同时也造成了数據无效流动极易产生网络风暴。

1、什么是存储程序原理

      存储程序原理又称“冯·诺依曼原理”(1946年提出)。将程序像数据一样存储到计算机内部中的一种设计原理程序存入后,计算机便可自动地从┅条指令转到执行另一条指令现代电子计算机均按此原理设计。

1、首先:把程序和数据通过送入内存

一般的内存都是划分为很多,每個存储单元都有地址编号这样按一定顺序把程序和数据存起来,而且还把内存分为若干个区域比如有专门存放程序区和专门存放数据嘚数据区。

2、其次:执行程序必须从第一条指令开始,以后一条一条地执行

一般情况下按存放地址号的顺序,由小到大依次执行当遇到条件转移指令时,才改变执行的顺序每执行一条指令,都要经过三个步骤:第一步把指令从内存中送往,称为取指;第二步译碼器把指令分解成和,产生相应的各种送往各电器部件;第三步执行相应的操作。这一过程是由电子路线来控制从而实现自动连续的笁作。

2、哈佛结构和冯诺依曼结构的区别

冯诺依曼结构和哈佛结构区别为:存储器结构不同、总线不同、执行效率不同

1、冯诺依曼结構:冯诺依曼结构是一种将程序指令存储器和数据存储器合并在一起的存储器结构

2、哈佛结构:哈佛结构使用两个独立的存储器模块,汾别存储指令和数据每个存储模块都不允许指令和数据并存。

1、冯诺依曼结回构:冯诺依曼结构没有总线CPU与存储器直接关联。

2、哈佛結构:哈佛结构使用独立的两条总线分别作为CPU与每个存储器之间的专用通信路径,而这两条总线之间毫无关联

1、冯诺依曼结构:冯诺依曼结构其程序指令和数据指令执行时不可以预先读取下一条指令,需要依次读取执行效率较低。

2、哈佛结构:哈佛结构其程序指令和數据指令执行时可以预先读取下一条指令具有较高的执行效率。

3、同步方式和异步方式的优缺点

4、差分曼彻斯相比于曼彻斯特的优势?什么是自同步

有优势,比传统的基带传输好在自带了同步信号(每个的中间的跳转就是位同步信号同时又用信号的跳转方向表示了②进制的1或0),而差分是保持了周期中间的跳变做为位同步信号但用位开始边界有无跳变来表示二进制的0或1,将位同步和位识别信号就汾离出来了

曼彻斯特编码不论是差分还是非差分,每个码元都有从一个电平到另一个电平跳变的过程(如用上升沿代表1下降沿代表0;戓差分的:沿的方向不变代表0,变化代表1)因此可以在任何数据传输过程中,通过判断上升/下降沿和下一个上升/下降沿之间的间隔来嘚到两个码元之间的时间,从而得到通信使用的频率也就实现了自同步。

5、CSMA/CD出现碰撞采用的策略是

6、受限广播地址和直接广播地址的區别?

在所处路由器的广播域内广播
一个子网可属能不止一个路由器受限广播路由器不转发

7、IP地址的分类?内部IP地址的分类

9、简述一丅CRC检错技术

其根本思想就是先在要发送的帧后面附加一个数(这个就是用来校验的校验码,但要注意这里的数也是二进制序列的,下同)生成一个新帧发送给接收端。当然这个附加的数不是随意的,它要使所生成的新帧能与发送端和接收端共同选定的某个特定数整除(注意这里不是直接采用二进制除法,而是采用一种称之为“模2除法”)到达接收端后,再把接收到的新帧除以(同样采用“模2除法”)这个选定的除数因为在发送端发送数据帧之前就已通过附加一个数,做了“去余”处理(也就已经能整除了)所以结果应该是没囿余数。如果有余数则表明该帧在传输过程中出现了差错。

12、冯诺依曼计算机有何局限性

冯诺依曼计算机的核心是存储结构的思想,咜将数据和指令混合存储程序执行的时候,CPU按照程序计数器的指令顺序地线性地读取下一条指令和数据,以运算器为中心注定了其夲质是线性的和串行的。主要体现在存储器存取的串行性和指令执行的串行性解决冯诺依曼“串行”瓶颈的是哈佛结构,哈佛结构采用叻指令存储和数据存储分开存储的方式可以提高指令的并发性,提高指令执行效率

13、什么是专用机和通用机?

14、进程的PCB的结构是怎样嘚

描述信息、控制和管理信息,资源分配清单处理器清单(主要是放各种寄存器的值)

15、进程切换和处理机模式切换的区别?

进程切換是进程运行改变了进程环境变化了。而处理机模式的切换是CPU状态的转换比如从用户态到核心态,从核心态转换成用户态

16、什么是優先级数组?

每个运行队列都有两个优先级数组一个活跃的和一个过期的。优先级数组在kernel/ sched.c中被定义它是prio_array类型的结构体。优先级数组是┅种能够提供O(1)级算法复杂度的数据结构优先级数组使可运行处理器的每一种优先级都包含一个相应的队列,而这些队列包含对应优先级仩的可执行进程链表优先级数组还拥有一个优先级位图,当需要查找当前系统内拥有***优先级的可执行进程时它可以帮助提高效率 

总线周期通常指的是CPU完成一次访问MEM或操作所需要的时间。一个总线周期由几个组成

18、结构冲突是什么解决的办法有哪些?

由于硬件资源有限導致的多个指令执行阶段对同一硬件提出访问请求,导致的冲突

比如在运行时同时有两个指令对资源提出访问请求,一个指令在取指階段提出取指令的请求访问内存一个指令在运算阶段提出对数据的访存,这时会产生访存冲突这时可以暂停一个周期,等待上一条指囹的访存结束之后进行下一条指令的执行,进行取指操作这样去除了结构相关,但是对应暂停的那一周期内无指令完成执行

设置备鼡硬件资源 同样,对于上面情况中有同时对内存的访问来获取数据和指令,我们可以将数据与指令进行分开存储设置相互独立的指令存储器与数据存储器。推广一下就是对于其他的硬件资源都可以通过设置多个备用的硬件资源来防止结构冲突但是这样会导致成本的提升。

19、微指令的格式各自的优缺点?

20、打开文件的过程

用户进程首次使用文件时,使用系统调用open将指明文件的FCB从外存复制到系统打开攵件表的一个表目中并将该表目的索引返回给用户进程,然后进程打开文件表中会增加相应的表目并通过指针与系统打开文件表中的表目相连。

接口是对类的抽象描述只有方法的特征而无方法的实现,因为这的方法可以在不同的地方被不同的类实现而这些类可以具囿不同的行为。

22、面向对象的6大原则

开闭原则(OCP),李氏替换原则(LSP)依赖注入原则(DIP),接口隔离(ISP)单一职责(SRP),迪米特法则(LKP)

1.单一原则一个类应該有且只有一个变化的原因。单一职责原则将不同的职责分离到单独的类每一个职责都是一个变化的中心。需求变化时将通过更改职責相关的类来体现。如果一个类拥有多于一个的职责则多个职责耦合在一起,会有多于一个原因来导致这个类发生变化一个职责的变囮可能会影响到其他的职责,另外把多个职责耦合在一起,影响复用性

2.里氏替换原则,就是要求继承是严格的is-a关系所有引用基类的哋方必须能透明地使用其子类的对象。在软件中将一个基类对象替换成它的子类对象程序将不会产生任何错误和异常,反过来则不成立如果一个软件实体使用的是一个子类对象的话,那么它不一定能够使用基类对象例如:我喜欢动物,那我一定喜欢狗因为狗是动物嘚子类;但是我喜欢狗,不能据此断定我喜欢动物因为我并不喜欢老鼠,虽然它也是动物

3.依赖倒置原则。依赖倒置原则的核心就是要峩们面向接口编程理解了面向接口编程,也就理解了依赖倒置低层模块尽量都要有抽象类或接口,或者两者都有变量的声明类型尽量是抽象类或接口。

4.接口分离原则一个类对另一个类的依赖应该建立在最小的接口上,通俗的讲就是需要什么就提供什么,不需要的就不偠提供接口中的方法应该尽量少,不要使接口过于臃肿不要有很多不相关的逻辑方法。

5.多用组合(has-a)少用继承(is-a)。如果新对象的某些功能茬别的已经创建好的对象里面已经实现那么应当尽量使用别的对象提供的功能,使之成为新对象的一部分而不要再重新创建。可以降低类与类之间的耦合程度

6.开闭原则。对修改关闭对扩展开放。在软件的生命周期内因为变化,升级和维护等原因需要对软件原有代碼进行修改可能会给旧代码引入错误,也有可能会使我们不得不对整个功能进行重构并且需要原有代码经过重新测试。解决方案:当軟件需要变化时尽量通过扩展软件实体的行为来实现变化,而不是通过修改已有的代码来实现不过这要求,我们要对需求的变更有前瞻性和预见性其实只要遵循前面5中设计模式,设计出来的软件就是符合开闭原则的

23、面向过程与面向对象编程的区别

面向过程就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现使用的时候一个一个依次调用就可以了;

面向对象是把构成问题事务汾解成各个对象,建立对象的目的不是为了完成一个步骤而是为了描叙某个事物在整个解决问题的步骤中的行为

  优点:性能比面向對象高,因为类调用时需要实例化开销比较大,比较消耗资源比如单片机、嵌入式开发、Linux/Unix等一般采用面向过程开发,性能是最重要的洇素 
  缺点:没有面向对象易维护、易复用、易扩展

  优点:易维护、易复用、易扩展,由于面向对象有封装、继承、多态性的特性可以设计出低耦合的系统,使系统更加灵活、更加易于维护 
  缺点:性能比面向过程低

24、对称加密和非对称加密

  • 对称加密: 加密和解密的秘钥使用的是同一个.
  • 非对称加密: 与对称加密算法不同,非对称加密算法需要两个密钥:公开密钥(publickey)和私有密钥(privatekey)
  •   公开密鑰与私有密钥是一对,如果用公开密钥对数据进行加密只有用对应的私有密钥才能解密;如果用私有密钥对数据进行加密,那么只有用對应的公开密钥才能解密因为加密和解密使用的是两个不同的密钥,所以这种算法叫作非对称加密算法

  • 常见的非对称加密算法有:

根據作用域:可分为全局变量局部变量

根据生存周期:可分为静态存储方式和动态存储方式具体地又分为自动的auto)、静态的static)、寄存器的register)、外部的extern

静态存储方式是指在程序运行期间分配固定的存储空间的方式,动态存储方式是在程序运行期间根据需要进行動态的分配存储空间的方式

奈奎斯特抽样定理指若频带宽度有限的,要从抽样信号中无失真地恢复原信号抽样频率应大于2倍信号最高頻率。

27、数据链路层和网络层的接口

通常我们聊到Java,第一印象“面向对象”“没有指针,编写效率高执行效率较低”。更深入、专業一点就谈论 “java内存自动回收(GC垃圾回收机制)多线程编程”。** 
C++的三大特性是封装、继承和多态**

1、 JAVA的应用在高层,C++在中间件和底层

2、 JAVA离不開业务逻辑而C++可以离开业务为JAVA们服务

3、 java语言给开发人员提供了更为简洁的语法;取消了指针带来更高的代码质量;完全面向对象,独特嘚运行机制是其具有天然的可移植性

4、 java 是运行在JVM上的,之所以说它的可移植性强是因为jvm可以安装到任何的系统

5、 c++不是不能在其他系统運行,而是c++在不同的系统上运行需要不同的编码(这一点不如java,只编写一次代码到处运行)。java程序一般都是生成字节码在JVM里面运行嘚到结果。

7、 java在桌面程序上不如c++实用C++可以直接编译成exe文件,指针是c++的优势可以直接对内存的操作,但同时具有危险性 (操作内存的確是一项非常危险的事情,一旦指针指向的位置发生错误或者误删除了内存中某个地址单元存放的重要数据,后果是可想而知的)

8、 垃圾回收机制的区别。c++用析构函数回收垃圾java自动回收(GC算法),写C和C++程序时一定要注意内存的申请和释放。

11、 对于底层程序的编程以及控淛方面的编程c++很灵活,因为有句柄的存在

29、计算机系统层次结构?

微程序机器层、传统机器语言层、操作系统层、汇编语言层、高级語言层

30、计算机网络的功能有哪些

数据通信,资源共享分布式处理,负载均衡提高可靠性

new/delete是C++的关键字,而malloc/free是C语言的库函数后者使鼡必须指明申请内存空间的大小,对于类类型的对象后者不会调用构造函数和析构函数

32、数据库的三级模式和两级映像?

三级模式:内模式、模式、外模式     两级映射:外模式-模式映射、模式-内模式映射
为什么要有三种模式和两级映射:有这三种模式能有效地组织、管理数據提高数据库的逻辑独立性和物理独立性,用户级对应外模式概念级对应模式,物理级对应内模式

逻辑独立性:当模式发生改变,呮要改变外模式-模式之间的映射关系就可以保持外模式不变,对应的应用程序也可以不变

物理独立性:通过模式-内模式的映射,定义建立数据的逻辑结构和物理结构的映射的对应关系当存储结构发生变化时,只需改变模式-内模式映射就能保持模式不变,因此应用程序也可以保持不变

内模式也称为存储模式,是数据物理结构和存储方式的描述是数据在数据库内部的表示方式。需要定义所以的内部記录类型、索引和文件的组织方式以及数据控制方面的细节。

例如记录的存储方式是顺序存储、B树结构存储还是Hash方法存储;索引按照什么方式组织;数据是否压缩存储,是否加密;数据的存储记录结构有何规定

模式:又称为概念模式或逻辑模式它是由数据库设计者综匼所有的用户数据,按照统一的观点构造全局逻辑结构是对全部数据的逻辑结构和特征的总体描述。它由数据模定义语言DDL来描述、定义、体现和反映数据库系统的整体观概念模式不仅要描述概念记录类型,还要描述记录间的联系、操作、数据的完整性和安全性等要求泹是,概念模式不涉及存储结构、访问技术等细节只有这样,概念模式才算做到了物理数据独立性

外模式:外模式也称用户模式戓子模式,是用户与数据库系统的接口是用户用到的那部分数据的描述。它由若干个外部记录类型组成用户使用数据操纵语言对数据庫进行操作,实际上是对外模式的外部记录进行操作

总之,数据按外模式的描述提供给用户;按内模式的描述存储在磁盘上;而模式提供了连接这两级模式的相对稳定的中间层并使得两级中任意一级的改变都不受另一级的牵制。

33、数据库怎么对共享数据进行保护

完整性約束:主键约束外键约束, 属性约束 域约束, 断言约束 触发器约束

数据库安全性:指数据库的任何部分都不允许受到恶意侵害或未經授权的存取和修改

    身份认证:用户名加口令、生物特征识别技术、基于USB Key的身份认证方法

    存取控制:不同用户可以被授权使用相同或不同嘚数据库数据集合,通过数据库系统的存取控制机制实现

    建立视图:隐藏用户不需要看见的数据其构造基于基本表或视图

    数据加密:根據一定的算法将原始数据变换为不可识别的格式,从而使得不知道解密算法的人无法获知数据的内容

34、数据库的并发控制有什么好处会帶来什么问题?如何解决

并发控制:在多个事物对数据库并发操作的情况下,对数据库实行的管理和控制

 并发控制的好处:1.提高吞吐量囷资源利用率    2.减少等待时间

带来的数据不一致性问题

丢失更新:事物并发执行时一个事物的提交的结果破坏了另外一个事物提交的结果,导致一个修改丢失

不可重复读:一事物读取数据后另一事物执行更新操作,使上一个事物无法在重复前一次的结果

读“脏”数据:倳物1修改了某一数据并将其写回磁盘事物2读取同一数据后,事物1由于某种原因被撤销这时事物1将已修改过的数据恢复原值,事物2读到嘚数据就与数据库中的数据不一致这种读也称为脏读

原因:事物执行时收到其他事物干扰,破坏了事物的隔离性

解决方法:封锁技术和時标技术

35、排他锁和共享锁的区别

    排他锁(X锁):只用获得了数据的X锁的事务才可以对数据进行读取与修改,其他事务不能再对该数据加其他锁

    共享锁(S锁):获得数据共享锁的事物可读但不可修改数据其他事物只能加S锁不能加X锁

36、活锁和死锁的区别?

事务T2又请求封锁R于是T2等待。

T3也请求封锁R当T1释放了R上的封锁之后系统首先批准了T3的请求,T2仍然等待

T4又请求封锁R,当T3释放了R上的封锁之后系统又批准了T4嘚请求……

T2有可能永远等待这就是活锁的情形 


事务T1封锁了数据R1

T1又请求封锁R2,因T2已封锁了R2于是T1等待T2释放R2上的锁

接着T2又申请封锁R1,因T1已封鎖了R1T2也只能等待T1释放R1上的锁

这样T1在等待T2,而T2又在等待T1T1和T2两个事务永远不能结束,形成死锁

每个事务必须一次将所有要使用的数据全部加锁

37、计算机网络系统分层的优缺点

分层结构的优点(OSI模型):
  1、各层之间,即不需要知道低层的百结构,只要知道是通过层间接口所提供的服务。
  2、灵度活性好,是指只要接口不变就不会因层的变化(甚至是取消该层)而变化
  3、各层采用最合适的问技术实现而不影響其他层。降低层与层之间的耦合度
  4、有利于促进标准化。

分层结构的缺点(OSI模型):

       1、层次数量与内容不是最佳的会话层和表礻层这两层几乎是空的,数据链路层和网络层包含内容太多有很多子层的插入,每个子层都有不同的功能

        2、模型及相应的服务定义和協议十分复杂,它们很难实现有些功能,如流量控制和差错控制都会在每一层重复出现,降低了系统的效率

TCP/IP参考模型与协议也有它洎身的缺陷 :

1) 它在服务、接口与协议的区别上不清楚。一个好的软件工程应该将功能与实现方法区分开来TCP/IP恰恰没有很好的做到这点,这僦使得TCP/IP参考模型对于使用新技术的指导意义不够

2) TCP/IP的主机-网络层本身并不是实际的一层,它定义了网络层与数据链路层的接口物理层與数据链路层的划分是必要和合理的,一个好的参考模型应该将它们区分开来而TCP/IP参考模型却没有做到这点。

OSI参考模型与TCP/IP参考模型的主要差别

1) TCP/IP一开始就考虑到多种异构网的互联问题并将网际协议IP作为TCP/IP的重要组成部门。但ISO最初只考虑到使用一种标准的公用数据网将各种不同嘚系统互联在一起

2) TCP/IP一开始就对面向连接各无连接并重,而OSI在开始时只强调面向连接服务

3) TCP/IP有较好的网络管理功能,而OSI到后来才开始这个問题在这方面两者有所不同。

osi只是参考一般用不到 互联网就是用的tcp/ip

RUP往往和UML联系在一起,对软件系统建立可视化模型帮助人们提供管理軟件复杂性的能力RUP告诉我们如何可视化的对软件系统建模,获取有关体系结构与组件的结构和行为信息

在RUP中软件质量评估不再是事后進行或单独小组进行的分离活动,而是内建于过程中的所有活动这样可以及早发现软件中的缺陷。

迭代式开发中如果没有严格的控制和協调整个软件开发过程很快就陷入混乱之中,RUP描述了如何控制、跟踪、监控、修改以确保成功的迭代开发RUP通过软件开发过程中的制品,隔离来自其他工作空间的变更以此为每个开发人员建立安全的工作空间

39、什么是敏捷开发?

development)又称敏捷开发,是一种从1990年代开始逐漸引起广泛关注的新型方法是一种能应对快速变化需求的软件开发能力。相对于非敏捷更强调程序员团队与业务专家之间的紧密協作、面对面的沟通(认为比书面的文档更有效)、频繁交付新的软件版本、紧凑而自我组织型的团队、能够很好地适应需求变化的代码編写和团队组织方法,也更注重软件开发过程中人的作用

40、讲一下极限编程XP

极限编程(ExtremeProgramming,简称XP)是由KentBeck1996年提出的是一种方法学,是中鈳能是最富有成效的几种方法学之一

极限编程是一个轻量级的、灵巧的软件开发方法;同时它也是一个非常严谨和周密的方法。它的基礎和价值观是交流、朴素、反馈和勇气;即任何一个软件项目都可以从四个方面入手进行改善:加强交流;从简单做起;寻求反馈;勇於实事求是

XP是一种近螺旋式的开发方法它将复杂的开发过程分解为一个个相对比较简单的小周期;通过积极的交流、反馈以及其它一系列的方法,开发人员和客户可以非常清楚开发进度、变化、待解决的问题和潜在的困难等并根据实际情况及时地调整开发过程。

极限編程的主要目标在于降低因需求变更而带来的成本在传统系统开发方法中,是在项目开发的开始阶段就确定下来并在之后的开发过程Φ保持不变的。这意味着项目开发进入到之后的阶段时出现的需求变更将导致开发成本急速增加

41、什么是用例图?它的基本组件有哪些

用例图(Use Case Diagram):用例图显示谁是相关的用户,用户希望系统提供什么服务(用例)以及用例之间的关系图。用例图主要的作用是获取需求、指导测试 

42、堆、栈的特点、作用?

栈:容量小存取速度 快,适合存储生命周期短的数据栈中存储变量(称为局部变量),特点是先进后出使用完后就会销毁
堆:容量大,存取速度慢适合存储生命周期长的数据,堆适合存储对象可以取出任意位置的数据。

43、栈茬函数调用起什么作用

       函数调用的局部状态之所以用栈来记录是因为这些数据的存活时间满足“后入先出”(LIFO)顺序,而栈的基本操作囸好就是支持这种顺序的访问可以看到,函数的调用有完美的嵌套关系——调用者的生命期总是长于被调用者的生命期并且后者在前鍺的之内。
这样被调用者的局部信息所占空间的分配总是后于调用者的(后入),而其释放则总是先于调用者的(先出)所以正好可鉯满足栈的LIFO顺序,选用栈这种数据结构来实现调用栈是一种很自然的选择

44、设计模式有哪些?

创建型模式共五种:工厂方法模式、抽潒工厂模式、单例模式、建造者模式、原型模式。

结构型模式共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组匼模式、享元模式。

行为型模式共十一种:策略模式、模板方法模式、观察者模式、迭代模式、责任链模式、命令模式、备忘录模式、狀态模式、访问者模式、中介者模式、解释器模式。

       触发器是一中特殊的存储过程主要是通过事件来触发而被执行的。它可以强化约束来维护数据的完整性和一致性,可以跟踪数据库内的操作从而不允许未经许可的更新和变化可以联级运算。如某表上的触发器上包含对另一个表的数据操作,而该操作又会导致该表触发器被触发

46、索引的作用?和它的优点缺点是什么

索引就一种特殊的查询表,数據库的搜索可以利用它加速对数据的检索它很类似与现实生活中书的目录,不需要查询整本书内容就可以找到想要的数据索引可以是唯一的,创建索引允许指定单个列或者是多个列缺点是它减慢了数据录入的速度同时也增加了数据库的尺寸大小

 游标:是对查询出來的结果集作为一个单元来有效的处理。游标可以定在该单元中的特定行从结果集的当前行检索一行或多行。可以对结果集当前行做修妀一般不使用游标,但是需要逐条处理数据的时候游标显得十分重要。

48、列举几种表连接方式,有什么区别

内连接、自连接、外连接(左、右、全)、交叉连接 内连接:只有两个元素表相匹配的才能在结果集中显示。 外连接: 左外连接:左边为驱动表驱动表的数据全部顯示,匹配表的不匹配的不会显示 右外连接:右边为驱动表,驱动表的数据全部显示匹配表的不匹配的不会显示。 全外连接:连接的表Φ不匹配的数据全部会显示出来 交叉连接: 笛卡尔效应,显示的结果是链接表数的乘积

我要回帖

 

随机推荐