近期个人几篇文章介绍了改类语言的文章. 关联文章的地址
1. 结构化程序计划(C/Ada/Basic)
作为最早提出的程序计划方法,其核心是将程序模块化。
2. 面向对象程序计划(Java、C++)
其以“对象”为中央停止分析和计划,使这些对象构成了解决目标问题的基本构件。
程序计划方法 |
特色 |
优点 |
结构化程序计划 |
1. 采用“自顶而下,逐步求精”的计划思惟,即从问题的总体目标开始,层层分解和细化。 2.“独立功能,单出、入口”的模块仅用三种(次序、分支、循环)基本控制结构的编码原则。此结构减少了模块的互相联系使模块可作为插件或积木使用,下降程序的庞杂性,提高了程序的可靠性。 |
相比于非结构化程序有较好的可靠性、易验证性和可修改性;相比于非结构化程序计划方法的计划思绪,模块层次分明,便于分工开发和协调,且程序可读性强 |
面向对象程序计划 |
1. 采用自低向上的方法,先将问题空间分别为一系列对象的集合,再将对象集合停止分类抽象,一些拥有相同属性行为的对象被抽象为一个类,采用继承来建立这些类之间的联系,构成结构层次。(继承性) 2. 采用对象为中央的计划方式,再现了人类认识事物的思维方式和解决问题的任务方式。 3. 以对象为唯一的语义模型,整个软件任务是通过各对象(类)之间互相传递消息的手腕协同完成的。因此,能尽量逼真地模拟客观世界及其事物。 4. 由于对象和类实现了模块化,类继承实现了抽象对象,以及任一对象的内部状态和功能的实现的细节对外都是不可见的,因此很好地实现了信息隐藏。由此建立在类及其继承性基础上的重用能力可应付庞杂的大型的软件开发。(封装性) |
使软件拥有精良的体系结构、便于软件构件化、软件复用和精良的扩展性和维护性,抽象水平弄,因而拥有较高的生产效率。 |
总结:结构化计划方法的计划思惟清晰,易学易用,模块层次分明,便于分工开发和调试,编写出来的程序可读性强;面向对象计划方法拥有自下而上的特性,允许开发者从问题的局部开始,在开发过程当中逐步加深对系统的懂得,其以数据为中央,以类作为表现数据的工具,是分别程序的基本单位。而函数在面向对象计划中成为类的接口。
C++概述
C++是一门混合型的语言,既支持传统的结构化程序计划,又支持面向对象的程序计划。其是在C语言的基础上增加了面向对象程序计划的要素而发展起来的。其创作灵感起源于BCPL语言(C语言的起源之一)和Simula67语言(以面向对象为核心的语言),同时还鉴戒了Algol68。C++标准可分为两部分:C++语言本身和C++标准库。
*模板
模板是根据类型的参数来发生函数和类的机制,有时也称模板为“参数化的类型”。使用模板,可以计划一个对于很多类型数据停止操作的类,而不需要为每一个类型的数据建立一个独自的类。标准模板库STL和微软的活动模板库ATL都基于C++语言扩展。
*标准模板库STL
STL是数据结构和算法的一个框架,是C++标准库实现容器和算法的部分。数据结构包括矢量、列表和映射等,算法包括这些数据结构的查找、复制和排序等。
程序计划
程序计划是指计划、体例、调试程序的方法和过程。
C++语言的历史
斯特劳.施特鲁普: BJARNE STROUSTRUP
C++语言历史 |
发明人或组织 |
与C++的关系 |
1980,C++诞生,始称“带类的C” |
贝尔实验室的斯特劳.施特鲁普博士及其共事 |
在C语言(kEN & DMR)的基础上,从Simula67中引入面向对象的特征,开发出C++ |
1983,正式命名为C++ |
瑞克.格内斯特 |
提出C++作为本语言的名字 |
1989,推出AT&TC++2.0版 |
斯特劳.施特鲁普博士及其共事 |
为C++引进了运算符重载、引用、虚函数等很多特性,使之更加简练 |
1998,宣布C++的国际标准ISO/IEC:98-14882 |
美国国度标准化协会ANSI和国际标准化组织ISO |
对C++停止标准化任务
|
C++语言的特色
1. C++是C语言的超集,因此其能与C语言兼容
2. C++支持面向对象的程序计划
(1) 封装性即将一组数据和这组数据有关的操作集合组装在一起,构成对象。
C++中通过建立类这个数据类型来支持封装性。
(2) 继承性即一个类拥有另一个类的属性和行为。这个类拥有另一个类的全部特征,又拥有自身的独有特性。C++中将其称为派生类(子类),而将其所继承的类称为基类(父类)。
(3) 多态性即不同的对象调用相同名称的函数,并可致使完整不同的行为。
C++中的多态性通过使用函数重载、模板和虚函数等概念来实现。
3. C++模板是对其的一种扩展
C++的优点(相对于C语言)
1. 与C语言兼容,既支持面向对象的程序计划,也支持结构化的程序计划。
2. 修补了C语言中的一些漏洞,供给更好的类型检查和编译时的分析。
3. 生成目标程序质量高,程序执行效率高。
4. 供给了异常处理机制,简化了程序出错处理。利用throw、try和catch关键字,使出错处理程序不必与畸形的代码紧密结合,提高了程序的可靠性与可读性。
5. 函数可以重载。重载允许相同的函数名拥有不同参数表,系统根据参数的个数和类型匹配相应的函数。
6. 供给了模板机制。模板包括类模板和函数模板两种,它们将数据类型作为参数。对于具体数据类型,编译器主动生成模板类或模板函数,它供给了源代码复用的一种手腕。
7. 支持面向对象的程序计划方法,特别适合于中型和大型的软件开发项目。从开发时光、费用到软件的重用性、可扩充性、可维护性和可靠性等方面,C++均拥有很大的优越性。
文章结束给大家分享下程序员的一些笑话语录: 腾讯总舵主马化腾,有人曾经戏称如果在Z国选举总统,马化腾一定当选,因为只要QQ来一个弹窗”投马总,送Q币”即可。