结对编程博客

我们组成员:佘彦廷,周文祥

信息隐藏:指在设计和确定模块时,使得一个模块内包含的特定信息(过程或数据),对于不需要这些信息的其他模块来说,是不可访问的。

  我们组本次作业这一方面体现在封装了第一次作业添加了一部分功能之后的代码,采用c++写底层,c#做界面的方式。c#里调用了c++生成的dll,总共只调用了一个方法,即通过点击运行按钮调用run方法进行计算,对于界面模块来说,计算的内部信息并不需要知道,而且也是不可访问的,界面模块看见的只有模块的入口,在该用的时候能从入口进去寻找,至于具体过程并不知道,得到的只有运行结果。

面向接口编程:一般实现功能的时候,通常是将定义与实现合为一体,不加分离的,这个思想认为最为理想的设计规范应是所有的定义与实现分离。

  以我的理解来看,面向接口编程条理更清晰,虽然要把所有东西都规范起来是一件比较麻烦而且花时间的事,但是一旦统一起来许多规律会更加清晰。同时,一旦有了统一的规范,在实现的时候尽可能的往规范上靠拢对合作编程也会有巨大的帮助。本次作业在各种函数的实现上我们在各自算法上统一了一些规范,在互相读代码的时候顺畅了许多。

  松耦合的基本概念是:允许改变或者当问题发生在“电线的一端时”来避免影响到其他的端点。也就是说,改变或者供应者或者服务的问题不能影响到用户----或者用户的问题不应影响到供应者或者服务。举例来说,如果服务的新版本被推出的话,服务的用户就不必非要去修改,不必非要去改变路线,甚至不必经历停滞期----因为它(服务的新版本被推出)能清楚地向他们显示出来。相对而言,如果服务的一个用户决定改变他们正在使用的供应者(可能有了一个更低价格的服务供选择),这不需要用户应用必须要被重新编码,甚至是中断来做这样的改变。作为提供松耦合的必备基本要素,Web服务管理代理经常使用在用户和供应者之间。

  一旦你理解了松耦合的概念之后,将它带到相反的极端、在任何地方应用它都是很容易的。但是,松耦合有它自身的成本代价,所以它并不是总能被恰当的使用的。最好的方法就是决定什么时候你需要用到松耦合,什么时候你不将松耦合运用到你的应用中。哪些你的应用中的部分总是在一起配置(如果一个部分这样,其他的部分也做同样的----我将这称为“配置单元”)的?将以上的同那些需要被改变,升级的独立部分作比较。举例来说,不同的组别将会代表不同的推出时间表(并且将因此被不同的配置单元来管理)。当你认识到配置单元是为了你的应用时,然后你将会知道何时去使用松耦合(通过配置单元),何时不去使用它(在一个配置单元里面)。

代码的关键是:产生数不完全重复,产生模型较少。一部分空间不好控制的时候只能采取下策开大数组。这里不多说。我主要负责的部分是前端。

契约式设计:契约式设计的提出,主要基于软件可靠性方面的考虑。可靠性包括正确性和健壮性,正确性指软件按照需求规格执行的能力,健壮性指软件对需求规格中未声明状况的处理能力。健壮性主要与异常处理机制相关 。正确性一方面包括对象元素内部运行的正确性,另一个重要方面是与其它对象元素交互时的正确性。

时间: 2024-08-10 03:34:56

结对编程博客的相关文章

软件工程结对编程博客

目录 结对编程博客 1.GitHub项目地址 2.PSP表格 3.看教科书和其它资料中关于Information Hiding, Interface Design, Loose Coupling的章节,说明你们在结对编程中是如何利用这些方法对接口进行设计的 4.计算模块接口的设计与实现过程 Input类 PreProcess类 DFS类 RingDFS类 Core类 Error类 5.画出UML图显示计算模块部分各个实体之间的关系 6.计算模块接口部分的性能改进.?记录在改进计算模块性能上所花费

结对编程博客作业

一.结对编程: 结对编程的优点: 1.在写代码过程中,有人进行实时的“复审”,能够有效减少逻辑错误. 2.测试时,多一个人就多一个思路,可以更好地找到很多边界情况进行测试. 3.能够互相学习,开拓事业. 缺点: 1.两人的时间凑到一起并不容易,很难完全按照结对编程的工作模式进行工作. 2.分工的话必然会造成工作量上的差异,容易引起一些问题. 3.个人的编程习惯可能会有差异,相互适应的过程中会花费掉一定的实践. 我的同伴的优点: 1.性格挺好,易于沟通. 2.认真完成分工. 3.没有什么不良嗜好以

