有几种网络交换方式?各有什么特点?
1.数据交换的三种是:线交换、报文交换和包交换。
2.第一种:电路交换(circuitswitching)。线路建立后,线路释放前,即使站间无数据传输,仍不允许其他站共享整条线路;线路一旦建立,通信双方的所有资源(包括线路资源)都用于本次通信,除了少量的传输延时外,没有其他延时,具有良好的实时性;电路交换设备简单;用户数据的透明传输。第二种:消息交换。没有专用线路,多个用户的数据可以通过存储和排队共享一条线路;提高线路利用率,支持多点传输(一条消息传输给多个用户,一个"地址字段"被添加到消息中,并且中间节点根据地址字段进行复制和转发);中间节点可以转换数据格式,方便接收站的采集;增加了错误检测功能,以避免错误数据的不必要传输。
3.第三种:分组交换。它具有电路交换和报文交换的优点。每个数据包被识别后,在物理线路上采用动态复用技术,同时传输多个数据包。分组交换比电路交换具有更高的电路利用率,比消息交换具有更短的传输延迟,以及更好的交互性。
软件重用的层次可以分为哪几个级别?
软件复用很难分类,因为软件复用技术有很多种,一种复用技术可以包含多种复用形式。例如,一个框架可以包括代码级重用和设计级重用。一种分类方法是根据应用范围将软件复用分为两种:水平复用和垂直复用。
1.水平复用是指软件元素在不同应用领域的复用,如数据结构、分类算法、人机界面组件等。标准函数库是一种典型的原始水平重用机制。
2.垂直复用是指在一类通用性更强的应用领域之间复用软件组件。由于在两个完全不同的应用领域之间实现软件复用的难度很大,潜力很小,垂直复用受到了广泛的关注,成为软件复用技术的真正所在。垂直重用活动主要包括以下步骤:
1)首先进行领域分析。根据应用领域的特点和相似性,预测软件构件的可重用性。
2)然后,开发软件产品。一旦确定了软件构件的复用价值,就可以开发和推广软件构件,使其适应新的类似应用领域。
3)最后,软件部件及其文档可以进入软件部件库,成为后续项目的可重用资源。
软件编程有几种?
软件编程有八种。
分别是Parnas法、SASD法、面向数据结构的软件开发法、问题分析法、面向对象的软件开发法、可视化开发法、ICASE、软件复用和组件连接。
1、Parnas方法:最早的软件开发方法是在1972年提出的。当时软件的可维护性和可靠性存在严重问题,所以Parnas提出的方法就是针对这两个问题。
法:首先使用结构化分析对软件进行需求分析,然后使用结构化设计方法进行总体设计,最后使用结构化编程。
3.面向数据结构的软件开发方法:面向数据结构的软件开发方法分为Jackson法和Warnier法。Warnier方法只考虑输入数据结构,而Jackson方法不仅考虑输入数据结构,还考虑输出数据结构。
4.问题分析法:其基本思想是考虑输入输出数据结构,指导系统的分解,在系统分析的指导下逐步综合。
5.面向对象的软件开发方法:这种方法是自底向上和自顶向下相结合的方法,它以对象建模为基础,不仅考虑输入和输出数据结构,还包括所有对象的数据结构。
6.可视化开发方法:包含600多个函数,极大地方便了图形用户界面的开发。
7.ICASE:ICASE的终极目标:ICASE实现应用软件的自动化开发,即只要开发人员写出软件需求规格说明书,软件开发环境就会自动完成从需求分析开始的所有软件开发工作,自动生成软件及相关文档,供用户直接使用。
8.软件复用和组件连接:可以大大降低软件开发所需的成本和时间,有利于提高软件的可维护性和可靠性。