Effective Perl Programming 2nd Edition
作者: Joseph N. Hall
语言: 英文
出版年份: 2010
编程语言: Perl
下载链接:
书籍均收集自互联网,仅供学习和研究使用,请莫用于商业用途。谢谢合作。

书籍摘要

《Effective Perl Programming: Ways to Write Better, More Idiomatic Perl》是由 Joseph N. Hall、Joshua A. McAdams 和 brian d foy 共同撰写的第二版权威指南,旨在帮助 Perl 程序员提升编程水平,掌握更高效、更具表达力的 Perl 编程方式。本书属于 Effective 系列,该系列以提供软件开发领域的专家级建议而闻名,本书也不例外,它总结了 Perl 编程中应当遵循的最佳实践和应当避免的常见陷阱。

作者简介

Joseph N. Hall 是 Perl 社区的资深成员,拥有丰富的 Perl 编程经验。他曾在多个项目中使用 Perl,深知其强大之处。Joshua A. McAdams 是 Perlcast 的主持人,活跃于 Perl 社区,对 Perl 的推广和发展做出了重要贡献。brian d foy 是多本 Perl 相关书籍的作者,同时也是 Perl 社区的活跃成员,对 Perl 的教学和推广有着深刻的理解。

书籍结构与内容

本书内容丰富,覆盖了 Perl 编程的多个重要方面,共分为 13 章,每章围绕一个特定主题展开,提供了具体的操作建议和代码示例。以下是各章的主要内容:

第 1 章:Perl 的基础知识

介绍了 Perl 的基本特性,包括如何查找 Perl 及其模块的文档、启用新特性、使用严格模式(strict)等,帮助读者打下坚实的基础。

第 2 章:惯用的 Perl 编程方式

探讨了如何利用 Perl 的特性编写更简洁、更高效的代码,例如使用默认变量 $_、了解 Perl 的其他默认参数、掌握常见的语法简写等。

第 3 章:正则表达式

深入讲解了正则表达式的使用,包括操作符优先级、捕获组的使用、精确匹配空白字符等,帮助读者更好地处理文本数据。

第 4 章:子程序

讨论了子程序的定义和使用,包括 my 和 local 的区别、如何避免直接操作 @_、使用 wantarray 写出返回列表的子程序等。

第 5 章:文件和文件句柄

介绍了文件操作的基本方法,如正确使用文件测试操作符、始终使用三参数的 open 函数、从流中读取数据的不同方式等。

第 6 章:引用

详细讲解了引用的创建和使用,包括理解引用和引用语法、比较引用类型与原型、创建数组的数组等。

第 7 章:CPAN

介绍了如何利用 CPAN(Comprehensive Perl Archive Network)安装模块、携带 CPAN、评估公共代码的风险等。

第 8 章:Unicode

随着 Perl 对 Unicode 的支持增强,本章介绍了如何在源代码中使用 Unicode、指定编码、处理 Unicode 字符和属性等。

第 9 章:分发(Distributions)

讲解了如何使用 Module::Build 构建分发包、选择合适的模块名称、嵌入文档等。

第 10 章:测试

强调了测试的重要性,包括使用 prove 进行灵活的测试运行、仅在必要时运行测试、使用依赖注入避免特殊测试逻辑等。

第 11 章:警告

介绍了如何启用警告以让 Perl 检测可疑代码、使用 lexical warnings 选择性地开启或关闭警告、使用 Carp 获取堆栈跟踪等。

第 12 章:数据库

介绍了如何准备 SQL 语句以重用工作、使用 SQL 占位符自动引用值、绑定返回列以便更快地访问数据等。

第 13 章:杂项

包括编译和安装自己的 Perl、使用 Perl::Tidy 美化代码、使用 Perl Critic 等。

适用人群

本书适合有一定 Perl 编程基础的读者。如果你已经掌握了 Perl 的基本语法,但希望进一步提升代码质量、学习更高效的编程方式,那么本书将是一个极佳的选择。它不仅能够帮助你写出更简洁、更高效的代码,还能让你深入了解 Perl 的高级特性,如正则表达式、引用、模块化等。

总结

《Effective Perl Programming: Ways to Write Better, More Idiomatic Perl》是一本全面、深入的 Perl 编程指南。它不仅涵盖了 Perl 编程的基础知识,还提供了大量关于如何编写高效、可维护代码的实用建议。通过阅读本书,读者可以快速提升自己的 Perl 编程水平,掌握更多高级特性和最佳实践。无论你是初学者还是有一定经验的 Perl 程序员,本书都值得一读。

期待您的支持
捐助本站