Perl高级编程
开学季大优惠 欢迎选购!
¥
29.24
2.7折
¥
108
九品
仅1件
作者[英]Peter Wainwright
出版社机械工业出版社
出版时间2002-06
版次1
装帧平装
货号9787111101406
上书时间2024-08-21
商品详情
- 品相描述:九品
图书标准信息
-
作者
[英]Peter Wainwright
-
出版社
机械工业出版社
-
出版时间
2002-06
-
版次
1
-
ISBN
9787111101406
-
定价
108.00元
-
装帧
平装
-
开本
其他
-
纸张
胶版纸
-
页数
1057页
- 【内容简介】
-
本书深入浅出地介绍了利用Perl语言进行编程的各方面知识。首先,本书介绍了大多数高级程序设计语言中都涉及的数据类型、特殊变量、操作符、表达式、语句和子例程等基本概念。然后,本书逐章阐述了文件与目录处理、终端输入与输出、程序调试方法等。最后,本书还描述了面向对象程序设计方法、Perl解释器、进程、线程、基本的网络编程方法、Perl语言的可移植性以及国际化等高级话题。 本书思路清晰,逻辑性强,方法实用性强,是进入Perl编程世界的理想向导和指南。无论是Perl入门者,还是有经验的Perl程序员,都可得益于本书提供的丰富的Perl编程知识与编程技巧。
- 【目录】
-
第1章 概览1.l 简介1.1.l 关键的特性1.1.2 支持平台l.l.3 Perl的历史和版本l. 1.4 基础信息1. 2 构建和安装Perl1.2. 1 安装预构建的Perl发布版本1.2. 2 构建Perl源代码1.2. 3 构建和安装模块1.2.4 用CPAN模块安装模块1.3 运行Perl1.3.l 启动Perl应用程序1.3.2 命令行1.3.3 命令行语法1.3.4 Perl环境1.4 小结第2章 基本概念2.l 值和变量2.2 空白区域2.3 数据类型2.4 特殊变量2.5 插值2.6 上下文2.6.l 标量上下文和列表上下文2. 6.2 空白上下文2.7 操作符2.8 程序块2.9 控制结构2.10 循环修饰符2.11 子例程2.12 函数2.13 作用域第3章 标量3.1 值转换和高速缓存3.2 数字3.2. 1 整数3.2.2 浮点数3.2.3 use integer编译指示3.2.4 数学函数3.3 字符串3.3.1 引号和引用3.3.2 here文档3.3.3 探词字符串和版本号3.3.4 把字符串转换成数字3.3.5 把字符串转换成列表和hash3. 3.6 操作字符串的函数3.3.7 字符串格式化3.4 小结第4章 操作符4.l 操作符与函数比较4.2 操作符类型和类别4.2. 1 赋值操作符4.2.2 算术操作符4.2. 3 移位操作符4.2.4 字符串操作符和列表操作符4.2.5 逻辑操作符4.2.6 位操作符4.2.7 组合赋值操作符4.2.8 递增操作符和递减操作符4. 2.9 比较操作符4.2.10 正则表达式绑定操作符4.2.11 逗号操作符和关系操作符4.2.12 引用操作符和间接引用操作符4. 2.13 箭头操作符4.2.14 范围操作符4. 2.15 三元操作符4.3 优先组和结合性4. 4 禁用函数和操作符4. 5 覆盖操作符4. 6 小结第5章 标量之外的更多数据类型5.l 列表和数组5. 1.1 操作数组5.1.2 把列表和数组转换为标量5. 2 hash5.2.l 操作 hash5.2.2 把列表和数组转换为hash5.2.3 把hash转换为标量5. 2.4 把hash转换为数组5.2.5 特殊的hash变量% ENV5.3 引用5. 4 复杂的数据结构5.4.l 嵌套带来的问题--列表被展开5.4.2 列表的列表和多维数组5.4.3 hash的hash和其他复杂的数据结构5. 4.4 向复杂的数据结构添加元素和修改复杂的数据结构5.4.5 编程实现复杂的数据结构5.4.6 遍历复杂的数据结构5.5 typeglob5.5. 1 定义typeglob5.5.2 操作typeglob5.5.3 访问typeglob5.6 未定义值5.6.l 存在测试5.6.2 使用未定义值5.6.3 把undef作为一个函数使用5.7 常量5.7.l 使用constant编译指示声明标量常量5. 7.2 声明列表常量和hash常量5.7.3 常量引用5.7.4 列举和检查常量的存在5. 8 小结第6章 结构、流和控制6.l 表达式、语句和程序块6.1.l 声明6.l. 2 表达式和简单语句6.1.3 程序块和复合语句6.2 条件语句6.2. 1 真值的概念6.2.2 if、else和elsif6.2.3 unless6.2. 4 使用逻辑操作符写条件6.2. 5 三元操作符6.2.6 开关和多分支条件6.2.7 从多分支条件中返回值6.3 循环和循环过程6.3.l 使用for编写C样式的循环6.3.2 使用foreach写出更好的循环6.3.3 条件循环--while、until和do6.3.4 控制循环执行6.3.5 goto语句6.3.6 map和grep6.4 小结第7章 子例程7.1 声明子例程和调用子例程7.1.l 匿名子例程和子例程引用7.1.2 严格子例程和use strict subs编译指示7.l.3 预声明子倒程7. 1.4 子例程栈7.1.5 检查子例程和使Perl自动定义子例程7.2 传递参数7.2.l 传递列表和hash7.2.2 把标量子例程转换为列表处理程序7.2.3 直接把@_传递给子例程7.2.4 命名参数7.3 原型7.3.l 定义参数的个数和它们的作用域7.3.2 使用原型设计代码引用7.3.3 把子例程作为标量操作符7.3.4 请求变量而不是值7. 3. 5 可选参数7.3.6 禁用原型7.4 从子倒程中返回值7. 4.l 返回未定又值7.4.2 对调用上下文的检测和响应7.4. 3 闭包7.4.4 可赋值的子例程7.5 属性列表7.5.l 定义于例程属性7.5.2 访问属性7.5.3 特殊属性7.5. 4 包属性7.6 小结第8章 作用域和可见性8.l 包变量8.1.l 定义包变量8.1.2 使用"严格的"变量8.1.3 声明全局包变量8.l.4 使用use vars声明全局包变量8.1.5 使用our词法声明全局包变量8.1.6 在Perl中自动局部化8.1.7 使用local局部化包变量8.2 词法变量8.2. 1 声明词法变量8. 2. 2 在词法变量作用域外使用它们8.3 符号表8.3.l main包8.3. 2 typeglob和main包8.3.3 符号表层次8.3.4 直接操作符号表8.3.5 访问符号表8.4 小结第9章 使用模块9. l 模块和包9.2 使用do、require和use装载代码9.2. 1 导入列表9.2.2 禁止缺省导入9. 2. 3 使用no禁用特性9.2.4 测试模块版本和Perl的版本9.3 语用模块9.3.l 语用模块的工作原理9.3.2 语用模块的作用域9.4 特殊hash变量% INC9.5 特殊数组变量@ INC9.5.l 直接修改@ INC9.5.2 使用lib编译指示修改@ INC9.6 定位与脚本相关的库9.7 检查一个模块的可用性9. 8 找出被安装的模块9.9 将模块的载人推迟至使用时9.10 小结第10章 模块与包内幕10.1 BEGIN块、END块和其他程序块10.1.1 BEGN块10.l.2 END块10.1.3 CHECK和 INIT10.2 操作包10.2. 1 删除包10.2.2 禁止包变量10.3 按程序方式查找包名10.4 自动加载10.4. 1 自动加载于例程10.4.2 自行定义而不是自动加载子例程10.4.3 自动加载模块10.5 导入与导出10.5.l 导入机制10.5.2 导出10.6 创建可安装的模块10.6.1 编写良好的模块10.6.2 创建一个工作目录10.6.3 建立可安装的包10.6.4 添加一个测试脚本10.6.5 将模块上载到CPAN10.7 小结第11章 正则表达式11.l 字符串插值11.1.1 Perl的插值语法11.1.2 插入元字符和字符代码11.1.3 对变量进行插值11.1.4 插值代码11.1.5 插值上下文11.1.6 正则表达式中的插值11.1.7 在字符串变量中插人文本11.1.8 保护字符串防止被插值11.2 正则表达式11.2.l 正则表达式出现在什么位置11.2.2 正则表达式分隔符11.2.3 正则表达式的元素11.2.4 更高级的模式11.2. 5 模式匹配修饰符11.2.6 正则表达式与通配符11.2.7 元字符11.2.8 提取匹配的文本11.2. 9 不止一次匹配11.2.10 扩展模式11.2.11 文档化正则表达式11.2.12 书写有效的正则表达式11.2.13 检查正则表达式的有效性11.2.14 正则表达式、感染变量和调试11.2.15 置换11.2.16 音译11. 3 小结第12章 利用文件句柄进行输入与输出12.1 10与文件句柄12.2 文件句柄数据类型12.3 标准文件句柄12.4 创建文件句柄12.4.l 利用open函数创建文件句柄12.4.2 为读、写以及更新打开文件12.4.3 打开任意义件名12.4. 4 打开标准输入与标准输出12.4.5 利用IO::File创建文件句柄12.4. 6 数据文件句柄12.4.7 其他文件句柄12.5 引用文件句柄12.6 从文件句柄读数据12.6.l 读行操作符12.6.2 读数据操作的精细控制12.6.3 检测文件结束12.6.4 读取一个字符12. 7 向文件句柄中写数据12. 7.l 缓冲方式与自动刷新方式12.7.2 print的其他替代函数12.8 处理二进制文件与文本文件12.8. l binmode函数12.8.2 Open编译指示12.9 随机访问12.9.l 利用seek函数定位到文件中的某个特定位置12.9.2 利用Seek函数清除文件结束条件12.9.3 在文件结束位置写人数据12.9.4 查找当前位置12.9.5 面向对象的随机访问12.10 截去文件与调整文件大小12.11 文件上锁12.11.l 建立文件锁12.l1.2 文件上锁的问题与防止误解的说明12.12 修改缺省的输出文件句柄12.12.l 使用特殊变量来配置其他文件句桶12.12.2 自动恢复缺省文件句柄12.12. 3 使用缺省变量与IO::Handle方法12.13 文件句柄的复制与别名12.14 重定向文件句柄12.15 Cache多个文件句柄12.16 IO::Handle方法与特殊变量12.17 系统级IO12.17.l 在系统级打开文件句柄12.17.2 不带缓冲的读12.17.3 不带缓冲的写12. 17.4 系统级文件定位12.17.5 fcntl与ioctl12.17.6 POSIX IO12. 18 小给第13章 操作文件与目录13.l 文件与文件名13.1.l 获取用户信息与组信息13.1.2 一元文件测试操作符13.1.3 询问文件13.l.4 改变文件属性13.1.5 Fcntl模块13.1.6 链接、断开链接与重命名文件13.1.7 复制与移动文件13.1.8 比较文件13.1.9 查找文件13.1.10 解释文件路径13.1.11 文件名globbing13. 1.12 glob语法13. 1.13 临时文件13.2 操作目录13. 2.1 读目录13.2. 2 创建与删除目录13.2.3 目录间的转移13. 3 小结第14章 命令行与Shell交互14. 1 解析命令行参数14.1.l 命令行约定14.1.2 @ARGV数组14.1.3 利用Getopt::Std进行简单的命令行处理14.l. 4 利用Cetop::tong进行更为复杂的命令行处理14.2 shell、shell命令与Perl14.2. 1 创建一个简单的 Perl shell14. 2. 2 编写更为有用的shell14.2. 3 将shell集成到Perl中14.2. 4 在Windows系统上模拟UNIX命令14.3 小结第15章 终端输入与输出15.l 与终端进行交互15.2 从键盘读取数据15.2. l 简单输入15. 2.2 利用Term:: ReadKey控制终端输入15.2.3 整行读15.2.4 利用Term:: ReadLine进行高级行输入15.2.5 创建终端对象15.2.6 单词自动完成15.3 写屏幕15.3.1 终端功能15.3.2 彩色输出15. 4 高级终端模块15. 4.1 Term::Screen15.4.2 Curses库15.5 通过POSIX直接进行终端编程15.6 小结第16章 警告与错误16.1 启用警告16.2 启用诊断16.3 产生警告与错误16.4 截取警告与错误16.5 译解系统调用所产生的错误结果16.5.l 错误编号与名称16.5.2 设置错误编号16.5.3 求值代码的错误16.5. 4 扩展的错误消息16.5.5 Errno与POSIX模块16.5. 6 检查子进程与外部命令的退出状态16.6 将非致命错误转换成致命错误16.7 利用Carp在上下文中返回警告信息与错误信息16.8 错误日志与系统日志16.9 高级警告16.10 小结第17章 调试17.1 语用调试支持17.2 自行调试的应用程序17.2.l 一个简单的调试系统17.2.2 一个更好的调试系统17.2.3 创建调试日志17.2.4 添加调用上下文到调试消息中17. 3 Perl调试器17. 3. 1 启动调试器17.3.2 输入命令17.3.3 调试命令17.3.4 配置调试器17.3.5 跟踪与终端17.3.6 通过程序进入调试器17.3 对使用调试器并常分支17.4 调试模块与信息模块17.4.1 Dumpvalue模块17. 4. 2 Safe模块17.5 调试Perl解释器17.6 自动测试17.6.l 编写测试脚本17.6. 2 自动化测试17.7 Profele17.7. 1 Profile Perl应用程序17.7.2 产生Profile报告17.7.3 直接收集计时信息17.7.4 性能测试17.8 小结第18章 文本处理与文档生风18.l 文本处理18.1.l 使用Text::Tabs扩充和缩短制表符18.1.2 使用Text::Abbrev计算缩写18.1.3 使用Text::ParseWords解析单词和短语18.1.4 使用Text::Wrap格式化段落18.1.5 使用Text::Soundex匹配近似的发声单词18.1. 6 其他文本处理模块18.2 文档化Perl18.2.l 注释18.2.2 简易老式文档18.2.3 pod工具和实用程序18. 2.4 对pod编程18.3 报告--在Perl中的r18.3.1 格式与格式数据类型18.3.2 格式结构18.3. 3 负面控制18.3.4 组合报告和规则输出18.4 小结第19章 面向对象Perl19.l 对象简介19.2 使用对象编程19. 2. 1 创建对象19.2.2 使用对象19. 2.3 确定一个对象是什么19.2.4 确定通过继承得到的特征19.3 编写对象类19.3.l 构造器19.3.2 调试对象类19.4 继承与派生类19.4.1 从父类继承19.4.2 编写可继承的类19.4.3 私有方法19.4.4 扩展与重定义对象19.4.5 多继承19.4.6 UNIVERSAL构造器19.5 自动加载方法19.6 保持数据私有19. 6.l 私有类数据19.6.2 私有对象数据19.7 销毁对象19.7.l 析构器和继承19.7. 2 析构器与多继承19.8 重载操作符19.8.1 基本重载19.8.2 确定操作数顺序和操作符名称19.8.3 重载比较操作符19.8.4 重载转换操作19.8.5 回退到本重载的操作19.8.6 重载与继承19.8.7 自动生成的操作19.8.8 可重载的操作19.9 自动化对象类开发19.10 捆绑和被捆绑的对象19.10.l 使用被捆绑的对象19.10.2 编写被捆绑的对象19.10.3 标准捆绑对象类19.10.4 被捆绑的对象方法19.10.5 被捆绑的hash类的一个例子19.10.6 使用Tie::stdHash的类的一个例子19.11 小结第20章 深入hd20.l 分析Peil二进制文件--Config.pm20.1.l perl-V20.l.2 工作原理20.2 Perl进一步分析20. 2.l 源文件树20.2. 2 构建Perl20.3 Perl工作原理20.3.1 语法分析20.3.2 编译20.3.3 解释20.4 内部变量类型20.4.1 PV20.4.2 IV20.4.3 NV20.4.4 数组与hash20.4.5 使用Devel::Peek分析原始数据类型20.5 Perl编译器20.5.1 O模块20.5.2 B模块20.5.3 B:模块家族20.5.4 编写Perl编译器后端20.6 小结第21章 Perl与其他程序设计语言的集成21.l 在Perl中使用C21.1.1 XS概述21.1.2 从h2xs启动21.1.3 XS文件21.1.4 XS函数21.1.5 TYPEMAP21.1.6 Makefile21.2 动态链接21.2.l 使用FFI模块21.2.2 使用C:DynaLib模块21.2.3 使用Win32::API模块21.3 在C中使用Perl21.3.l 第一步21.3.2 实现Perl解释器21.3.3 嵌入perl代码21.3.4 得到Perl值21.3.5 使用Perl子例程21.3.6 与Perl内核协同工作21.3.7 使用模块21.4 Java-Perl Lingo21.5 Perl与 COM21.5.1 PerlCOM21.5.2 PerlCtrl21.6 其他语言21.7 小结第22章 创建过程与管理进程22. 1 信号22.l.l 信号处理22.l.2 发送信号22.1.3 报警22.2 启动新进程22.2.l 替换当前进程22.2.2 进程ID22.2.3 进程、组及喘口监控程序22.3 处理子进程并返回退出代码22.3.l 等待一个子进程22.3.2 获得退出状态22.3.3 处理多个子进程22.3.4 POSIX标志及函数22.4 进程间通信22.4.l 十分简单的解决方法22.4. 2 管道22.4.3 打开并运行外部进程22.4.4 双向管道22.4.5 使用分叉的open避开shell22.4.6 连接外部进程的双向管道22.5 进程间共享数据22.5.l IPC::SysV22.5.2 消息队列22.5.3 信号量22.5. 4 共享内存段22. 6 线程22.6.l 检查线程支持22.6.2 创建线程22.6.3 标识线程22.6.4 线程特定数据22.6.5 线程管理22. 6. 6 变量锁22.6.7 条件变量、信号量及队列22.6.8 线程安全与锁定代码22.7 小结第23章 Perl网络编程23.l 网络简介23.1.l 协议层23.1.2 网际协议23.1.3 UDPWP23.1.4 ICMP23.1.5 其他协议23.1.6 表示层/应用层23.1.7 匿名、广播与回送地址23.2 Perl网络编程23.3 多路复用服务器23.4 获得网络信息23. 4. l 系统网络文件23.4.2 判断本地主机名23.5 小结第24章 编写可移植Perl24.l 可移植的必要性24.2 新行24. 3 文件与文件系统24.4 字节存放次序与数字宽度24. 5 系统交互24. 6 进程间通信24. 7 外部子例程24. 8 模块24. 9 时间及日期24.10 字符集与字符编码24. 11 国际化24. 12 系统资源24.13 安全性24.14 风格24.15 平台24.15.1 UNIX24.15.2 DOS及其派生系统24.15.3 Mac OS24.15.4 其他Perl24.16 函数实现24.17 小结第25章 Unicode25.1 Unicede所影响的用户群25.2 结论25.3 字符和Unicode简介25.4 Perl中的数据25.5 Unicode和正则表达式25.6 双向脚本25.6.l 显示bidi25. 6.2 bidi出算法做了什么25.6.3 Perl和 bidi25.7 Perl、118n和Unicode25.7.l 安装Unicode字体25. 7.2 安装Unicode编辑器25. 7.3 创建HTML模板25.7.4 处理资源文件25.7.5 运行脚本25.7.6 输出文件25.7.7 正在进行的工作25.8 小结第26章 本地化和国际化26.1 走向地区的原因26.2 关于时间:时区26.3 看上去像外语26.4 葡萄牙语的词性变化26.5 Lingua::*模块26. 6 编写多语种网页26.7 创建自己的本地化Perl模块26. 8 小结附录A 命令行选项附录B 特殊变量附录C 函数附录D 正则表达式附录E 标准语用模块附录F 标准功能模块附录G Perl资源附录H 与本书相关的网站:p2p.wrox.com
点击展开
点击收起
— 没有更多了 —
以下为对购买帮助不大的评价