第1章 引言:成为大师 1
成为大师的含义 2
本书适合的读者 3
如何阅读本书 3
你应该已经知道的内容 4
本书涵盖的内容 4
本书没有涵盖的内容 5
第2章 高级正则表达式 7
引用正则表达式 7
非捕获分组,(?:PATTERN) 13
易读的正则式,/x和(?#...) 14
全局匹配 15
前后查找 19
解读正则表达式 25
最后的思考 28
总结 29
深入阅读 29
第3章 安全编程技术 31
不好的数据会浪费你的一整天 31
污点检测 32
去除数据的污点 38
system和exec命令的列表形式 42
总结 44
深入阅读 44
第4章 调试Perl程序 47
避免浪费太多的时间 47
世界上最好的调试器 48
perl5db.pl 59
备选的调试器 60
其他的调试器 64
总结 66
深入阅读 66
第5章 剖析Perl程序 69
找到罪魁祸首 69
通用的方法 73
Profiling DBI 74
Devel::DProf 83
实现自己的剖析程序 85
剖析测试套件 86
总结 88
深入阅读 88
第6章 Perl基准测试 91
基准测试理论 91
测量时间 93
比较代码 96
不要放弃思考 97
内存使用 102
perlbench工具 107
总结 109
深入阅读 110
第7章 清理Perl程序 111
好的风格 111
perltidy 112
去除扰乱 114
Perl::Critic 118
总结 123
深入阅读 123
第8章 符号表和typeglob 125
软件包变量和词法变量 125
符号表 128
总结 136
深入阅读 136
第9章 动态子程序 137
把子程序作为数据使用 137
创建和替换具名子程序 141
符号引用 143
遍历子程序列表 145
处理流水线 147
方法列表 147
把子程序作为参数使用 148
自动加载的方法 152
作为对象使用的哈希表 154
自动切分 154
总结 155
深入阅读 155
第10章 修改模块和临时调整模块 157
选择正确的解决办法 157
替换模块的部分内容 160
派生子类 162
对子程序进行封装 167
总结 169
深入阅读 170
第11章 配置Perl程序 171
不要做的事情 171
更好的方法 174
命令行开关 177
配置文件 183
有不同名字的脚本程序 187
交互和非交互程序 188
perl的Config模块 189
总结 191
深入阅读 191
第12章 检查和汇报错误 193
Perl错误处理的基础知识 193
汇报模块的错误 199
异常 202
总结 209
深入阅读 209
第13章 日志 211
记录错误和其他信息 211
Log4perl 212
总结 218
深入阅读 218
第14章 数据持久化 219
扁平结构的文件 219
Storable 228
DBM文件 232
总结 234
深入阅读 234
第15章 使用Pod 237
Pod格式 237
转换Pod 238
测试Pod 245
总结 248
深入阅读 249
第16章 位操作 251
二进制数 251
位操作 253
位向量 260
函数vec 261
记录事情 266
总结 268
深入阅读 268
第17章 奇妙的绑定变量 269
似是而非 269
在用户层面 270
拉开帷幕 271
标量 272
数组 277
哈希表 286
文件句柄 288
总结 290
深入阅读 291
第18章 以模块的形式编写程序 293
主要问题 293
回到过去 294
谁在调用函数 294
测试程序 295
发布程序 302
总结 303
深入阅读 303
附录A:深入阅读 305
附录B:brian的解决任何Perl问题的指导手册 309
索引 315