
程序员修炼之道 (第2版) (11) 更多
-
第9章 务实的项目
提示 86 组织全功能的团队 《人月神话》中提到的软件的概念完整性,以及外科手术式团队。 软件开发过程:端到端的功能演化 围绕功能(而非职能)组织团队。前端(客户端)、后端(服务端)、UI/UX 设计、数据建模... -
第8章 项目需求管理
这章名为「项目启动之前」,主要讲需求采集与分析中的原则和方法,也包括一些推进项目的方法流程、结对编程实践、敏捷的本质等。 ---------- 需求,可能一开始并不存在,它是用户和开发者交流的产物,是在反馈循... -
第6章 并发
并发性:两个或多个代码的执行过程表现得像是在同时运行一样。需要一个软件环境,能切换执行过程,如 fiber 纤程、线程、进程。 并行性:两个或多个代码的确是在同一时刻一起运行。需要并行处理器,如 多核心 CPU... -
要点记录:程序员技能训练
前言中简述了优秀程序员的基本素质和工作方法。 [提示1] 关注你的技艺 这里提的程序员技能是广义的,包括开发阶段(需求分析、设计、编码、测试、部署与维护)、产品与项目管理(产品质量控制、开发过程管理)、... -
要点记录:资源平衡
-
要点记录:变换式编程
-
要点记录:契约式设计
第23条 契约式设计 第24条 死掉的程序不会说谎 第25条 断言式编程 参考之前关于 C++ 程序设计的总结 我对 OOD 中封装性和抽象的思考 防御式编程 defensive programming 和 契约式编程(或契约式设计)contract p... -
要点记录:设计原则、过程方法
第10条 正交性 正交 orthogonal 这个词源自数学,工程设计上指模块、组件之间的独立性或解耦性。 正交性,也是这些模块设计原则的另一种表述:单一职责、接口隔离与依赖倒置(实现依赖于接口)、可替换、易单元测... -
要点记录:设计模式
第29条 在现实世界中抛球杂耍 交互式应用常用的解耦设计模式: 1. FSM 有限状态机 2. observer 观察者模式 3. pub-sub 发布-订阅 模式,例如 C# 的 event-delegate、Qt 的 signal-slot 4. reactive programming ... -
要点记录:编程语言、开发工具
第14条 领域语言 DSL (Domain-specific Language) 领域特定语言 1. 内部 DSL:借助元编程或宏,在已有语言上构建一套针对特定事务的语法、语义集合。能够借助宿主语言的特性,但也受宿主语言的限制。 2. 外部 DSL... -
要点记录:测试、命名

More Effective C++ (3)
-
第8条 了解各种不同意义的 new 和 delete
-
第30条 proxy class 代理类
其它关于 proxy class 代理类的资料: 《More Exceptional C++》第32条 函数指针类型的递归声明 。在如何构造一个返回指向自身类型地址的函数指针类型问题上,演示了代理类的隐式转换中间层的作用。 ---------- p... -
第26条 限制某个 class 所能产生的对象数量
单例模式 (Singleton) 是这个主题的一个特例,即限定只能产生一个对象。 在讲到用局部静态对象实现单例模式时(该实现手法通常称为 Meyers Singleton),即: Printter& thePrinter() { static Printer p; re...

C++编程规范 (4)
-
如何阅读《C++ 编程规范》
本书是一本关于 C++ 最佳实践与 C++ 程序设计风格的指南。这本书涵盖了以往关于 C++98/03 的最佳实践类书籍所涉及的大部分要点,例如 Effective C++ 系列和 Exceptional C++ 系列,但是厚度却很薄。 然而,由于本... -
第68条 使用断言检查假设条件
使用断言 assert 检查在程序逻辑中被认为是理所应当满足的假设条件 assumption,包括前置条件 pre-condition、后置条件 post-condition 和不变式 invariants。注意,断言检查的性质不同于错误检查所用的条件分支... -
我对 OOD 中封装和抽象的思考
前言 这篇文章原来写在《C++ 编程规范》的书评里,因为豆瓣书评的文本格式化要比笔记丰富,但其实本文目的还是自用参考和总结,当时考虑文章段落较多、又多引文,就写在了书评里。现在把这篇文章移到笔记里,是因... -
第41条 将数据成员设为私有的,无行为的聚合(C 语言形式的 struct)除外
本条款讨论的是 C++ 类设计的封装、抽象 和 聚合类。 在设计组件可配置和非侵入的容器类时(就是 STL 容器的风格),决策哪些结构该隐藏,哪些该暴露时,本条款的叙述很好地启示了我,因此在这里摘录要点。 -----...

More Exceptional C++(中文版) (1)
-
第32条 函数指针类型的递归声明
其它关于 proxy class 代理类的资料: 《More Effective C++》第30条 proxy class 代理类 ,系统地讲述了代理类的用途和一些限制。 ---------- 我们需要定义一个函数指针类型,它接收什么参数先无所谓,但是它返...