啰嗦几句

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. [对对子队]Beta阶段项目展示博客

    Beta阶段项目展示博客 1 团队成员的简介和个人博客地址 成员 头像 岗位 博客 个人介绍 黄贤昊 PM 17373253 喜欢玩游戏和做游戏,项目经验基本都和游戏相关,擅长摸鱼,偶尔敬业. 吴桐雨 ...

  2. 2021.8.3考试总结[NOIP模拟29]

    T1 最长不下降子序列 数据范围$1e18$很不妙,但模数$d$只有$150$,考虑从这里突破. 计算的式子是个二次函数,结果只与上一个值有关,而模$d$情况下值最多只有$150$个,就证明序列会出现 ...

  3. MOSFET管驱动电路的设计

    https://wenku.baidu.com/view/ae727da5caaedd3382c4d3b9.html?mark_pay_doc=2&mark_rec_page=1&ma ...

  4. Linux基础是零基础必须要过的关,你懂了多少

    #LINUX基础学习 ##命令行下的基础知识 Linux区分英文的大小写. date :查看时间 cal:查看日历 [Tab] 热键 :可以自动补全命令名和文件名 [Ctrl]+C 热键 :可以中断正 ...

  5. series和读取外部数据

    1.为什么学习pandas 我们并不是不愿意学习新的知识,只是在学习之前我们更想知道学习他们能够帮助我们解决什么问题.--伟哥 numpy虽然能够帮助我们处理数值,但是pandas除了处理数值之外(基 ...

  6. matplotlib.legend()函数用法

    用的较多,作为记录 legend语法参数如下: matplotlib.pyplot.legend(*args, **kwargs) 几个暂时主要用的参数: (1)设置图例位置 使用loc参数 plt. ...

  7. mdev 响应热插拔事件

    热插拔事件是从内核空间发送到用户空间的通知,一般这时候系统配置出现了变化,比如插入/移除耳机,插入/移除SD卡或者USB存储设备等. 热插拔事件默认会调用/sbin/hotplug来加载驱动程序,创建 ...

  8. si macro macro

    获取 buf 里的 symbol cbuf = BufListCount() msg(cbuf) ibuf = 0 while (ibuf < cbuf) { hbuf = BufListIte ...

  9. Typora使用教程

    Typora简介 Typorn 是一款轻便简洁的Markdown编辑器,支持及时渲染技术,这也是与其他Markdown编辑器最显著的区别.及时渲染使得你写Markdown就像是写Word文档一样流畅自 ...

  10. 超过1W字深度剖析JVM常量池(全网最详细最有深度)

    面试题:String a = "ab"; String b = "a" + "b"; a == b 是否相等 面试考察点 考察目的: 考察对 ...