???????????????????????????????????:

??????

????????????.

????????????????: ???????????????????????????£?

???????????????????в???(???????дstub??mock?????stub)

??????????????????????????(?????mock????????????)

????Q: ????? private ?????

????A: ??????? public ??.

?????????????. ??????? private ?????????????????public??????????????????????????? ??ζ???????????е?????????? ??ò???????????????У? ??????? public ????.

?????????? C++?? ?????????? #define private public.

?????????? g++?? ?????????м??? -fno-access-control.

????Q: ???? private?? ?Щ??????????????????????? ?? static?? sealed?? final?? ???麯????? ??????????????????????鷳?? ?????????

????A: ????e?. ??Щ???????????????????????? ????????????????? ???????????? ???????飬 ???????????? Ч????????.

???????????????????????????????????????? ??????????????????????? ?Щ????????????????????? ????????????й??? ??????????????Ч. ?????????????????? Release ?? Debug ????????? ???????????????濼???. ????????????????????? Debug ????Ч?? ???????????????? Test ????????????? Debug ?????.

????????????????????????????? ??????ò??????????????????????????????? ????????????? ???????????????. ??????? C++ ?е? static ?????? ?????????????? #include?? ???? #define static ???. ????????????? ?????????У? ????????????????. ??????????ο? <<Working Effectively with Legacy Code>>?? <<??e??????>>?е????.

????Q: ???????????"????"??????"Debug"?? ?????Debug???????ì?????

????A: ??. ?????????ò? Debug?? ????????????? ??????????? ??????????????μ?? ?????????????????????????????????????. Debug?????????????壬 ??????????????.  ?ò??????λ????.

????Q: ???????????????????????????д?????????????????? ????????????? ???????????????????????? ??????

????A: ????????: ???????????????? ?????????н???? ????????? ???????????. ????????????????: ???????????????? ???????????????м??е????; ?????????? ????????????. ????????μ?<<Working Effectively with Legacy Code>>

????Q: ??澭????? C++ ?????????????????? ?????? C?? ???????????????????? TDD ? ??????????

????A: ????????? ??????????????????? TDD?? ????????????????????. ?????????????????????? ??????ò??????????滻????????滻???????????. ???????????鷳?? ?????????????ú?????? ?????????????????н????滻. ????????????? ????????????????????????????? ????????????????????????????? ??????? struct?? ?γ???????????. ?????????????????????????? ???????????????.

??????п???????????????????? TDD ???????????? ?????????????????? ????????? ?????????. ???? ??????????????????У? ???????????????????????? TDD ???????????????????????????????? ???????????????????. ?????????????????????????????棬 ????????????滻????Σ? ???????????????? mockcpp ????? ??????????滻.

????Q: ?????? TDD?? ?????????????????? ???????????????????? ?????????в???????????

????A: ??? ???????????????飬 ???????? TDD.  ??? ????????????????????? ???????????.

????TDD?????????????? ??????????????. ??Ч?????????е???????????????? ??????????????????????????????? ????????????Bug??????????????. ??????????????????????????????Bug. ???????????????? ???????????? ???????.

?????????????????μ??????????????????????? ???????д?????????? ????????????????????????? ?????????????μ???????????? ??????????????????????. ?????????????????????????????????? ????????????????????????? ??????????? ????????в???????????£? ????????????????????????????(?????????)????????????(????????????????)?????. ????????????????????????????? ????????????? ????????? ??????????????????? ?????????????2??γ????? ?????????????????????д????????.