查看“Software Engineering”的源代码
←
Software Engineering
跳转至:
导航
、
搜索
因为以下原因,你没有权限编辑本页:
您刚才请求的操作只对以下1个用户组开放:
用户
。
您可以查看并复制此页面的源代码:
==设计模式 Design Pattern== 程序是解决客观问题的计算机软件。编程语言本质上是对计算机解决问题能力一个抽象。 编程是用于描述客观事物及其问题的一种工具。编程这种描述的解决过程可以在机器上运行完成。 ===C++ 面向对象编程=== C++之父:[https://en.wikipedia.org/wiki/Bjarne_Stroustrup Bjarne Stroustrup] "No programming language is perfect. Fortunately, a programming language does not have to be perfect to be a good tool for building great systems" ====基本概念==== 对象(object):是一个自包含的实体,用一组可识别的特性和行为来标识。C++以数据成员(data member)表达属性,以成员函数(member function)表达行为。 类(class):是具有相同属性和功能的对象的抽象集合。 对象实例(instance):是真实的对象。实例化就是创建对象的过程,使用new关键字来创建。 构造方法(constructor):又叫构造函数,其实就是对类进行初始化。在new时候调用。 方法重载(overloading):提供了创建同名的多个方法的能力,但这些方法需要使用不同的参数类型。 public:表示它所修饰的类成员可以允许其他任何类来访问,即是公有的。 private:表示只允许同一个类的成员访问,其它类包括它的子类都不能访问,即是私有的。 封装(Encapsulation):每个对象都包含它能进行操作所需要的所有信息,这个特性叫封装,因此对象不必依赖其他对象来完成自己的操作。 对象的继承(inheritance):代表了一种“is-a”的关系。继承者可以理解为是被继承者的特殊化,不仅有被继承者的特性,还有自己独有的个性。继承定义了类如何相互关联,共享特性。 protected:表示继承时,子类可以完全访问基类。用protected修饰的类成员,对子类公开,但不对其他类公开。 virtual:为了让子类的实例完全代替父类的类成员,父类必须把该成员申明为虚拟的。子类使用override关键字,将父类实现替换为它自己的实现,这就是方法重写(override)。 多态(polymorphism):表示不同的对象可以执行相同的动作,但是要通过他们自己的实现代码来执行。 ====Generic Programming 泛型编程==== 模板(Template)指C++编程语言中的函数模板(function template)与类别模板(class template)。 template<class T> 容器(Container):<vector>, <list>, <bitset>, <set>, <map>, <stack>, <queue>, <dequeue>. 迭代器(iterator):<iterator> 算法(Algorithm):<algorithm>, <cstdlib> ===C++ 标准库=== C语言的标准库 <X.h>,定义在std名字空间中<X>. 标准模版库(Standard Template Library, STL) ===Boost C++ 库(Libraries)=== Boost是一组扩充C++功能的经过同行评审(Peer-reviewed)且开放源代码程序库。许多Boost的开发人员是来自C++标准委员会,而部分的Boost库成为C++的TR1标准之一。 ==敏捷编程 Agile Programming== ==代码管理 == ===Make === 自动化编译链接管理工具。 * CMake CMake是"cross platform make"的缩写,是个开源的跨平台编译链接管理工具。 它用配置文件控制建构过程(build process)的方式和Unix的Make相似。CMake的配置文件取名为CMakeLists.txt。 ===Git === 协同开发代码管理工具。 [[Gitlab系统的安装配置]] [[Gitlab的使用和操作]] ===CI === 自动化连续集成和测试。 ===单元测试=== Unit Test
返回
Software Engineering
。
导航菜单
个人工具
创建账户
登录
名字空间
页面
讨论
变种
查看
阅读
查看源代码
查看历史
操作
搜索
导航
首页
实践教学
个性化3D设计与实现
人工智能实践教学
区块链技术及应用
虚拟现实技术与内容制作
超越学科界限的认知基础课程
电子工艺实习
Nand2Tetris Engine Curriculum
TULLL Creative Learning Group
Wiki上手说明
Wiki账户创建
最近更改
工具
链入页面
相关更改
特殊页面
页面信息