第一章 基础 第一节 软件架构与软件架构师 简单的说软件架构即是为客户构建一个软件系统.架构师随便软件架构应运而生,架构师是一个角色. 2000年9月ANSI和IEEE发布了<密集性软件架构建议章程>Recommended practice for architectural description of software-intensive systems 1. 软件架构的目的 2. 架构师的角色与职责 第二节 成功的设计 成功的软件项目是充分实现了软件的需求,成功的软件设计是指成功的…
C++ Primer Plus 第一章 预备知识 知识点梳理 本章主要讲述了C++的由来,讨论了面向过程语言与面向对象语言的区别,介绍了ANSI/ISO制定的C++标准,阐述了在Windows.Mac.Linux以及Unix上创建.编译C++程序的技巧和方法. 重点知识回顾 C++是为了解决编写大型程序时类似C语言结构化编程的理念无法更好的应对挑战的问题,其引入了面向对象(OOP)的新方法,与C语言强调算法的过程性编程不同,面向对象强调的是数据,其理念是设计与问题的本质特性相对应的数据格式. C…
一 矩阵求导 复杂矩阵问题求导方法:可以从小到大,从scalar到vector再到matrix. x is a column vector, A is a matrix d(A∗x)/dx=A d(xT∗A)/dxT=A d(xT∗A)/dx=AT d(xT∗A∗x)/dx=xT(AT+A) practice: 常用的举证求导公式如下:Y = A * X --> DY/DX = A'Y = X * A --> DY/DX = AY = A' * X * B --> DY/DX = A…