啰嗦几句

Perl的时代已经过去,现在年轻的同事们基本上都在用Python了。但个人认为单就生物信息文本处理而言,Perl语言是绝对够用的。最主要的是,前辈们搭建的流程大多数是Perl写的,因此,如果从事流程维护和升级的工作,掌握Perl是必不可少的。即使领导也提出过全面改用Python,这么多流程,这么多脚本,谈何容易!当然,Python也是必学的,因为流程中也嵌套了不少python脚本,现在大部分流程的主程基本是Python来控制了。

总之,若要在流程搭建和维护升级的工作中游刃有余,Shell、Perl、R、Python四大语言一样都不能落下。

Perl大骆驼一览

小骆驼是基础,但肯定是远不够用的。大骆驼呢,厚达近千页,也不可能从头到尾精读。只能在工作中边学边练,碰到不懂的再翻翻书了。

这里简单记录下大骆驼的框架内容:

第一部分 Perl概述

文件句柄
操作符
控制结构
正则表达式
列表

第二部分 Perl细节

基础:原子、分子、数据类型、变量、名字、标量变量、上下文、列表和数组、散列、文件句柄、输入操作符

一元和二元操作符:列表、绑定、乘除、加减、移位、文件测试、关系、相等、智能匹配、范围、条件、赋值、逗号。

语句:简单、复合、if/unless、given、循环、goto、省略
声明:全局、作用域 模式匹配:正则表达式、操作符、元字符、位置、分组捕获、候选项、保持控制 Unicode:略 子例程:语法、传引用、原型、属性 引用:创建、硬引用、符号引用、大/中括号、引号 数据结构:数组的数组、数组的散列、散列的数组、散列的散列、函数的散列、保存结构 包:符号表、限定名、默认包、改变包、自动加载 模块:加载、上传、创建、覆盖内置函数 对象:perl对象系统、对象构造、类继承、析构函数 重载:处理方法、操作符、常量、公共函数、重载诊断 绑定变量:标量、数组、散列、文件句柄

第三部分 Perl技术

进程管理:信号、文件、管道

编译:生命周期、编译代码、执行、后端、代码、字节码生成器、开发工具

命令行接口:命令处理、环境变量

Perl调试器:命令、定制、支持、性能测试

CPAN:存储库、生态、安装模块、创建模块

第四部分 Perl文化

安全:处理数据、处理计时、处理代码

实践:常见失误、效率、风格、老练、程序生成

可移植perl:换行符、顺序与宽度、文件(系统)、系统交互、进程通信、标准模块、时间日期、国际化

Pod:pod核心、转换器和模块、编写工具、陷阱、建立文档

Perl文化:品质

第五部分 参考资料

特殊名:类型分组、字母顺序排列

格式:字符串、二进制、形象

函数:按类别、按字母顺序

标准库:术语、perl库

实现Pragma模块

全书整体对Perl的各个方面进行了详细阐述,目前在我看来perl细节是应该认真看的,重点是模式匹配、引用和数据结构

但我真的不喜欢Larry这种叙事风格啊,也许是老外惯有的所谓的幽默吧,我丝毫感觉不到好笑,甚至有点尴尬。

