<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[gsdks的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/gsdks</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; gsdks]]></copyright><item><title><![CDATA[软构：面向复用的软件构造技术]]></title><link>https://blog.youkuaiyun.com/gsdks/article/details/118559817</link><guid>https://blog.youkuaiyun.com/gsdks/article/details/118559817</guid><author>gsdks</author><pubDate>Wed, 07 Jul 2021 23:16:15 +0800</pubDate><description><![CDATA[面向复用的软件构造技术

目 录



第1节复用模块的层次和形态学模式 

第2节设计可复用类 

第3节设计系统级可复用的API库和框架 





复用模块的层次和形态学模式
复用的层面：代码层面；软件构造过程中的任何实体都可能被复用。
	代码复用的种类：白盒复用：源代码可见，可修改和扩展；黑盒复用：源代码不可见，不能修改；
1.1源代码复用

复制/粘贴 部分/全部 到你的程序中，维护问题。

1.2模块级复用：类/接口

不需要源代码，只需要类文件或jar/zip。可以使用javap工具来...]]></description><category></category></item><item><title><![CDATA[软构：ADT和OOP中的“等价性”]]></title><link>https://blog.youkuaiyun.com/gsdks/article/details/118557979</link><guid>https://blog.youkuaiyun.com/gsdks/article/details/118557979</guid><author>gsdks</author><pubDate>Wed, 07 Jul 2021 21:35:10 +0800</pubDate><description><![CDATA[ADT和OOP中的“等价性”

目 录



第1节等价关系 

第2节不可变类型的等价性 

第3节==和.equals（） 

第4节实现equals() 

第5节对象契约 

第6节可变类的等价关系 

第7节自动封装和等价性 





等价关系
一个等价关系是具有下面这些属性的笛卡尔积：
	


对于像==或 equals()这样的布尔值二进制操作，等价性E是该操作返回true的(x、y)的集合。
	


不可变类型的等价性
利用AF定义等价性：AF映射到同样的结果，则等价，例如...]]></description><category></category></item><item><title><![CDATA[软构：抽象数据类型 (ADT)]]></title><link>https://blog.youkuaiyun.com/gsdks/article/details/118556081</link><guid>https://blog.youkuaiyun.com/gsdks/article/details/118556081</guid><author>gsdks</author><pubDate>Wed, 07 Jul 2021 20:04:13 +0800</pubDate><description><![CDATA[抽象数据类型 (ADT)

目 录



第1节抽象类型和用户定义的类型 

第2节对类型和操作进行分类 

第3节抽象数据类型示例 

第4节抽象类型设计 

第5节Git作为软件配置管理工具的一个示例 

第6节测试抽象数据类型 

第7节不变量 

第8节表示不变性和抽象函数 

第9节有益的可变性 

第10节记录AF、RI、以及表示泄露的安全性 





抽象类型和用户定义的类型
抽象类型：
强调“作用于数据上的操作”，程序员和client无需关心数据如何具体存储的，只需设...]]></description><category></category></item><item><title><![CDATA[软构：设计规约]]></title><link>https://blog.youkuaiyun.com/gsdks/article/details/118552892</link><guid>https://blog.youkuaiyun.com/gsdks/article/details/118552892</guid><author>gsdks</author><pubDate>Wed, 07 Jul 2021 17:22:23 +0800</pubDate><description><![CDATA[设计规约

目 录



第1节编程语言中的函数和方法 

第2节规约：为了沟通的编程 

第3节设计规约 





编程语言中的函数和方法
Method方法：程序的积木，大程序用许多小的方法构建而成，方法可以被单独开发、测试和重复使用，方法的使用者不需要知道它是如何工作的---这叫做 "抽象"





规约：为了沟通的编程
2.1在编程中写文档（Documenting）

（1）类的层次结构和实现的接口的列表。

（2）直接的子类和接口，实现的类

（3）类的描述

（4）构造方法摘要

（5...]]></description><category></category></item><item><title><![CDATA[软构：软件构造过程与配置管理]]></title><link>https://blog.youkuaiyun.com/gsdks/article/details/118548635</link><guid>https://blog.youkuaiyun.com/gsdks/article/details/118548635</guid><author>gsdks</author><pubDate>Wed, 07 Jul 2021 15:54:52 +0800</pubDate><description><![CDATA[软件构造过程与配置管理



目 录



第1节软件开发的生命周期 

第2节传统的软件流程模型 

第3节敏捷开发 

第4节软件配置管理(SCM)和版本控制系统(VCS) 

第5节Git作为软件配置管理工具的一个示例 

第6节软件构建的总体流程 

6.1 编程 

6.2 审核和静态代码分析 

6.3 动态代码分析/分析 

6.4 调试和测试 

6.5 重构 

第7节软件构建的窄义过程（构建） 

第8节总结 





软件开发的生命周期
软件的生命周期（SDLC）：...]]></description><category></category></item><item><title><![CDATA[计算机系统大作业]]></title><link>https://blog.youkuaiyun.com/gsdks/article/details/118271523</link><guid>https://blog.youkuaiyun.com/gsdks/article/details/118271523</guid><author>gsdks</author><pubDate>Sun, 27 Jun 2021 13:52:48 +0800</pubDate><description><![CDATA[计算机系统大作业
题     目  程序人生-Hello’s P2P	
专       业  计算机科学与技术
学　　   号  1190202419
班　　   级  1903005                              　　
指 导 教 师  史先俊
计算机科学与技术学院
2021年6月
摘  要
本文主要讲述了hello.c程序在编写完成后运行在linux中的生命历程，概述了预处理、编译、汇编、链接等各个过程在linux下实现的原理，分析了这些过程中产生的文件的相应信息和作用。并介]]></description><category></category></item></channel></rss>