-
-
-
01|TDD演示(1):任务分解法与整体工作流程[防断更微1181191176].md
-
01|TDD演示(1):任务分解法与整体工作流程[防断更微1181191176].mp3
-
01|TDD演示(1):任务分解法与整体工作流程[防断更微1181191176].pdf
-
02|TDD演示(2):识别坏味道与代码重构[防断更微1181191176].md
-
02|TDD演示(2):识别坏味道与代码重构[防断更微1181191176].mp3
-
02|TDD演示(2):识别坏味道与代码重构[防断更微1181191176].pdf
-
03|TDD演示(3):按测试策略重组测试[防断更微1181191176].md
-
03|TDD演示(3):按测试策略重组测试[防断更微1181191176].mp3
-
03|TDD演示(3):按测试策略重组测试[防断更微1181191176].pdf
-
04|TDD演示(4):实现对于列表参数的支持[防断更微1181191176].md
-
04|TDD演示(4):实现对于列表参数的支持[防断更微1181191176].mp3
-
04|TDD演示(4):实现对于列表参数的支持[防断更微1181191176].pdf
-
05|TDD中的测试(1):状态验证为什么是主要的使用方式?[防断更微1181191176].md
-
05|TDD中的测试(1):状态验证为什么是主要的使用方式?[防断更微1181191176].mp3
-
05|TDD中的测试(1):状态验证为什么是主要的使用方式?[防断更微1181191176].pdf
-
06|TDD中的测试(2):行为验证为什么应该尽量避免使用?[防断更微1181191176].md
-
06|TDD中的测试(2):行为验证为什么应该尽量避免使用?[防断更微1181191176].mp3
-
06|TDD中的测试(2):行为验证为什么应该尽量避免使用?[防断更微1181191176].pdf
-
07|TDD中的测试(3):集成测试还是单元测试?[防断更微1181191176].md
-
07|TDD中的测试(3):集成测试还是单元测试?[防断更微1181191176].mp3
-
07|TDD中的测试(3):集成测试还是单元测试?[防断更微1181191176].pdf
-
08|TDD中的驱动(1):驱动的极限是什么?[防断更微1181191176].md
-
08|TDD中的驱动(1):驱动的极限是什么?[防断更微1181191176].mp3
-
08|TDD中的驱动(1):驱动的极限是什么?[防断更微1181191176].pdf
-
09|TDD中的驱动(2):重构发挥了什么作用?[防断更微1181191176].md
-
09|TDD中的驱动(2):重构发挥了什么作用?[防断更微1181191176].mp3
-
09|TDD中的驱动(2):重构发挥了什么作用?[防断更微1181191176].pdf
-
10|TDD中的驱动(3):何为经典学派?何为伦敦学派?[防断更微1181191176].md
-
10|TDD中的驱动(3):何为经典学派?何为伦敦学派?[防断更微1181191176].mp3
-
10|TDD中的驱动(3):何为经典学派?何为伦敦学派?[防断更微1181191176].pdf
-
11|作为工程化方法的TDD:更低的成本与更高的效能[防断更微1181191176].md
-
11|作为工程化方法的TDD:更低的成本与更高的效能[防断更微1181191176].mp3
-
11|作为工程化方法的TDD:更低的成本与更高的效能[防断更微1181191176].pdf
-
12|实战中的TDD:RESTfulAPI的开发框架[防断更微1181191176].md
-
12|实战中的TDD:RESTfulAPI的开发框架[防断更微1181191176].mp3
-
12|实战中的TDD:RESTfulAPI的开发框架[防断更微1181191176].pdf
-
13|DIContainer(1):如何实现基本的DI容器结构?[防断更微1181191176].md
-
13|DIContainer(1):如何实现基本的DI容器结构?[防断更微1181191176].mp3
-
13|DIContainer(1):如何实现基本的DI容器结构?[防断更微1181191176].pdf
-
14|DIContainer(2):如何通过SadPath为容器增加功能?[防断更微1181191176].md
-
14|DIContainer(2):如何通过SadPath为容器增加功能?[防断更微1181191176].mp3
-
14|DIContainer(2):如何通过SadPath为容器增加功能?[防断更微1181191176].pdf
-
15|DIContainer(3):如何重构已有的代码?[防断更微1181191176].md
-
15|DIContainer(3):如何重构已有的代码?[防断更微1181191176].mp3
-
15|DIContainer(3):如何重构已有的代码?[防断更微1181191176].pdf
-
16|DIContainer(4):如何实现对循环依赖的处理?[防断更微1181191176].md
-
16|DIContainer(4):如何实现对循环依赖的处理?[防断更微1181191176].mp3
-
16|DIContainer(4):如何实现对循环依赖的处理?[防断更微1181191176].pdf
-
17|DIContainer(5):API接口该怎么设计?[防断更微1181191176].md
-
17|DIContainer(5):API接口该怎么设计?[防断更微1181191176].mp3
-
17|DIContainer(5):API接口该怎么设计?[防断更微1181191176].pdf
-
18|DIContainer(6):如何实现循环依赖的检查?[防断更微1181191176].md
-
18|DIContainer(6):如何实现循环依赖的检查?[防断更微1181191176].mp3
-
18|DIContainer(6):如何实现循环依赖的检查?[防断更微1181191176].pdf
-
19|DIContainer(7):如何实现FieldInjection部分的功能?[防断更微1181191176].md
-
19|DIContainer(7):如何实现FieldInjection部分的功能?[防断更微1181191176].mp3
-
19|DIContainer(7):如何实现FieldInjection部分的功能?[防断更微1181191176].pdf
-
20|DIContainer(8):如何实现MethodInjection部分的功能?[防断更微1181191176].md
-
20|DIContainer(8):如何实现MethodInjection部分的功能?[防断更微1181191176].mp3
-
20|DIContainer(8):如何实现MethodInjection部分的功能?[防断更微1181191176].pdf
-
21|DIContainer(9):怎样重构测试代码?[防断更微1181191176].md
-
21|DIContainer(9):怎样重构测试代码?[防断更微1181191176].mp3
-
21|DIContainer(9):怎样重构测试代码?[防断更微1181191176].pdf
-
22|DIContainer(10):怎样将大粒度的测试重构为等效的小粒度测试代码?[防断更微1181191176].md
-
22|DIContainer(10):怎样将大粒度的测试重构为等效的小粒度测试代码?[防断更微1181191176].mp3
-
22|DIContainer(10):怎样将大粒度的测试重构为等效的小粒度测试代码?[防断更微1181191176].pdf
-
23|DIContainer(11):如何对ContainerTest进行文档化改造?[防断更微1181191176].md
-
23|DIContainer(11):如何对ContainerTest进行文档化改造?[防断更微1181191176].mp3
-
23|DIContainer(11):如何对ContainerTest进行文档化改造?[防断更微1181191176].pdf
-
24|DIContainer(12):如何增补功能?[防断更微1181191176].md
-
24|DIContainer(12):如何增补功能?[防断更微1181191176].mp3
-
24|DIContainer(12):如何增补功能?[防断更微1181191176].pdf
-
25|DIContainer(13):任务上的遗漏该怎么处理?[防断更微1181191176].md
-
25|DIContainer(13):任务上的遗漏该怎么处理?[防断更微1181191176].mp3
-
25|DIContainer(13):任务上的遗漏该怎么处理?[防断更微1181191176].pdf
-
26|DIContainer(14):如何重构对Type类型判断的逻辑?[防断更微1181191176].md
-
26|DIContainer(14):如何重构对Type类型判断的逻辑?[防断更微1181191176].mp3
-
26|DIContainer(14):如何重构对Type类型判断的逻辑?[防断更微1181191176].pdf
-
27|DIContainer(15):如何封装类型判断逻辑?[防断更微1181191176].md
-
27|DIContainer(15):如何封装类型判断逻辑?[防断更微1181191176].mp3
-
27|DIContainer(15):如何封装类型判断逻辑?[防断更微1181191176].pdf
-
28|DIContainer(16):行为封装会对测试产生什么影响?[防断更微1181191176].md
-
28|DIContainer(16):行为封装会对测试产生什么影响?[防断更微1181191176].mp3
-
28|DIContainer(16):行为封装会对测试产生什么影响?[防断更微1181191176].pdf
-
29|DIContainer(17):如何重构ContextConfig内部的实现?[防断更微1181191176].md
-
29|DIContainer(17):如何重构ContextConfig内部的实现?[防断更微1181191176].mp3
-
29|DIContainer(17):如何重构ContextConfig内部的实现?[防断更微1181191176].pdf
-
30|DIContainer(18):如何增补依赖缺失和循环依赖的测试?[防断更微1181191176].md
-
30|DIContainer(18):如何增补依赖缺失和循环依赖的测试?[防断更微1181191176].mp3
-
30|DIContainer(18):如何增补依赖缺失和循环依赖的测试?[防断更微1181191176].pdf
-
31|DIContainer(19):Qualifier部分的功能要如何完成?[防断更微1181191176].md
-
31|DIContainer(19):Qualifier部分的功能要如何完成?[防断更微1181191176].mp3
-
31|DIContainer(19):Qualifier部分的功能要如何完成?[防断更微1181191176].pdf
-
32|DIContainer(20):如何对代码和测试进行重构?[防断更微1181191176].md
-
32|DIContainer(20):如何对代码和测试进行重构?[防断更微1181191176].mp3
-
32|DIContainer(20):如何对代码和测试进行重构?[防断更微1181191176].pdf
-
33|DIContainer(21):如何处理Singleton生命周期部分的功能?[防断更微1181191176].md
-
33|DIContainer(21):如何处理Singleton生命周期部分的功能?[防断更微1181191176].mp3
-
33|DIContainer(21):如何处理Singleton生命周期部分的功能?[防断更微1181191176].pdf
-
34|DIContainer(22):如何对Bind的逻辑进行重构?[防断更微1181191176].md
-
34|DIContainer(22):如何对Bind的逻辑进行重构?[防断更微1181191176].mp3
-
34|DIContainer(22):如何对Bind的逻辑进行重构?[防断更微1181191176].pdf
-
35|DIContainer(23):项目回顾与总结[防断更微1181191176].md
-
35|DIContainer(23):项目回顾与总结[防断更微1181191176].mp3
-
35|DIContainer(23):项目回顾与总结[防断更微1181191176].pdf
-
36|实战中的TDD:RESTfulWebServices[防断更微1181191176].md
-
36|实战中的TDD:RESTfulWebServices[防断更微1181191176].mp3
-
36|实战中的TDD:RESTfulWebServices[防断更微1181191176].pdf
-
37|RESTfulWebServices(1):明确架构愿景与架构组件间的交互[防断更微1181191176].md
-
37|RESTfulWebServices(1):明确架构愿景与架构组件间的交互[防断更微1181191176].mp3
-
37|RESTfulWebServices(1):明确架构愿景与架构组件间的交互[防断更微1181191176].pdf
-
38|RESTfulWebServices(2):根据Spike的结果,要如何调整架构愿景?[防断更微1181191176].md
-
38|RESTfulWebServices(2):根据Spike的结果,要如何调整架构愿景?[防断更微1181191176].mp3
-
38|RESTfulWebServices(2):根据Spike的结果,要如何调整架构愿景?[防断更微1181191176].pdf
-
39|RESTfulWebServices(3):明确架构愿景与调用栈顺序[防断更微1181191176].md
-
39|RESTfulWebServices(3):明确架构愿景与调用栈顺序[防断更微1181191176].mp3
-
39|RESTfulWebServices(3):明确架构愿景与调用栈顺序[防断更微1181191176].pdf
-
40|RESTfulWebServices(4):在当前架构愿景下,要如何分解任务?[防断更微1181191176].md
-
40|RESTfulWebServices(4):在当前架构愿景下,要如何分解任务?[防断更微1181191176].mp3
-
40|RESTfulWebServices(4):在当前架构愿景下,要如何分解任务?[防断更微1181191176].pdf
-
41|RESTfulWebServices(5):如何通过对数据测试的管理来凸显意图?[防断更微1181191176].md
-
41|RESTfulWebServices(5):如何通过对数据测试的管理来凸显意图?[防断更微1181191176].mp3
-
41|RESTfulWebServices(5):如何通过对数据测试的管理来凸显意图?[防断更微1181191176].pdf
-
42|RESTfulWebServices(6):如何处理JAX-RS定义的异常类?[防断更微1181191176].md
-
42|RESTfulWebServices(6):如何处理JAX-RS定义的异常类?[防断更微1181191176].mp3
-
42|RESTfulWebServices(6):如何处理JAX-RS定义的异常类?[防断更微1181191176].pdf
-
43|RESTfulWebServices(7):剩下两个SadPath场景该如何处理?[防断更微1181191176].md
-
43|RESTfulWebServices(7):剩下两个SadPath场景该如何处理?[防断更微1181191176].mp3
-
43|RESTfulWebServices(7):剩下两个SadPath场景该如何处理?[防断更微1181191176].pdf
-
44|RESTfulWebServices(8):如何在现有代码的基础上构造测试?[防断更微1181191176].md
-
44|RESTfulWebServices(8):如何在现有代码的基础上构造测试?[防断更微1181191176].mp3
-
44|RESTfulWebServices(8):如何在现有代码的基础上构造测试?[防断更微1181191176].pdf
-
45|RESTfulWebServices(9):通过伦敦学派得到的测试风格是什么样的?[防断更微1181191176].md
-
45|RESTfulWebServices(9):通过伦敦学派得到的测试风格是什么样的?[防断更微1181191176].mp3
-
45|RESTfulWebServices(9):通过伦敦学派得到的测试风格是什么样的?[防断更微1181191176].pdf
-
46|RESTfulWebServices(10):伦敦学派与经典学派的测试节奏有何不同?[防断更微1181191176].md
-
46|RESTfulWebServices(10):伦敦学派与经典学派的测试节奏有何不同?[防断更微1181191176].mp3
-
46|RESTfulWebServices(10):伦敦学派与经典学派的测试节奏有何不同?[防断更微1181191176].pdf
-
47|RESTfulWebServices(11):如何通过Spike来验证架构愿景?[防断更微1181191176].md
-
47|RESTfulWebServices(11):如何通过Spike来验证架构愿景?[防断更微1181191176].mp3
-
47|RESTfulWebServices(11):如何通过Spike来验证架构愿景?[防断更微1181191176].pdf
-
48|RESTfulWebServices(12):如何调整接口和架构愿景?[防断更微1181191176].md
-
48|RESTfulWebServices(12):如何调整接口和架构愿景?[防断更微1181191176].mp3
-
48|RESTfulWebServices(12):如何调整接口和架构愿景?[防断更微1181191176].pdf
-
49|RESTfulWebService(13):如何SpikeSub-ResourceLocator?[防断更微1181191176].md
-
49|RESTfulWebService(13):如何SpikeSub-ResourceLocator?[防断更微1181191176].mp3
-
49|RESTfulWebService(13):如何SpikeSub-ResourceLocator?[防断更微1181191176].pdf
-
50|RESTfulWebServices(14):分解任务与Setup测试[防断更微1181191176].md
-
50|RESTfulWebServices(14):分解任务与Setup测试[防断更微1181191176].mp3
-
50|RESTfulWebServices(14):分解任务与Setup测试[防断更微1181191176].pdf
-
51|RESTfulWebServices(15):为什么选择在第一个测试之后就开始重构?[防断更微1181191176].md
-
51|RESTfulWebServices(15):为什么选择在第一个测试之后就开始重构?[防断更微1181191176].mp3
-
51|RESTfulWebServices(15):为什么选择在第一个测试之后就开始重构?[防断更微1181191176].pdf
-
52|RESTfulWebServices(16):重构手法之设计方法名的名称[防断更微1181191176].md
-
52|RESTfulWebServices(16):重构手法之设计方法名的名称[防断更微1181191176].mp3
-
52|RESTfulWebServices(16):重构手法之设计方法名的名称[防断更微1181191176].pdf
-
53|RESTfulWebServices(17):如何进行Spike的架构愿景细化?[防断更微1181191176].md
-
53|RESTfulWebServices(17):如何进行Spike的架构愿景细化?[防断更微1181191176].mp3
-
53|RESTfulWebServices(17):如何进行Spike的架构愿景细化?[防断更微1181191176].pdf
-
54|RESTfulWebServices(18):如何实现UriTemplate的主要功能?[防断更微1181191176].md
-
54|RESTfulWebServices(18):如何实现UriTemplate的主要功能?[防断更微1181191176].mp3
-
54|RESTfulWebServices(18):如何实现UriTemplate的主要功能?[防断更微1181191176].pdf
-
55|RESTfulWebServices(19):如何更有效地构造测试数据?[防断更微1181191176].md
-
55|RESTfulWebServices(19):如何更有效地构造测试数据?[防断更微1181191176].mp3
-
55|RESTfulWebServices(19):如何更有效地构造测试数据?[防断更微1181191176].pdf
-
56|RESTfulWebServices(20):为什么要通过测试的方法来驱动出代码结构?[防断更微1181191176].md
-
56|RESTfulWebServices(20):为什么要通过测试的方法来驱动出代码结构?[防断更微1181191176].mp3
-
56|RESTfulWebServices(20):为什么要通过测试的方法来驱动出代码结构?[防断更微1181191176].pdf
-
57|RESTfulWebServices(21):按照三角法,该如何增加新的测试案例?[防断更微1181191176].md
-
57|RESTfulWebServices(21):按照三角法,该如何增加新的测试案例?[防断更微1181191176].mp3
-
57|RESTfulWebServices(21):按照三角法,该如何增加新的测试案例?[防断更微1181191176].pdf
-
58|RESTfulWebServices(22):重构还是继续完成功能?[防断更微1181191176].md
-
58|RESTfulWebServices(22):重构还是继续完成功能?[防断更微1181191176].mp3
-
58|RESTfulWebServices(22):重构还是继续完成功能?[防断更微1181191176].pdf
-
59|RESTfulWebServices(23):如何构造测试数据?[防断更微1181191176].md
-
59|RESTfulWebServices(23):如何构造测试数据?[防断更微1181191176].mp3
-
59|RESTfulWebServices(23):如何构造测试数据?[防断更微1181191176].pdf
-
60|RESTfulWebServices(24):RootResource的测试要如何改造?[防断更微1181191176].md
-
60|RESTfulWebServices(24):RootResource的测试要如何改造?[防断更微1181191176].mp3
-
60|RESTfulWebServices(24):RootResource的测试要如何改造?[防断更微1181191176].pdf
-
61|RESTfulWebServices(25):如何重构DefaultResourceRouter中的Result结构?[防断更微1181191176].md
-
61|RESTfulWebServices(25):如何重构DefaultResourceRouter中的Result结构?[防断更微1181191176].mp3
-
61|RESTfulWebServices(25):如何重构DefaultResourceRouter中的Result结构?[防断更微1181191176].pdf
-
62|RESTfulWebServices(26):如何继续划分ResourceLocator的任务?[防断更微1181191176].md
-
62|RESTfulWebServices(26):如何继续划分ResourceLocator的任务?[防断更微1181191176].mp3
-
62|RESTfulWebServices(26):如何继续划分ResourceLocator的任务?[防断更微1181191176].pdf
-
63|RESTfulWebServices(27):如何通过重构修改接口?[防断更微1181191176].md
-
63|RESTfulWebServices(27):如何通过重构修改接口?[防断更微1181191176].mp3
-
63|RESTfulWebServices(27):如何通过重构修改接口?[防断更微1181191176].pdf
-
64|RESTfulWebServices(28):如何重构Resource、SubResource等接口与实现?[防断更微1181191176].md
-
64|RESTfulWebServices(28):如何重构Resource、SubResource等接口与实现?[防断更微1181191176].mp3
-
64|RESTfulWebServices(28):如何重构Resource、SubResource等接口与实现?[防断更微1181191176].pdf
-
65|RESTfulWebServices(29):后续任务将要如何划分与实现?[防断更微1181191176].md
-
65|RESTfulWebServices(29):后续任务将要如何划分与实现?[防断更微1181191176].mp3
-
65|RESTfulWebServices(29):后续任务将要如何划分与实现?[防断更微1181191176].pdf
-
66|RESTfulWebServices(30):什么情况下应该使用行为验证?[防断更微1181191176].md
-
66|RESTfulWebServices(30):什么情况下应该使用行为验证?[防断更微1181191176].mp3
-
66|RESTfulWebServices(30):什么情况下应该使用行为验证?[防断更微1181191176].pdf
-
67|RESTfulWebServices(31):对于option的测试策略应该是怎样的?[防断更微1181191176].md
-
67|RESTfulWebServices(31):对于option的测试策略应该是怎样的?[防断更微1181191176].mp3
-
67|RESTfulWebServices(31):对于option的测试策略应该是怎样的?[防断更微1181191176].pdf
-
68|RESTfulWebServices(32):目前代码中的一个重大Bug是什么?[防断更微1181191176].md
-
68|RESTfulWebServices(32):目前代码中的一个重大Bug是什么?[防断更微1181191176].mp3
-
68|RESTfulWebServices(32):目前代码中的一个重大Bug是什么?[防断更微1181191176].pdf
-
69|RESTfulWebServices(33):如何拆分对于injection部分的需求?[防断更微1181191176].md
-
69|RESTfulWebServices(33):如何拆分对于injection部分的需求?[防断更微1181191176].mp3
-
69|RESTfulWebServices(33):如何拆分对于injection部分的需求?[防断更微1181191176].pdf
-
70|RESTfulWebServices(34):在当前代码结构下,要如何进行重构?[防断更微1181191176].md
-
70|RESTfulWebServices(34):在当前代码结构下,要如何进行重构?[防断更微1181191176].mp3
-
70|RESTfulWebServices(34):在当前代码结构下,要如何进行重构?[防断更微1181191176].pdf
-
71|RESTfulWebServices(35):如何将测试改为动态测试?[防断更微1181191176].md
-
71|RESTfulWebServices(35):如何将测试改为动态测试?[防断更微1181191176].mp3
-
71|RESTfulWebServices(35):如何将测试改为动态测试?[防断更微1181191176].pdf
-
72|RESTfulWebServices(36):在现有结构下,如何支持转换构造函数?[防断更微1181191176].md
-
72|RESTfulWebServices(36):在现有结构下,如何支持转换构造函数?[防断更微1181191176].mp3
-
72|RESTfulWebServices(36):在现有结构下,如何支持转换构造函数?[防断更微1181191176].pdf
-
73|RESTfulWebServices(37):再增加converter方法时,步骤有什么不同?[防断更微1181191176].md
-
73|RESTfulWebServices(37):再增加converter方法时,步骤有什么不同?[防断更微1181191176].mp3
-
73|RESTfulWebServices(37):再增加converter方法时,步骤有什么不同?[防断更微1181191176].pdf
-
74|RESTfulWebServices(38):如何提取方法调用部分?[防断更微1181191176].md
-
74|RESTfulWebServices(38):如何提取方法调用部分?[防断更微1181191176].mp3
-
74|RESTfulWebServices(38):如何提取方法调用部分?[防断更微1181191176].pdf
-
75|RESTfulWebServices(39):如何使用继承的方式来复用测试?[防断更微1181191176].md
-
75|RESTfulWebServices(39):如何使用继承的方式来复用测试?[防断更微1181191176].mp3
-
75|RESTfulWebServices(39):如何使用继承的方式来复用测试?[防断更微1181191176].pdf
-
76|RESTfulWebServices(40):如何开展有效的集成测试?[防断更微1181191176].md
-
76|RESTfulWebServices(40):如何开展有效的集成测试?[防断更微1181191176].mp3
-
76|RESTfulWebServices(40):如何开展有效的集成测试?[防断更微1181191176].pdf
-
77|RESTfulWebServices(41):对于资源的访问,我们需要补充哪些相关功能?[防断更微1181191176].md
-
77|RESTfulWebServices(41):对于资源的访问,我们需要补充哪些相关功能?[防断更微1181191176].mp3
-
77|RESTfulWebServices(41):对于资源的访问,我们需要补充哪些相关功能?[防断更微1181191176].pdf
-
78|RESTfulWebServices(42):项目总结与回顾[防断更微1181191176].md
-
78|RESTfulWebServices(42):项目总结与回顾[防断更微1181191176].mp3
-
78|RESTfulWebServices(42):项目总结与回顾[防断更微1181191176].pdf
-
79|线段编辑器:架构思路与任务拆分[防断更微1181191176].md
-
79|线段编辑器:架构思路与任务拆分[防断更微1181191176].mp3
-
79|线段编辑器:架构思路与任务拆分[防断更微1181191176].pdf
-
80|LineEditor(2):如何重构生成与更新锚点控制点的逻辑?[防断更微1181191176].md
-
80|LineEditor(2):如何重构生成与更新锚点控制点的逻辑?[防断更微1181191176].mp3
-
80|LineEditor(2):如何重构生成与更新锚点控制点的逻辑?[防断更微1181191176].pdf
-
81|结束语:掌握TDD的那天,我才成为了可靠高效的职业程序员[防断更微1181191176].md
-
81|结束语:掌握TDD的那天,我才成为了可靠高效的职业程序员[防断更微1181191176].mp3
-
81|结束语:掌握TDD的那天,我才成为了可靠高效的职业程序员[防断更微1181191176].pdf
-
代码评点01|不同语言TDD的节奏有何不同?[防断更微1181191176].md
-
代码评点01|不同语言TDD的节奏有何不同?[防断更微1181191176].mp3
-
代码评点01|不同语言TDD的节奏有何不同?[防断更微1181191176].pdf
-
代码评点02|什么是合适TDD的语言和IDE?[防断更微1181191176].md
-
代码评点02|什么是合适TDD的语言和IDE?[防断更微1181191176].mp3
-
代码评点02|什么是合适TDD的语言和IDE?[防断更微1181191176].pdf
-
开篇词|为什么TDD是当前最具工程效能的研发流程?[防断更微1181191176].md
-
开篇词|为什么TDD是当前最具工程效能的研发流程?[防断更微1181191176].mp3
-
开篇词|为什么TDD是当前最具工程效能的研发流程?[防断更微1181191176].pdf
-
课前必读01|20年前的“老古董”技术,为什么还值得开个课?[防断更微1181191176].md
-
课前必读01|20年前的“老古董”技术,为什么还值得开个课?[防断更微1181191176].mp3
-
课前必读01|20年前的“老古董”技术,为什么还值得开个课?[防断更微1181191176].pdf
-
课前必读02|程序员究竟是搞技术的,还是做工程的?[防断更微1181191176].md
-
课前必读02|程序员究竟是搞技术的,还是做工程的?[防断更微1181191176].mp3
-
课前必读02|程序员究竟是搞技术的,还是做工程的?[防断更微1181191176].pdf
-
期末测试|赴一场100分之约![防断更微1181191176].md
-
期末测试|赴一场100分之约![防断更微1181191176].mp3
-
期末测试|赴一场100分之约![防断更微1181191176].pdf
-
用户故事01|aoe:如果把《重构》这本书拍成电视剧[防断更微1181191176].md
-
用户故事01|aoe:如果把《重构》这本书拍成电视剧[防断更微1181191176].mp3
-
用户故事01|aoe:如果把《重构》这本书拍成电视剧[防断更微1181191176].pdf
-