新書推薦:
《
故宫书画集(精编盒装)版传统文化收藏鉴赏艺术书法人物花鸟扇面雕刻探秘故宫书画简体中文注释解析
》
售價:NT$
1490.0
《
《往事和近事(增订本)》(著名学者葛剑雄教授代表作,新增修订、全新推出。跨越三十多年的写作,多角度讲述中华文明)
》
售價:NT$
349.0
《
往事和近事:历史地理学泰斗、百家讲坛主讲葛剑雄经典文集
》
售價:NT$
349.0
《
父母的关键认知
》
售價:NT$
225.0
《
第三帝国:一部新的历史(纳粹主义具有何种魔力?纳粹运动会卷土重来吗?一部全面揭示希特勒及其罪恶帝国黑暗的历史)
》
售價:NT$
490.0
《
强迫症的历史:德国人的犹太恐惧症与大屠杀(德国历史上的反犹文化源自哪里?如何演化为战争对犹太人灭绝性的种族杀戮?德国历史研究专家克劳斯·费舍尔叙述德国反犹史及其极端形态的典范之作)
》
售價:NT$
440.0
《
粤港澳大湾区舆论引导与舆情应对精品案例:基于媒介化治理的思考
》
售價:NT$
445.0
《
大地的勇士
》
售價:NT$
340.0
|
編輯推薦: |
1.面向实践的Perl语言经典
2.简约、高效的编程秘籍
3.Perl语言非常有名的译者倾情再献
《Perl高效编程第2版》,本书是Perl编程领域的“圣经级”著作。它提供了一百多个详实的应用案例,足以涵盖编程过程中经常遇到的方方面面,由此详细阐释出各种高效且简洁的写法。
|
內容簡介: |
《Perl高效编程(第2版)》是Perl 编程领域的“圣经级”著作。它提供了一百多个详实的应用案例,足以涵盖编程过程中经常遇到的方方面面,由此详细阐释出各种高效且简洁的写法。
《Perl高效编程(第2版)》第1 版曾畅销十年之久,而在第2 版中不仅修正了前版存在的一些问题,更与时俱进地引入了许多Perl 领域的新主题,使内容更加完善丰富,也更具实用性。
|
關於作者: |
作者介绍
Joseph N. Hall 一个自学成才的“电脑神童”,靠着玩TI公司的可编程计算器和带4KB内存的Radio Shack TRS-80 Model 1出道。他从14岁起就开始教别人用电脑,早在1984年就开始了职业编程生涯。他开始接触Unix和C语言是1987年,接触Perl则是1993年。
Joshua A. McAdams一直以在谷歌工作为荣。作为五年来非常活跃的Perl社区成员,他是Perlcast(www.perlcast.com)的创办者,主持了两届芝加哥YAPC::NA,同时也是Chicago.pm的召集人,他在全球的Perl会议上发表了不少演讲,另外,他还是一名CPAN的作者,并持续为The Perl Review和Perl Advent Calendar供稿。
brian d foy 《Perl语言入门(第5版)》以及Intermediate Perl的合著者,也是《精通Perl》的作者。他发起了一个Perl用户组——New York Perl Mongers;作为The Perl Review的出版人,还维护着一部分Perl核心文档。另外,他也是一名Perl讲师,常常在聚会上发言。
译 者 简 介
盛春 大二开始自学Perl编程,在通读完《Perl 5详解》后利用暑期打工的机会,专职于Perl语言的CGI开发。毕业后的工作也一直以Perl语言作为主要开发工具,目前就职于思科IronPort的邮件及Web安全部门,负责中文反垃圾邮件规则的开发和维护以及内部工具和报告的开发。早年曾为PerlChina筹建社区站点,翻译过数篇技术文章。2007年和蒋永清合作翻译《Perl Testing程序高手秘笈》,2009年与蒋永清、王晖合作翻译《Perl 语言入门(第5版)》,2010年再度合作,翻译了即将出版的《使用Perl实现系统管理自动化》以及这本《Perl高效编程》。此外,在2009年还主持翻译了开源图书《Pro Git》。
王晖 《Perl 语言入门(第5版)》及《使用Perl实现系统管理自动化》的合译者。接触到Perl是在2000年,很快喜欢上了这门语言和它的社区,熟悉Linux Unix,在盛春的影响下成为Mac用户,目前和盛春一样服务于IronPort 的邮件及Web安全部门,大部分工作都是在FreeBSD下使用Perl来完成的,包括数据分析、采集、系统管理及Web应用等。希望国内能有更多的Perl爱好者及基于Perl的应用出现。
张东亮 2004年接触并喜欢上了Perl,对正则表达式相逢恨晚。建有个人博客“我爱正则表达式”,专用来记录Perl等脚本语言中正则表达式的学习心得和应用技巧。目前服务于IronPort的邮件及Web安全部门,负责维护反垃圾邮件反病毒系统和内部网络的建设。
蒋永清 1997年在一台收银机上开始了Linux的自学,2002年夏开始接触 Perl
|
目錄:
|
目录
第1章 Perl基础1
条款1 查阅Perl及其模块的文档1
条款2 在需要时开启Perl新特性3
条款3 打开约束指令,让编码更规范4
条款4 了解魔符的含义7
条款5 弄清变量名字空间8
条款6 了解字串和数值比较间的差异9
条款7 弄清何时变量为假,并依此作出正确判别11
条款8 理解字符串和数字之间的转换14
条款9 弄清列表和数组间的差别17
条款10 如需空数组,请勿用undef赋值19
条款11 仅需单个元素时请勿用切片21
条款12 理解上下文及其对操作的影响25
条款13 用数组或散列集结一组数据27
条款14 用bignum处理大数29
第2章 Perl的地道用法31
条款15 为优雅、简洁而使用$_32
条款16 了解其他默认参数35
条款17 常见简写和双关语37
条款18 避免过分依赖标点符号41
条款19 调整列表格式以便于维护43
条款20 善用foreach、map和grep44
条款21 了解各种字符串引用方法47
条款22 掌握多种排序方式50
条款23 通过智能匹配简化工作54
条款24 用given-when构造switch语句55
条款25 用do {}创建内联子程序58
条款26 用List::Util和List::MoreUtils简化列表处理60
条款27 用autodie简化错误处理63
第3章 正则表达式66
条款28 了解正则表达式操作符的优先级66
条款29 使用正则表达式的捕获功能69
条款30 使用更精确的空白字符组74
条款31 使用命名捕获,给匹配加标签77
条款32 仅需分组时,用非捕获括号78
条款33 小心处理匹配变量79
条款34 能懒则懒,不要贪婪81
条款35 用零宽断言匹配字串中的特定位置82
条款36 简单字串处理应避免使用正则表达式85
条款37 提高正则表达式的可读性87
条款38 避免不必要的回溯90
条款39 仅编译正则表达式一次93
条款40 预编译正则表达式94
条款41 正则表达式的性能评测95
条款42 不要滥造正则表达式97
第4章 子程序99
条款43 理解my和local之间的差异99
条款44 若非必要请勿直接使用@_106
条款45 用wantarray按需返回列表108
条款46 传递引用而非副本110
条款47 用散列传递命名参数113
条款48 通过参数原型声明以特殊方式解析参数116
条款49 创建闭包锁住数据118
条款50 用子程序创建新子程序121
第5章 文件与文件句柄124
条款51 不要忽略文件测试操作符124
条款52 始终以三项参数的形式调用open126
条款53 采用不同方式读取数据流127
条款54 处理字符串的文件句柄129
条款55 灵活的输出方式132
条款56 用File::Spec或Path::Class处理文件路径134
条款57 将数据留于磁盘以节约内存136
第6章 引用139
条款58 理解引用和引用的语法139
条款59 将引用类型和原型进行比较145
条款60 通过引用创建包含数组的数组147
条款61 别将匿名数组和列表直接量搞混淆149
条款62 通过匿名散列创建C风格的struct结构150
条款63 小心循环数据结构152
条款64 用map和grep操作复杂数据结构154
第7章 CPAN158
条款65 以非管理员权限安装CPAN模块159
条款66 拥有自己的CPAN161
条款67 减少公共代码带来的风险164
条款68 安装模块前先行调研166
条款69 确保Perl能找到我们的模块168
条款70 为CPAN作贡献171
条款71 了解常用模块173
第8章 Unicode176
条款72 在源代码中使用Unicode字符177
条款73 告诉Perl该用何种编码方式179
条款74 通过代码值或名字输入Unicode字符180
条款75 位组字串转换到字符字串182
条款76 Unicode字符和属性的模式匹配185
条款77 同字素打交道,而不是字符188
条款78 谨慎处理数据库中的Unicode190
第9章 软件分发192
条款79 用Module::Build构建发行版192
条款80 不必手工新建软件发行版194
条款81 给模块取个好名字198
条款82 在代码中嵌入Pod文档201
条款83 限制我们的发行版用于特定平台204
条款84 检查Pod文档206
条款85 嵌入其他语言代码209
条款86 用XS链接低级语言,提高运行速度211
第10章 测试215
条款87 用prove灵活运行测试215
条款88 有目的性地运行测试218
条款89 用依赖注入避免特殊测试逻辑220
条款90 避免给方法引入不必要的东西222
条款91 把程序写成模块便于测试224
条款92 用虚拟的对象或接口测试227
条款93 用SQLite创建测试用数据库231
条款94 用Test::Class编写结构化测试232
条款95 项目一开始就准备好测试235
条款96 度量测试覆盖率240
条款97 把CPAN Testers当作QA团队243
条款98 设置持续编译系统244
第11章 警告信息250
条款99 启用警告功能定位可疑代码250
条款100 利用词法作用域选择性启用或关闭警告253
条款101 用die抛出异常255
条款102 用Carp来获得栈跟踪信息256
条款103 正确处理异常259
条款104 通过污染检查跟踪危险数据261
条款105 对老旧程序启用污染警告263
第12章 数据库265
条款106 预备SQL语句以复用并节省时间265
条款107 利用SQL占位符将参数值自动引起268
条款108 通过绑定返回列快速访问数据270
条款109 复用数据库连接272
第13章 杂项275
条款110 编译并安装自己的perl解释器275
条款111 用Perl::Tidy美化代码277
条款112 使用Perl Critic280
条款113 用Log::Log4perl记录程序运行状态284
条款114 明白循环内的数组何时会被修改289
条款115 不要用正则表达式提取逗号分隔的字串290
条款116 用unpack处理固定列宽的数据291
条款117 用pack和unpack对数据作变形处理293
条款118 借用typeglob访问符号表298
条款119 用BEGIN初始化,以END善后300
条款120 用单行Perl命令作为迷你程序302
附录 Perl资源307
|
|