Skip to content

cnhacktnt/modern_perl_book

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

什么是摩登 Perl?
--------------------

Perl 是一种流行且强大并被广泛使用的编程语言。在走过的20多年里,它给数百万系统提供动力,
推动着万亿美元的价值。更为重要的是,它帮助无数的人们高效地完成他们的任务。

Perl 社区因提供睿智解答而赢得良好声誉────同时也因对于各式新手来说不那么直白的专业领域知识
而出名。利用这些知识写就的摩登 Perl,会是十分清晰、可维护,并且相当高效。

这部分知识应该提供给每个人。本书将通过教你理解 Perl 的设计、语法、语义,使你学会如何更好
地写出 Perl 程序。

http://www.modernperlbooks.com/mt/2009/01/why-modern-perl.html


目标人群
-----------------

我假设读者对 Perl 有一定的熟悉程度。他们应该已经将 Perl 安装完成,并知道如何编写,
修改,保存和运行 Perl 程序。他们并不需要读完类似《Perl语言入门》(Learning Perl) 或是
《Beginning Perl》,但是他们应该对编程足够熟悉以便能沿着例子前进。

我尝试不对读者是否完全了解基本语法结构做出假设,而是详细地对它们进行解释。因为理解
设计与实现之微妙对于掌握 Perl 的主旨来说相当重要。


审稿人指南
-------------------

我衷心感谢每一条建议和意见,特别是:

 * 是否准确?
 * 是否完整?
 * 是否一致?
 * 缺少哪些章节和主题?
 * 例子是否有效?
 * 信息的流程是否合适?


生成本书
------------------

你需要安装一个Perl 的现代化版本。我推荐 Perl 5.10.1,但是新于 5.8.6 的版本都可以工作。

你应该也已经连同依赖模块一起安装完 Pod::PseudoPod 0.16 或更新版本。

从签出的最顶端目录,用下列命令生成独立的章节:

    $ perl build/tools/build_chapters.pl

源章节位于 sections/ 目录下。每章都对应一个 chapter_nn.pod 文件。每个文件都包含多个 POD
链接,指向 sections/ 目录下的其他文件。每一个被指向的文件都含有一个 PseudoPOD Z<> 锚点。

build_chapters.pl 程序将这些小节缝合为章,并将它们写到 build/chapters 目录下的 POD 文件中。

(此过程使得重排章节变得简单,并无须生成巨大的差异。)

从已缝合章节生成本书的 HTML 版本:

    $ perl build/tools/build_html.pl

此命令将在 build/html/ 目录下生成格式齐整的 HTML 文件。如果有什么不正常的地方,算作我的失误
(也可能是 CSS 问题),欢迎提交补丁。

从已缝合章节生成本书的 ePub 电子书版本:

    $ perl build/tools/build_epub.pl

此命令将在 build/epub/ 目录中生成一份 ePub 电子书。

从章节生成 PDF 文档:

    $ perl build/tools/build_pdf.pl

此命令将在 build/pdf 目录中生成 PDF 文档。你必须从 CPAN 安装完 App::pod2pdf 模块。


向 Modern Perl 做贡献
---------------------------

现在,本书稿以知识共享“署名-非商业性使用-禁止演绎 3.0 美国” (Creative Commons 
Attribution-Noncommercial-No Derivative Works 3.0 United States License) 许可发布。详见如下链接:

    http://creativecommons.org/licenses/by-nc-nd/3.0/us/

请随意向他人推荐本代码仓库。欢迎提交建议和贡献。请不要分发本稿的自行修改版本(可以用 git 来 fork
,但我请求你将补丁或 pull request 发送给我)。

本书由 Onyx Neon Press 印行后,将以一个更为宽松的许可提供:

    http://www.onyxneon.com/

Releases

No releases published

Packages

No packages published

Languages

  • Perl 99.7%
  • CSS 0.3%