软件体系结构实验二_第1页
软件体系结构实验二_第2页
软件体系结构实验二_第3页
已阅读5页,还剩3页未读, 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、南京邮电大学软件体系结构实验报告实验题目软件体系结构风格之应用姓名XXX学号XXX院系计算机、软件学院指导老师周国强2013年12月18日实验目的和要求实验目的:通过KWIC实例分析,理解和掌握软件体系结构风格设计与实现。实验要求:熟练掌握基于主/子程序体系结构风格的KWIC矢键词索引系统,在此基础上,完成基于面向对象体系架构风格的KWIC尖键词索引系统设计与实现。选做基于管道过滤体系架构风格的KWIC尖键词索引系统;选做基于事件过程调用体系架构风格的KWIC尖键词索引系统。实验课前完成实验报告的实验目的、实验环境、实验内容、实验操 作过程等内容;实验课中独立/团队操作完成实验报告的实验操作、

2、 实验结果及结论等内容;每人一台PC机,所需软件Win2003/XP、UML 工具(EclipseUML/ Rose/Visio/StartUML/ )、 Eclipse/MyEclipse、JDK6.0等。实验课后完成实验报告的心得体会 内容,并及时提交实验报告。二、实验课时:2三、实验内容及操作步骤多种软件风格设计与实现之 KWIC实例:1 采用主/子程序体系结构风格实现KWIC尖键词索引系统public static void in put(Stri ng in putFile)fr= n ull ;tryfr= new (in putFile); catch ( e) / TODOAu

3、to-generated catch block e.printStackTrace();BufferedReader br= new BufferedReader(fr);textLi nes= new ArrayList<Stri ng>();trywhile (br.ready() textLines.add(brreadLine(); catch (lOException e) / TODOAuto-generated catch block e.printStackTrace();public static void circularShift() shiftedLine

4、lndexes= new ArrayList<String>();for (int i=O;i<textLines.size();i+)String orinLine=textLines.get(i);String sarray=orinLine.split("H);for (int j=O;j<sarray.length;j+)String newLine=sarrayj;if (sarrayength>1)if (j=sarrayength-1)for (int k=0;k<(sarrayength-1);k+) newLine=newLine

5、+ H11 +sarrayk;)else for (int k=j+1;k<sarrayength;k+) newLine=newLine+ H H +sarrayk;for (int m=0;m<j;m+) newLine=newLine+ H H +sarraym;)shiftedLi neln dexes.add(newLi ne);public static void alphabetize()Strin g tmpArray =new Str in gshiftedL ineln dexes.size();shiftedLi nel ndexes.toArray(tmpA

6、rray);Arrays.sort(tmpArray);sortedLi nel ndexes=tmpArray;public static void Output(Stri ng outputAddress)fw = n ull ;tryfw = new (outputAddress); catch (lOException e) /TODOAuto-ge nerated catch blocke.pri ntStackTrace();BufferedWriter bw= new BufferedWriter(fw);for (int i=0;i<sortedLinelndexes.l

7、ength;i+)try bw.write(sortedL ineln dexesi);bw.n ewL in e(); catch (lOException e) / TODOAuto-ge nerated catch blocke.pri ntStackTrace();trybw.close(); catch (lOException e) /TODOAuto-ge nerated catch blocke.pri ntStackTrace();2 采用面向对象体系架构风格实现KWIC尖键词索引系统public void shift()ArrayListvStri ng> shift

8、edL ineln dexes=new ArrayListvString>();for (int i=0;i< Is .size();i+)String orinLine= Is .get(i);String sarray=orinLine.split(,H);for (int j=O;j<sarray.length ;j+)String newLine=sarrayj;if (sarray. length >1)if (j=sarray.length -1)for (int k=O;k<(sarray.len gth -1);k+)n ewL ine=n ewL

9、 ine+ H H +sarrayk;else for (int k=j+1 ;k<sarray.len gth ;k+)n ewL ine=n ewL IH,+sarrayk; ine+for (int m=0;m<j;m+)n ewL ine=n ewL ine+H H +sarraym;shiftedL ineln dexes.add( newL in e); Is =shiftedL ineln dexes;(详细代码于附件)四、实验环境(实验设备)Win dows 7Microsoft Office visio 2007五. 实验小结通过本次实验,首先对软件体系结构有了更真切的了解,尤其是对管道过滤器结构,主程序、子程序结构,抽象数据类型结构,隐式调用这四种结构的理解更加透彻了。同时还对KWI

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论