软件构造
文章平均质量分 82
风一吹你就要走
这个作者很懒,什么都没留下…
展开
-
自学ADT和OOP
Abstract Data Type,抽象数据类型,是指数据结构作为一个软件组件的实现。ADT的接口用一种类型和该类型上的一组操作来定义,每个操作由它的输入和输出定义。ADT并不会指定数据类型如何实现,这些实现细节对于ADT的用户来说是隐藏的,并且通过封装(encapsulation)来阻止外部对他的访问。数据结构(Data Structure)是ADT的实现,在诸如c++之类的面向对象语言中,ADT及其实现组成了类(class)。同ADT联系在一起的每个操作均由一个成员函数(member function原创 2022-06-18 11:58:35 · 150 阅读 · 0 评论 -
MIT6.031 软件构造 Reading7阅读笔记Designing Specifications(设计规范)
Reading 7: Designing Specifications此篇文章研究类了似行为的不同规范,并讨论它们之间的权衡。将探索是什么使某些规范比其他规范更好。从以下三个方面来比较:确定性:当呈现满足前提条件的状态时,结果完全确定。只有一个返回值和一个最终状态是可能的。没有多个有效输出的有效输入。 确定性差不等于不确定性,不确定性必须引入随机化元素。操作规范给出了该方法执行的一系列步骤;伪代码描述是可操作的。 声明式规范没有给出中间步骤的细节。相反,它们只是给出最终结果的属性,以及它与初始状态的关系。为原创 2022-06-18 16:00:00 · 244 阅读 · 0 评论 -
类、API、框架三个层面学习如何设计可复用软件实体的具体技术的学习心得
软件复用的主要思想是,将软件看成是由不同功能部分的“组件”所组成的有机体,每一个组件在设计编写时可以被设计成完成同类工作的通用工具,这样,如果完成各种工作的组件被建立起来以后,编写一特定软件的工作就变成了将各种不同组件组织连接起来的简单问题,这对于软件产品的最终质量和维护工作都有本质性的改变。软件复用就是将已有的软件成分用于构造新的软件系统。可以被复用的软件成分一般称作可复用构件,无论对可复用构件原封不动地使用还是作适当的修改后再使用,只要是用来构造新软件,则都可称作复用。软件复用不仅仅是对程序的复用,它还原创 2022-06-18 11:04:22 · 147 阅读 · 0 评论 -
设计模式解决问题及如何选择设计模式解决问题
一、GRASP是什么以及包含的九个原则 GRASP,通用职责分配软件模式,它由Craig Larman提出。与其将它们称之为设计模式,不如称之为设计原则,因为它是站在面向对象设计的角度,告诉我们怎样设计问题空间中的类与分配它们的行为职责,以及明确了类之间的相互关系等,而不像GoF模式一样是针对特定问题而提出的解决方案。因此GRASP站在一个更高的角度来看待面向对象软件的设计,它是GoF设计模式的基础。GRASP是对象职责分配的基本原则,其核心思想是职责分配,用职责设计对象。它包含如下9个基本特征或原则: 1原创 2022-06-17 17:32:50 · 350 阅读 · 0 评论