软件设计及体系结构实验指导书

软件设计及体系结构实验指导书

ID:36571665

大小:401.50 KB

页数:45页

时间:2019-05-12

软件设计及体系结构实验指导书_第1页
软件设计及体系结构实验指导书_第2页
软件设计及体系结构实验指导书_第3页
软件设计及体系结构实验指导书_第4页
软件设计及体系结构实验指导书_第5页
资源描述:

《软件设计及体系结构实验指导书》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、软件设计与体系结构实验指导书目录实验要求:每个实验完成后,提交手写实验报告.内容包括实验内容,所有实现设计的类图、时序图等,实验中所遇到的问题及解决方法,实验收获。实验一经典软件体系结构风格(一)1实验目的1实验内容11.管道-过滤器软件体系结构12.数据抽象和面向对象软件体系结构2思考与提高4实验二经典软件体系结构风格(二)5实验目的5实现内容51.基于事件的隐式调用风格52.层次软件体系结构6实验三分布式软件体系结构风格13实验目的13实验内容13C/S体系结构风格13思考与提高14实验四MVC风格

2、15实验目的15实验内容15MVC的应用和编程实现15实验五软件设计的目标23实验目的23实验内容231.用Java语言实现一个计算器程序232.健壮性233.可维护性——基于面向对象技术的计算器程序244.基于简单工厂模式的计算器程序255.基于工厂方法模式的计算器程序27实验六软件设计——面向对象方法29实验目的29实验内容2943软件设计与体系结构实验指导书目录1.问题域部分的设计——对多重继承的调整292.数据管理部分的设计30实验七设计原则35实验目的35实验内容351.里氏代换原则352.合

3、成/聚合复用原则353.依赖倒转原则364.迪米特法则375.接口隔离原则37实验八设计模式38实验目的38实验内容381.单例模式382.观察者模式3843软件设计与体系结构实验指导书目录实验一经典软件体系结构风格(一)实验目的(1)理解管道-过滤器软件体系结构、面向对象软件体系结构的原理(2)掌握管道-过滤器软件体系结构、面向对象软件体系结构的实例(3)管道-过滤器软件体系结构、面向对象软件体系结构的编程实现实验内容1.管道-过滤器软件体系结构(1)在dos提示符下输入下面的命令:dir

4、more使

5、得当前目录列表在屏幕上逐屏显示。dir的输出的是整个目录列表,它不出现在屏幕上而是由于符号“

6、”的规定,成为下一个命令more的输入,more命令则将其输入一屏一屏地显示,成为命令行的输出。(2)JavaI/O流中的管道流类PipedInputStream和PipedOutputStream可以方便地实现管道-过滤器体系结构,这两个类的实例对象要通过connect方法连接。下面程序的功能是sender发送“Hello,receiver!I`msender”给receiver,然后receiver接受后显

7、示出来并且在前面加上“thefollowingisfromsender”的信息。管道流内部在实现时还有大量的对同步数据的处理,管道输出流和管道输入流执行时不能互相阻塞,以一般要开启独立线程分别执行,顺便复习了多线程操作。importjava.io.*;importjava.util.*;publicclassTestPiped{publicstaticvoidmain(String[]args){senders=newsender();receiverr=newreceiver();PipedOutpu

8、tStreamout=s.getOut();PipedInputStreamin=r.getIn();try{in.connect(out);s.start();r.start();}catch(Exceptione){e.printStackTrace();}}}classsenderextendsThread{PipedOutputStreamout=newPipedOutputStream();publicPipedOutputStreamgetOut(){returnout;}publicvoi

9、drun(){Stringstr="Hello,receiver!I`msender";try{out.write(str.getBytes());out.close();}catch(Exceptione){e.printStackTrace();}43软件设计与体系结构实验指导书目录}}classreceiverextendsThread{PipedInputStreamin=newPipedInputStream();publicPipedInputStreamgetIn(){returnin

10、;}publicvoidrun(){byte[]buf=newbyte[1024];try{intlen=in.read(buf);System.out.println("thefollowingisfromsender:"+newString(buf,0,len));in.close();}catch(Exceptione){e.printStackTrace();}}}程序的执行结果:thefollowingisfromsender

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。