各种程序设计的范型

过程式程序设计

确定你需要哪些过程;
采用你能找到的最好的算法。

模块程序设计

确定你需要哪些模块;
将程序分为一些模块,使数据隐藏于模块之中。

面向对象程序设计

确定你需要哪些类;
为每一个类提供完整的一组操作;
利用继承去明确地表示共性。

通用型程序设计(范型编程)

确定你需要哪些算法;
将它们参数化,使它们能够对各种各样适当的类型和数据结构工作。

摘自《C++程序设计语言(特别版)》第2章C++概览

时间: 2024-09-27 18:14:21

各种程序设计的范型的相关文章

《JavaScript应用程序设计》一一2.12 范型编程与集合多态

2.12 范型编程与集合多态 范型编程是指在多种数据类型上提供可复用的一套算法与数据结构,这种语言机制的产生缘由在于算法通常能适配多种数据类型.范型编程一般从几种特定的数据类型实现开始入手,随后逐步将之抽象成为能够兼容更多数据类型的通用版本. 范型编程并没有对不同类型的数据做算法差异性处理,相反,被传入的每种数据类型必须实现算法中所约定的功能,这些功能被称为"接口需求". 范型编程具有参数多态性,它是作用于范类型参数上的逻辑分支,相比之下,重载则需要对所有不同类型的参数分别创建一套处理

《设计模式解析(第2版•修订版)》—第1章 1.2节面向对象范型之前:功能分解

1.2 面向对象范型之前:功能分解 设计模式解析(第2版•修订版) 功能分解是一种处理复杂问题的自然方法 让我们从对一种常用的软件开发方法的考察开始吧.如果给你一个任务,要编写一段代码,访问在数据库中存储的形状描述然后显示出来.按照所需要的步骤来思考,是一种很自然的选择.比如,你可能认为应该按照以下步骤解决这个问题. 1.在数据库中找到形状列表. 2.打开形状列表. 3.按某种规则将列表排序. 4.在显示器上显示各个形状. 还可以选取以上任意一个步骤,进一步分解成实现所必需的若干步.例如,可以将

《伟大的计算原理》一计算的范型

计算的范型 1962年之后的30年中,传统自然科学的研究者经常对"计算机科学"这个名字进行质疑.在计算机科学这个新兴领域中,他们可以很轻易地看到工程范型(系统设计与实现)和数学范型(定理证明),但是却很难看到太多的科学范型.此外,与Simon的辩解相反,这些研究者认为科学是一种关于自然世界的方法,而计算机则更像是一种人工制品. 图1.4 两位先驱者John Backus(1924-2007,左图)和Grace Hopper(1902-1992,右图)设计出了高级程序设计语言:通过编译器

.NET 2.0 基础类库中的范型——其他范型类

其他范型类.NET 2.0 基础类库对范型的应用当然并不仅限于范型集合和 Functional Programming.下面所列的范型类也都有其明确的设计目的和用途. Array在.NET 2.0中,Array 类扩充了对范型编程的支持.当然,Array类本身并不是范型类(出于兼容的考虑),而是提供了一系列支持范型的方法.除了前面提到的 Functional Programming 的支持外,Array 类还对以前很多基于 object 的方法提供了对应的范型版本,这样对值类型可以提高查找和排序

Java网络协议 TCP和客户端/服务器范型

服务器|客户端|网络 在网络编程中(同样在其它形式的通讯中,例如数据库编程),使用套接字的应用程序也被分为两类--客户端程序和服务器程序.你可能对"客户端/服务器编程"术语比较熟悉,尽管这个术语的准确意思你不一定清楚.下面的范例就是讨论这个主题. 1. 客户端/服务器范型 客户端/服务器范型把软件分为两类--客户端程序和服务器程序.客户端软件启动一个连接并发送请求,而服务器软件监听连接并处理请求.在UDP编程环境中,没有建立实际的连接,并且UDP应用程序可以在相同的套接字上建立并接收请

.Net Framework 2.0范型的反射使用

在.Net Framework 2.0中引入了范型(Generic)的概念,这可以说是一个重大的改进它的好处我在这里也不用多说,到网上可以找到非常多的说明. 我在这里要和大家说的是怎么通过反射使用范型的技术. 一:首先看看范型的FullName List<string> list = new List<string>(); System.Console.WriteLine(list.GetType().FullName);System.Console.WriteLine(); 这个

基于范型的java函数式编程(一)

编程|函数 注:在您阅读本篇的时候,希望你对Java Generic(范型)能够有所了解和明白. 记:周末在给javaparty讲FP中,很多人似乎对fp并不关心,也认为java中fp的作用不大.其实这是个很大的观念错误,范型的发展,对java的函数式编程支持很大,对Functor的影响也非常大.Functor在算法.逻辑.条件计算.规则引擎等等方面,都会有很大的作为,这个影响可就会深远的多了.-- 估且以此篇的开端,唤醒java开发者对FP in Java的重新认识. 周六给javaparty

c#范型体验1

写了点代码,初次体验到C#范型的魅力 class Program { static void WriteSometing<T>(T x,T y) { if (typeof(T) == typeof(int)) Console.WriteLine(x); if (typeof(T) == typeof(string)) Console.WriteLine(y); } static void Main(string[] args) { WriteSometing<int>(0, 9);

C#2.0中用范型实现单例模式

  #region Using directives using System;using System.Collections.Generic;using System.Text;using System.Reflection; #endregion namespace GenericsSingleton{    /// <summary>    /// 单例范型    /// </summary>    /// <typeparam name="T"&