精通Perl(第2版)
brian d foy
王兴宇, 刘宸宇 译
出版时间:2015年01月
页数:395
通过本书的深度内容可以让你在通往Perl大师的路上更进一步,让你的代码编写更容易、维护更简单、执行更快速。本书不是若干小技巧的简单集合,它体现了一种Perl编程的思维方式。作为一名程序员,它可以帮助你解决现实生活中遇到的调试、配置和其他许多实际的问题。
作为O'Reilly出版的具有里程碑意义的Perl系列教程中的第三部(继《Perl语言入门》和《Perl进阶》之后),这次的全新更新版本集合了所有的精华,帮助你在Perl的世界中自由翱翔。
· 探索高级的正则表达式功能
· 如何避免程序常见的安全问题
· 对Perl程序的性能分析和基准测试可以让你发现改进之处
· 清理Perl代码,使之更加直观和易读
· 了解Perl如何持续跟踪软件包内的变量
· 动态定义子程序
· 不必改动原有代码即可提升模块
· 使用位操作和位向量更有效地存储更大的数据
· 学习如何检测Perl中未报告的错误
· 深入学习日志、数据持久化和绑定变量的魔法
  1. 前言
  2. 第1章 高级正则表达式
  3. 可读的正则表达式/x和(#...)
  4. 全局匹配
  5. 全局匹配锚定
  6. 递归正则表达式
  7. 重复子模式
  8. 前后查找
  9. 向前查找断言(=PATTERN)与(!PATTERN)
  10. 向后查找断言(<!PATTERN)与(<=PATTERN)
  11. 调试正则表达式
  12. 参数-D
  13. 总结
  14. 延伸阅读
  15. 第2章 安全编程技术
  16. 不良数据会毁了你的生活
  17. 污点检测
  18. 用警告代替致命错误
  19. 自动污点检测模式
  20. mod_perl
  21. 污点数据
  22. 污点检测的副作用
  23. 清除数据污点
  24. IO::Handle::untaint
  25. 哈希表关键字
  26. Taint::Util
  27. 用污点数据选择无污点数据
  28. 符号引用
  29. DBI防御性数据库编程
  30. system和exec命令的列表形式
  31. 三个参数的open函数
  32. sysopen
  33. 限制特殊权限
  34. Safe隔间
  35. Safe模块的局限性
  36. 娱乐一下
  37. 总结
  38. 延伸阅读
  39. 第3章 Perl调试器
  40. 避免浪费太多的时间
  41. 世界上最好的调试器
  42. 安全地修改模块
  43. 封装子程序
  44. Perl调试器
  45. 备选调试器
  46. 用-d启用其他调试器
  47. Devel::ptkdb
  48. Devel::ebug
  49. Devel::hdb
  50. 集成开发环境调试器
  51. EPIC
  52. Komodo
  53. 总结
  54. 延伸阅读
  55. 第4章 Perl性能分析
  56. 找出罪魁祸首
  57. 通用方法
  58. DBI性能分析
  59. 其他DBI::Profile报告
  60. 懒惰是美德,能否简单点
  61. 切换为数据库
  62. Devel::NYTProf模块
  63. 写一个自己的分析器
  64. Devel::LineCounter模块
  65. 性能分析测试套件
  66. Devel::Cover模块
  67. 总结
  68. 延伸阅读
  69. 第5章 Perl基准测试
  70. 基准测试理论
  71. 测量时间
  72. 比较代码
  73. 不要停止思考
  74. 隔离环境
  75. 处理异常值
  76. 内存使用
  77. perlbench工具
  78. 总结
  79. 延伸阅读
  80. 第6章 清理Perl程序
  81. 好的风格
  82. perltidy程序
  83. 去除混淆
  84. 对隐藏代码的解码
  85. 用B::Deparse对代码进行逆向解析
  86. Perl::Critic模块
  87. 创建我们自己的Perl::Critic策略
  88. 总结
  89. 延伸阅读
  90. 第7章 符号表和Typeglob
  91. 软件包变量和词法变量
  92. 获取软件包变量
  93. 符号表
  94. Typeglob
  95. 别名
  96. 旧代码中的文件句柄参数
  97. 给匿名子程序命名
  98. 简单的方法
  99. 总结
  100. 延伸阅读
  101. 第8章 动态子程序
  102. 子程序作为数据
  103. 创建与替换命名子程序
  104. 符号引用
  105. 遍历子程序列表
  106. 处理流水线
  107. 自引用匿名子程序
  108. 方法列表
  109. 子程序作为参数使用
  110. 自动加载方法
  111. 哈希表作为对象
  112. 自动切分
  113. 总结
  114. 延伸阅读
  115. 第9章 修改和提升模块
  116. 选择正确的解决方案
  117. 给作者发送补丁
  118. 本地修补
  119. 接管一个模块
  120. 分支
  121. 从头开始做自己的模块
  122. 替换模块的一部分
  123. 派生子类
  124. 一个ExtUtils::MakeMaker的例子
  125. 其他例子
  126. 封装子程序
  127. 总结
  128. 延伸阅读
  129. 第10章 配置Perl程序
  130. 不要做的事
  131. 将配置代码放到独立的文件中
  132. 更好的办法
  133. 环境变量
  134. 特殊环境变量
  135. 打开额外的输出
  136. 命令行选项
  137. Perl的-s选项
  138. Getopt模块
  139. 配置文件
  140. ConfigReader::Simple
  141. Config::IniFiles
  142. Config::Scoped
  143. 其他配置文件
  144. 具有不同名字的脚本
  145. 交互和非交互程序
  146. Perl的配置模块
  147. 不同的操作系统
  148. 总结
  149. 延伸阅读
  150. 第11章 检测和报告错误
  151. Perl错误处理基础
  152. 操作系统错误
  153. 子进程错误
  154. 操作系统特定的错误
  155. 报告模块错误
  156. 分解问题
  157. 异常
  158. eval
  159. 多层嵌套的die
  160. 在die中使用引用
  161. 用die传递对象
  162. 打破$@
  163. autodie
  164. 报告罪魁祸首
  165. 捕获异常
  166. Try::Tiny
  167. TryCatch
  168. 多态返回值
  169. 总结
  170. 延伸阅读
  171. 第12章 日志
  172. 记录错误和其他信息
  173. Log4perl
  174. 子程序参数
  175. 配置Log4perl
  176. 持久化日志配置
  177. 日志分类
  178. 其他的Log::Log4perl功能
  179. 总结
  180. 延伸阅读
  181. 第13章 数据持久化
  182. Perl特有的格式
  183. 打包
  184. 定长记录
  185. 展开二进制格式
  186. Data::Dumper
  187. 类似的模块
  188. Storable模块
  189. 冻结数据
  190. Storable模块的安全问题
  191. Sereal模块
  192. DBM文件
  193. dbmopen函数
  194. DBM::Deep模块
  195. Perl所不认识的格式
  196. JSON格式
  197. YAML格式
  198. MessagePack格式
  199. 总结
  200. 延伸阅读
  201. 第14章 使用
  202. Pod格式
  203. Pod指令
  204. 编码
  205. 正文元素
  206. 转换Pod
  207. Pod转换程序
  208. Pod::Perldoc::ToToc模块
  209. Pod::Simple模块
  210. 从Pod::Simple派生子类
  211. Web服务器中的Pod
  212. 测试Pod
  213. 检查Pod
  214. Pod覆盖率
  215. 隐藏和忽略函数的Pod覆盖率检查
  216. 总结
  217. 延伸阅读
  218. 第15章 位操作
  219. 二进制数
  220. 以二进制数方式输出
  221. 位操作符
  222. 一元取反操作符(~)
  223. 按位与操作(&)
  224. 按位或操作(|)
  225. 按位异或操作(ˆ)
  226. 左移位(<<)和右移位(>>)操作符
  227. 位向量
  228. vec函数
  229. 位字符串的存储
  230. 存储DNA
  231. 素数判定
  232. 记录事情
  233. 总结
  234. 延伸阅读
  235. 第16章 绑定变量的魔法
  236. 看起来普通的变量
  237. 在用户层面
  238. 帷幕之后
  239. 标量
  240. Tie::Cycle模块
  241. 有界整数
  242. 自毁值
  243. 数组
  244. 重新创建数组
  245. 一些现实中的东西
  246. 哈希表
  247. 文件句柄
  248. 总结
  249. 延伸阅读
  250. 第17章 模块即程序
  251. main入口
  252. 回到过去
  253. 谁在调用
  254. 测试程序
  255. 模块即测试
  256. 创建程序发布包
  257. 给程序里加内容
  258. 发布程序
  259. 总结
  260. 延伸阅读
  261. 附录A 延伸阅读
  262. Perl书籍
  263. 非Perl书籍
  264. 附录B brian的Perl问题解决指导手册
  265. 解决问题的哲学
  266. 我的方法
  267. 那些我做过和仍在做的蠢事
  268. 本书模块索引
  269. 索引
书名:精通Perl(第2版)
作者:brian d foy
译者:王兴宇, 刘宸宇 译
国内出版社:电子工业出版社
出版时间:2015年01月
页数:395
书号:978-7-121-25419-2
原版书书名:Mastering Perl, 2nd Edition
原版书出版商:O'Reilly Media
brian d foy
 
brian d foy是一个多产的Perl培训师和作家,他主办了“The Perl Review”,通过教育、咨询、代码审查等等帮助人们使用和了解Perl。他经常在Perl会议上发表演说。他是《Learning Perl》、《Intermediate Perl》和《Effective Perl Programming》的合作者,另外还单独著有《Mastering Perl》。1998年到2009年期间,他任职于Stonehenge Consulting Services担任讲师和作者。从他成为一个物理学研究生开始就是一个Perl用户,另外从他拥有自己的第一台计算机开始就是一个顽固的Mac用户。他成立了第一个Perl用户组(New York Perl Mongers),另外还创建了非盈利的Perl Mongers公司,帮助建立了全世界200多个Perl用户组。他维护着核心Perl文档的perlfaq部分,另外还维护着CPAN上的很多模块以及一些独立的脚本。