ydddg 发表于 2019-12-6 17:26:34

电子书:《EffectiveDebugging:软件和系统调试的66个有效方法》_爱飞翔译_2017-06-01

503
                       



内容简介:

口第48条所提出的大部分重构,都源自 Martin Fowler所写的( Refactoring》(重
构)一书( Addison- Wesley,1999)
口第60条的写作动力,来自《 Real-World Concurrency》这篇文章( Bryan Cantrill
and Jeff Bonwick, ACM Queue, October 2008
口第66条中的Java代码是根据 Tagir Valeey的意见写成的
雅典经贸大学( Athens University of Economics and Business)的诸位同事,在我的
学术生涯中提供了多方面的慷慨帮助,并且(有时是在无形之中)促成了本书的写作
他们包括: Damianos Chatziantoniou、 Georgios Doukidis、 Konstantine gatsios、 George
Giaglis、 Emmanouil Giakoumakis、 Dimitris gritzalis、 George Lckakos、 Panagiotis
Siomkos、 Spyros Spyrou及 Christos Tarantilis
调试是一种技艺,要在实践中才能学成,因此,我要感谢过去40年来所遇到的诸
位同事,感谢他们在我所写的代码中发现bug、给我提供有效的问题报告、对我的代码
做出评审及测试,并且教我怎样避免问题、追查问题及修复问题。下面大致按照从近到
远的顺序列出我在职场与学术界所遇到的同事
口在 Google的 Ads sre fe团队工作时的同事: Mark Bean、 Carl Crous、 Alexandru
Nicolae Dimitri、 Fede heinz、 Lex holt、 Thomas hunger、 Thomas Koeppe、 Jonathan
Lange、 David Leadbeater、 安thony Lenton、 Syen marnach、 Lino mastrodomenico
Trevor Mattson- Hamilton, Philip Mulcahy, Wolfram Pfeiffer, Martin Stjernholm
Stuart Taylor、 Stephen Thorne、 Steven Thurgood及 Nicola Worthington
口CQs的同事: Theodoros Evgeniou、 Vaggelis Kapartzianis及 Nick Nassuphis
口当前或者曾经在雅典经贸大学管理科学与技术系进行研究和实验的诸位同
4: Achilleas 安agnostopoulos, Stefanos 安droutsellis-Theotokis, Konstantinos
Chorianopoulos、 Marios Fragkoulis、 Vaggelis Giannikas、 Georgi
Dimitris Mitropoulos, Christos Oikonomou, Tushar Sharma
Konstantinos Stroggylos、 aso tangalaki、 Stavros Trihias、 Vasileios vlachos及
Giorgos Zouganelis.
口担任希腊财政部的信息系统秘书长时的诸位同事: Costas balaton、 Leonidas
Bogiatzis Paraskevi Chatzimitakou Christos Coborozos, Yannis Dimas

XII
Dimitris Dimitriadis, Areti Drakaki, Nikolaos Drosos, Krystallia Drystella
安na Hondroudaki, Yannis loannidis, Christos KK Loverdos, Ifigeneia
Kalampokidou, Nikos Kalatzis, Lazaros Kaplanoglou, Aggelos Karvounis
Sofia katri、 Xristos Kazis、 Dionysis Kefallinos、 Isaac Kokkinidis、 Georgios
Kotsakis, Giorgos Koundourakis, Panagiotis Kranidiotis, Yannis Kyriakopoulos
Odyseas Kyriakopoylos, Georgios Laskaridis, Panagiotis Lazaridis, Nana Leisou
Mavridou, Sofia Mavropoulou, Michail Michalopoulos, Pantelis Nasikas
Thodoros Pagtzis, 安geliki Panayiotaki, Christos Papadoulis, Vasilis Papafoti
is Perakis、 Kanto petri、 安dreas Pipi、 Nicos Psarrakis、 Marianthi F
Odyseas Pyrovolakis, Tasos Sagris, Apostolos Schizas, Sophie Schperides
Marinos Sigalas、 George Stamoulis、 安tonis Strikes、 安dreas Svolos、 Charis
Theocharis、 Adriano Rigas、 Dimitris Tsakiris、 Niki Tsouma、 Maria tzafalia
Vasiliki tzovla、 Dimitris vafiadis、 Achilleas vemos、 ioannis vlachos、 Giannis
Zervas k Thanasis Zervopoulos
口在 FreeBSD项目工作时的同事: John Baldwin、 Wilko Bulte、 Martin Cracauser
Pawel Jakub Dawidek、 Ceri Davies、 Brooks davis、 Ruslan ermilov、 Bruce
Evans、 Brian Fundakowski Feldman、 Pedro Giffoni、John- Mark Gurney、Carl
Johan Gustavsson、 Konrad jankowski、Poul- Henning Kamp、 Kris Kennaway、
Gi
Keramidas、 Boris kovalenko、MaxL
Leffler、 Alexander Leidinger、 Xin Li、 Scott Long
Warner losh、 Bruce
AMah、 David Malone, Mark Murray、 Simon l. Nielsen、 David o' Brien
n percival
Larry Rosenman、 Jens Schweikhardt、 Ken smith
Dag- Erling Smorgrav、 Murray Stokely、 Marius Strobl、 Ivan varas、 Robert
Watson、 Peter We
及 Garrett Wollman
口 LH Software及SENA的同事: Katerina Aravantinou、 Michalis belivanakis、 Polina
Biraki, Dimitris Charamidopoulos, Lili Charamidopoulou, 安gelos Charitsi
Giorgos Chatzimichalis, Nikos Christopoulos. Christina Dara, Dejan Dimitrije


Fania Dorkofyki、 Nikos doukas、 Lefteris Gcorgalas、 Sotiris gerodianos、 Vasilis
Giannakos, Christos Gkologiannis, 安thi Kalyvioti, Ersi Karanasou, 安tonis Konomos
Isidoros Rouvelas、 George Kyriazis、 Marina Liapati、 Spyros Livieratos、 Sofia
Livieratou、 Panagiotis Louridas、 Mairi mandali、 安dreas massouras、 Michal
Mastorantonakis、 Natalia Miliou、 Spyros Molfetas、 Katerina Moutogianni、 Dimitri
Nellas, Giannis Ntontos, Christos Oikonomou, Nikos Panousis, Vasilis Papariz
asos Papas、 Alexandros Pappas、 Kantia printezi、 Marios salters、 Argyro Stamati
Takis Theofanopoulos、 Dimitris tolis、 Froso Topal、 Takis Tragakis、 Savvas
Triantafyllou、 Periklis Tsahageas、 Nikos Tsagkaris、 Apostolis Tsigkros、 Giorgos
Tzamalis 2 Giannis vlachogianniso
口欧洲计算机产业研究中心( European Computer Industry Research Center,ECRC)
的同事: Mireille Ducasse、安na- Maria erode、 Alexander herold、 Paul martin及
口伦敦帝guo学院( Imperial College London)计算机科学系的同事: Vasilis Capoyleas
Eisenbach, Filippos Frangulis 安astasios Hadjicocolis, Paul Kelly, Stephen J. Lacey
Phil male、LeeM. J. Mcloughlin、 Stuart McRobert、 Mixalis melachrinidis、Jar
Simon Pendry、 Mark Taylor、 Periklis Tsahagcas及 Duncan White
口加州大学伯克利分校计算机科学研究组( Computer Science Research Group
CSRG)的同事: Keith Bostic
口 Pouliadis& Associates公司的同事; Alexis 安astasiou、 Constantine Dokolas、Noel
Koutlis、 Dimitrios Krassopoulos、 George Kyriazis、 Giannis Marais及 Athanasios
口在各种会议及各种场合认识的诸位朋友: Yiorgos Adamopoulos、 Dimitris andreadis
Yannis Corovesis, Alexander Couloumbis, John Ioannidis, Dimitrios Kalogeras
Panagiotis Kanavos、 Theodoros Karounos、 Faidon Liampotis、 Elias Papavassilopoulos、
Vassilis Prevelakis、 Stelios sartzetakis、 Achilles voliotis及 Alexios gavras。
最后感谢家人多年来对我的支持,以及在我撰写本书时所给予的鼓励,有时我要
在家里调试系统,甚至放弃度假和周末休息时间而去写稿。尤其感谢 Dionysis帮我绘制
图52,并感谢 Eliza和 Eleana帮我选定本书的封面

目录
译者序
第1章宏观策略
第1条:通过事务追踪系统处理所有的问题
第2条:在网上确切地查询你所遇到的问题,以寻求解决问题的灵感
第3条:确保前置条件与后置条件都能够得到满足
第4条:从具体问题入手向上追查bug,或从高.层程序入手向下追查bug
第5条:在能够正常运作的系统与发生故障的系统之间寻找差别
第6条:使用软件自身的调试机制
第7条:试着用多种工具构建软件,并将其放在不同的环境下执行
第8条:把工作焦点放在最为重要的问题上
第2章通用的方法与做法
第9条:相信自己能够把问题调试好
第10条:高效地重现程序中的问题
第11条:修改完代码之后,要能够尽快看到结果
620
第12条:将复杂的测试场景自动化
第13条:使自己尽可能多地观察到与调试有关的数据
第14条:考虑对软件进行更新

第15条:查看第三方组件的源代码,以了解其用法
第16条:使用专门的监测及测试设备
第17条:使故障更加突出
第8条:从自己的桌面计算机上调试那些不太好用的系统
第19条:使调试任务自动化
第20条:开始调试之前与调试完毕之后都要把程序清理干净
第21条:把属于同一个类型的所有问题全都修复好
第3章通用的工具与技术
第22条:用Unix命令行工具对调试数据进行分析
第23条:掌握命令行工具的各种选项及习惯用法
第24条:用编辑器对调试程序时所需的数据进行浏览
99579
第25条:优化工作环境
第26条:用版本控制系统寻找bug发生的原因及经过
第27条:用工具监测由多个独立程序所构成的系统
第4章调试器的使用技I
第28条:编译代码时把符号信息包含进来,以便于调试
第29条:对代码进行单步调试
第30条:设置代码断点和数据断点
第31条:了解反向调试功能
第32条:查看例程之间的相互调用情况
第33条:查看变量及表达式的值,以寻找程序中的错误
第34条:了解怎样把调试器连接到正在运行的_进.程_上
第35条:了解怎样
第36条:把调试工具设置好
第37条:学会查看汇编代码及原始_内.存_
第5章编程技术
第38条:对可疑的代码进行评审,并手工演练这些代码…


#############################################


蝶舞櫻婲落 发表于 2019-12-21 20:06:32



免费下载地址:

http://pan.qqq0.com/file/488067-425768319

页: [1]
查看完整版本: 电子书:《EffectiveDebugging:软件和系统调试的66个有效方法》_爱飞翔译_2017-06-01