(1)Perl語言概述與環(huán)境搭建:了解Perl語言的發(fā)展歷程、設(shè)計哲學及其在文本處理、系統(tǒng)管理、生物信息學、Web開發(fā)等領(lǐng)域的廣泛應(yīng)用。掌握Perl“實用而非精致”的設(shè)計理念及其結(jié)合了C、sed、awk、sh等語言優(yōu)點的特性。學習在Windows平臺安裝Strawberry Perl/ActivePerl,在Linux/macOS平臺配置Perl環(huán)境。掌握編寫第一個Perl腳本hello.pl的方法,理解#!/usr/bin/perl shebang機制、use strict;和use warnings;編譯指令的作用。學習使用perl -v查看版本、perldoc獲取幫助文檔的基本用法。
(2)標量數(shù)據(jù)類型:深入理解Perl中變量類型由上下文決定的動態(tài)類型特性。掌握標量(Scalar)的概念及其命名規(guī)范($開頭)。學習標量的兩種核心類型:數(shù)字(整數(shù)、浮點數(shù))與字符串。掌握數(shù)字運算操作符(+、-、*、/、%、**)和字符串操作符(.連接、x重復(fù))。學習字符串的引號規(guī)則:單引號原樣輸出、雙引號變量內(nèi)插。掌握chomp去除換行符、scalar強制標量上下文的用法。
(3)數(shù)組與列表:掌握數(shù)組(Array)的概念及其命名規(guī)范(@開頭)。學習數(shù)組的創(chuàng)建方式:直接賦值(@array = (1, 2, 3))、qw//簡寫。掌握數(shù)組元素的訪問($array[0])、數(shù)組長度獲取($#array、scalar @array)。學習數(shù)組的常用函數(shù):push/pop(尾部添加/刪除)、shift/unshift(頭部刪除/添加)、splice(任意位置操作)、reverse(反轉(zhuǎn))、sort(排序)。理解列表上下文對操作符行為的影響。
(4)哈希數(shù)據(jù)結(jié)構(gòu):理解哈希(Hash)作為鍵值對存儲的核心價值及其命名規(guī)范(%開頭)。掌握哈希的創(chuàng)建與訪問方式:%hash = ('key1', 'value1', 'key2', 'value2')或使用胖箭頭=>。學習哈希元素的訪問($hash{'key'})、遍歷哈希(keys、values、each函數(shù))。掌握哈希的常用操作:判斷鍵是否存在(exists)、刪除鍵值對(delete)。了解多維哈希的實現(xiàn)方法。
(5)控制結(jié)構(gòu):掌握Perl的條件判斷語句:if/else/elsif結(jié)構(gòu),unless作為反向判斷的替代。學習真值與假值的定義(undef、空字符串、0、空數(shù)組均為假)。掌握循環(huán)控制:for循環(huán)、foreach循環(huán)、while循環(huán)、until循環(huán)。學習循環(huán)控制關(guān)鍵字:last(退出循環(huán))、next(進入下一次迭代)、redo(重新執(zhí)行本次迭代)。掌握循環(huán)嵌套與標簽的使用方法。
(6)文件輸入輸出:掌握文件句柄(Filehandle)的概念與打開文件的三種模式:讀取(<)、寫入(>)、追加(>>)。學習使用open函數(shù)打開文件、die函數(shù)處理錯誤。掌握文件讀取方式:行輸入操作符<FILEHANDLE>、read函數(shù)、一次性讀取整個文件。學習文件寫入操作:print、printf格式化輸出。掌握標準輸入輸出流(STDIN、STDOUT、STDERR)的使用。學習關(guān)閉文件句柄(close)。
(7)正則表達式核心:深入理解正則表達式作為Perl核心優(yōu)勢的設(shè)計理念。掌握模式匹配操作符m//(簡寫為//)的基本用法。學習元字符的含義與使用:.(任意字符)、*(零次或多次)、+(一次或多次)、?(零次或一次)、|(選擇)、()(捕獲分組)、[](字符類)。掌握量詞的貪婪匹配與非貪婪匹配(*?、+?)。學習替換操作符s///的用法,實現(xiàn)文本替換與數(shù)據(jù)清洗。
(8)正則表達式進階:掌握模式綁定操作符=~和!~的使用。學習捕獲變量的應(yīng)用:$1、$2等引用分組捕獲內(nèi)容。掌握正則表達式修飾符:/i(忽略大小寫)、/g(全局匹配)、/m(多行模式)、/s(單行模式)、/x(寬松模式)。學習在列表上下文中使用全局匹配獲取所有匹配項。了解環(huán)視斷言(Lookaround)的基本概念及其在復(fù)雜文本處理中的應(yīng)用。
(9)子程序:掌握子程序(Subroutine)的定義與調(diào)用方法,使用sub關(guān)鍵字定義、&符號調(diào)用(可省略)。學習參數(shù)傳遞機制:所有參數(shù)存儲在@_數(shù)組中。掌握參數(shù)接收方式:直接操作@_或賦值給私有變量。學習返回值的使用:默認返回最后表達式值,也可顯式使用return。掌握my聲明私有變量、local臨時修改變量、our聲明全局變量的區(qū)別與適用場景。
(10)引用與復(fù)雜數(shù)據(jù)結(jié)構(gòu):理解引用(Reference)作為構(gòu)建復(fù)雜數(shù)據(jù)結(jié)構(gòu)的基礎(chǔ)。學習創(chuàng)建引用的方法:反斜杠操作符\、匿名數(shù)組引用[]、匿名哈希引用{}。掌握解引用的方式:使用對應(yīng)數(shù)據(jù)類型符號(@$aref、%$href)或箭頭操作符(->)。學習多維數(shù)組的實現(xiàn):數(shù)組的數(shù)組、數(shù)組的哈希、哈希的哈希、哈希的數(shù)組。
(11)模塊化編程與CPAN:理解Perl模塊的概念及其在代碼復(fù)用中的核心價值。掌握標準模塊的加載方法:use Module;與require Module;的區(qū)別。學習使用perldoc Module查看模塊文檔。了解CPAN(Comprehensive Perl Archive Network)作為Perl模塊生態(tài)的核心地位。掌握使用cpan命令安裝第三方模塊的方法。學習編寫自定義模塊:創(chuàng)建.pm文件、使用package關(guān)鍵字、正確返回值1;。
(12)面向?qū)ο驪erl:理解Perl中面向?qū)ο蟮膶崿F(xiàn)方式(基于包的類、基于引用的對象)。學習使用bless函數(shù)將引用與類關(guān)聯(lián)。掌握構(gòu)造函數(shù)的定義(通常命名為new)與調(diào)用。學習方法的定義與調(diào)用($obj->method)。了解繼承的實現(xiàn):使用@ISA數(shù)組指定父類。通過完整案例(如生物信息序列對象或系統(tǒng)管理任務(wù)對象)實踐面向?qū)ο驪erl編程。
(13)系統(tǒng)管理與自動化任務(wù):掌握Perl在系統(tǒng)管理中的典型應(yīng)用。學習使用內(nèi)置變量$0(程序名)、$$(進程ID)、$<(用戶ID)。掌握進程間通信:system函數(shù)執(zhí)行外部命令、反引號``捕獲輸出。學習文件系統(tǒng)操作:-e、-f、-d等文件測試操作符、glob函數(shù)文件通配。實踐編寫自動化備份腳本、日志分析工具。
(14)數(shù)據(jù)庫接口與Web應(yīng)用:了解Perl的數(shù)據(jù)庫接口DBI(Database Interface)模塊的使用。掌握連接數(shù)據(jù)庫、執(zhí)行SQL查詢、獲取結(jié)果集的基本流程。了解CGI編程在Perl中的傳統(tǒng)應(yīng)用,掌握使用CGI模塊生成動態(tài)網(wǎng)頁的基本方法。了解現(xiàn)代Perl Web框架(如Catalyst、Dancer)的基本概念。
(15)生物信息與BioPerl:了解Perl在生物信息學領(lǐng)域的廣泛應(yīng)用及其作為該領(lǐng)域事實標準語言的地位。掌握BioPerl模塊的安裝與使用。學習使用BioPerl處理序列數(shù)據(jù)(FASTA格式解析、序列翻譯、反向互補)。了解構(gòu)建生物信息分析流程的基本方法。
(16)綜合項目實戰(zhàn):結(jié)合學員專業(yè)背景,完成一個完整的Perl應(yīng)用項目(如系統(tǒng)管理員日志分析腳本、生物信息序列處理工具、文本數(shù)據(jù)清洗轉(zhuǎn)換程序)。涵蓋需求分析、模塊設(shè)計、編碼實現(xiàn)、測試調(diào)試的全流程,形成規(guī)范的Perl項目報告。