Perl语言编程(大骆驼)的更多相关文章

  1. Perl语言编程>>学习笔记2

    1. Perl中变量的常用表示  ${var} 相当于 $var  $Dog::days  在Dog包里面的变量$days  $#days  @days 的最后一个索引  ]  $days 引用的数组 ...

  2. Perl语言编程>>学习笔记

    1. 使用反引号可以调用外部程序并返回程序的输出, 如  $cwd = `pwd`; 2. Perl 中的变量类型之间的区别主要是单数和复数; 单数变量称为标量 $scalar , 复数变量称为数组 ...

  3. perl语言书籍教程推荐

    互动出版网计算机频道.为您推荐关于perl语言的书籍教程.包括perl push.perl chomp以及perl python等perl语言内容. perl语言书籍一.<Perl语言编程 第四 ...

  4. 9 本免费的 Python 语言编程书籍(转载)

    9 本免费的 Python 语言编程书籍 原文地址:http://linuxtoy.org/archives/9-free-python-books.html 2010-03-03 Toy Poste ...

  5. R语言编程艺术(2)R中的数据结构

    本文对应<R语言编程艺术>第2章:向量:第3章:矩阵和数组:第4章:列表:第5章:数据框:第6章:因子和表 ======================================== ...

  6. C/C++语言编程的隐患!

    C/C++语言编程的隐患! 本文将带您了解一些良好的和内存相关的编码实践,以将内存错误保持在控制范围内.内存错误是 C 和 C++ 编程的祸根:它们很普遍,认识其严重性已有二十多年,但始终没有彻底解决 ...

  7. 个人c语言编程风格总结

    总结一下我个人的编程风格及这样做的原因吧,其实是为了给实验室写一个统一的C语言编程规范才写的.首先声明,我下面提到的编程规范,是自己给自己定的,不是c语言里面规定的. 一件事情,做成和做好中间可能隔了 ...

  8. LINUX下C语言编程基础

    实验二 Linux下C语言编程基础 一.实验目的 1. 熟悉Linux系统下的开发环境 2. 熟悉vi的基本操作 3. 熟悉gcc编译器的基本原理 4. 熟练使用gcc编译器的常用选项 5 .熟练使用 ...

  9. 第二章 C语言编程实践

    上章回顾 宏定义特点和注意细节 条件编译特点和主要用处 文件包含的路径查询规则 C语言扩展宏定义的用法 第二章 第二章 C语言编程实践 C语言编程实践 预习检查 异或的运算符是什么 宏定义最主要的特点 ...

随机推荐

  1. 80. 删除有序数组中的重复项 II

    题目 给你一个有序数组 nums ,请你原地删除重复出现的元素(不需要考虑数组中超出新长度后面的元素),使每个元素最多出现两次 ,返回删除后数组的新长度. 不要使用额外的数组空间,你必须在原地修改输入 ...

  2. 航胥:北航教务助手——Beta阶段发布声明

    下载地址在文章末尾! 这里是"航胥",一款更想要了解你的北航教务助手 Beta阶段,我们进化了! Beta阶段我们的新功能有: 课程评价功能 所有用户选过的课程都会在课程评价页面进 ...

  3. [技术博客]Django框架-后端的搭建

    目录 Django框架-后端的搭建 前言 环境的部署 项目的创建 app的使用 创建app 修改配置文件 app中数据表的构建 前端接口 接口的路径 运行服务器 验证后端 Django框架-后端的搭建 ...

  4. OO第三次博客作业--第三单元总结

    一.JML 语言的理论基础及应用工具链 JML 是一种行为接口规格语言,提供了对方法和类型的规格定义手段.通过 JML 和其支持工具,不仅可以基于规格自动构造测试用例,并整合了 SMT Solver ...

  5. SpringCloud微服务实战——搭建企业级开发框架(十一):集成OpenFeign用于微服务间调用

    作为Spring Cloud的子项目之一,Spring Cloud OpenFeign以将OpenFeign集成到Spring Boot应用中的方式,为微服务架构下服务之间的调用提供了解决方案.首先, ...

  6. yum history使用详解(某次为解决误卸载软件的回退实验)

    [root@localhost ~]# yum history list #查看历史 Loaded plugins: fastestmirror ID | Command line | Date an ...

  7. 第01课 OpenGL窗口(1)

    教程的这一节在2000年一月彻底重写了一遍.将会教您如何设置一个 OpenGL窗口.它可以只是一个窗口或是全屏幕的.可以任意 大小.任意色彩深度.此处的代码很稳定且很强大,您可以在您所有的OpenGL ...

  8. x64 InlineHook 黑魔法

    目录 x64 InlineHook 黑魔法 为什么不能用X86 的HOOK方式? 原理:jmp + rip 进行寻址6字节方式跳转 手动InlineHook 临时地址x(找一块空内存) 计算偏移 源地 ...

  9. .NET 开源工作流: Slickflow流程引擎高级开发(九) -- 条件事件模式解释及应用

    前言:在流程流转过程中,有时候需要条件模式的支持,这样可以使得流程流转更加灵活多变.比如在业务变量满足一定的条件时,可以启动特定配置的流程(或者位于主流程内部的子流程).本文主要描述条件启动和条件中间 ...

  10. 合并代码操作 | git fetch 与 git pull

    前言 首先我们要说简单说git的运行机制.git分为本地仓库和远程仓库,我们一般情况都是写完代码,commit到本地仓库(生成本地仓的commit ID,代表当前提交代码的版本号),然后push到远程 ...