Linux系统编程博客参考

通过看前人的博客更易于把握知识要点 http://www.cnblogs.com/mickole/category/496206.html <Linux系统编程> http://www.cnblogs.com/DayByDay/category/599079.html <UNIX环境高级编程学习笔记> http://blog.csdn.net/bytxl/article/details/8584993 UNIX环境高级编程(第2版)- 第1-10章

结对项目博客

组员:14061216 陈鸿超 1406        程富瑞 一.结对编程分析 照片: 结对编程的优缺点: 优点: 毫无疑问,两个人在一起解决一个问题想法更多.比如这次作业站点坐标的确定,之前一个人的时候,想法是手输或者写个算法自动计算,当然这个算法就会很难,不一定做的出来.而两个人在一起商讨时,他突然找到了一张北京站点的经纬表,看到这个我就想到了找一个站点做为中心点(0,0),再找两个最远站点,这样根据他们三个就可以换算出所有站点的坐标.很准确,而且最重要的是简单多了. 分配好任务之后,每个

结对项目博客-四则运算题目生成程序的改进与分析

照至少一张照片, 展现两人在一起合作编程的情况. 刘乾(193) 玉钟焕(105) 说明结对编程的优点和缺点. 优点 : 可以互相帮助补充个人做的时候不能看到的东西,还有平时不想起来的款式做编程,所以我跟他一起做着得了跟多发展的机会,再回头了我的不够的地方 缺点 : 除了互相调整时间的以外没有那么不方便的 结对的每一个人的优点和缺点在哪里 (要列出至少三个优点和一个缺点). 刘乾 优点 : 非常努力,有很广泛的知识和经验,我跟他学点的东西非常多了 缺点 : 找不到他的缺点 通过截屏显示你是如何用

结对项目——博客记录

结对项目内容:http://www.cnblogs.com/jiel/p/4830912.html 结对成员:康家华,马腾跃(http://www.cnblogs.com/summerMTY) 关于结对编程 “在结对编程模式下,一对程序员肩并肩地.平等地.互补地进行开发工作.两个程序员并排坐在一台电脑前,面对同一个显示器,使用同一个键盘,同一个鼠标一起工作.他们一起分析,一起设计,一起写测试用例,一起编码,一起单元测试,一起集成测试,一起写文档等.”——<构建之法> 通过阅读教科书和网络上的参

结对项目博客——四则运算题目生成程序的改进与分析

一.结对编程 结对成员: 康家华(学号后三位190) 1. 结对编程照片 2. 结对编程的优点 1) 单人编程时,由于每个人的精力有限,无法长时间的高度集中精力实现高质量编程.而在结对编程时,由于两个人的身份可以互换,能够有效地提高效率. 2) 在实现某项功能的时候,如果一个人的算法不够优秀,那么对方能够提出更为简单易行的算法,从而提高代码质量. 3) 如果是单人编程,在设计算法时很有可能会有漏洞,而且如果在设计算法之前没有考虑到一些边界条件的话,测试时也很难发现这些bug.而在结对编程时,两个

结对项目——博客记录(附加题)

结对项目内容:http://www.cnblogs.com/jiel/p/4830912.html 结对成员:康家华,马腾跃(http://www.cnblogs.com/summerMTY) [附加题]第四阶段目标 - 界面模块,测试模块和核心模块的松耦合. 对于这个附加题,我们小队(A)决定和刘乾小队(B)的模块进行交换,于是在拿到对方的代码时,我们立刻就傻眼了. 不是说对方写的很差,相反,B小队的代码有刘乾的保证,质量很高.让我们傻眼的是因为我们的想法不是完全相同的,而我们设计的接口的要求

20172325『Java程序设计』课程 结对编程练习_四则运算第三周阶段总结

20172325『Java程序设计』课程 结对编程练习_四则运算第二周阶段总结 结对伙伴 学号:20172306 姓名:刘辰 结对伙伴博客链接 刘辰同学对编程的积极程度很高,并且在编程能力上很不错,有自己的想法并且能够把这个想法具体的实践出来,只是在编程的过程中和同学交流不够,总是在最后不行了才发现问题,很容易造成前功尽弃,希望在编程过程中多沟通,减少不必要的时间精力的浪费. 小组结对编程照片 项目中自己负责的部分 我负责的是两个部分,分别是: 1.利用栈将中缀表达式转后缀表达式: 2.对后缀表