Python, Java, Life, etc

          A blog of technology and life.

          BlogJava 首頁 新隨筆 聯(lián)系 聚合 管理
            30 Posts :: 0 Stories :: 9 Comments :: 0 Trackbacks

                  Bioperl 最近已經到了1.0版,先說bioperl.org,該組織正式成立于1995年,在此之前已經作為非正式的團體存在那很多年,現在他已經形成了一個國際 性的開發(fā)者的協(xié)會,這些開發(fā)者開發(fā)用于生物信息學,基因組學,和生命科學研究的開放源碼的Perl 工具.

           該組織的支持者和推動者是Open Bioinformatics Foundation. 他們的伙伴還有biojava.org, biopython.org, DAS, bioruby.org, biocorba.org, ENSEMBL 和 EMBOSS.

          Bioperl的服務器提供供下列服務,用于生命科學的基于perl的模塊,腳本,web聯(lián)接的軟件.

          Bioperl現在已發(fā)展成為一個令人矚目的國際性的自由軟件開發(fā)計劃,bioperl在生物信息學的使用加速了生物信息學、基因組學以及其他生命 科學研究的發(fā)展。最近bioperl 1.0版本正式發(fā)布,這其間歷時七年,成績斐然。Bioperl 1.0 包括832個文件,93個Script,功能豐富,源碼全部開放。它是生物信息學研究的利器。詳細的內容大家可以訪問www.bioperl.org

          Bioperl作為perl的擴充的專門用于生物信息的工具與函數集,自然也繼承了perl的眾多優(yōu)點.

          第一. Perl強大的正則表示式(regular expression)比對以及字符串操作使這個工作變得簡單而沒有其它語言能相比。Perl 非常擅長于切割,扭轉,絞,弄平,總結,以及其它的操作文字文件。生物資料大部分是文字文件:物種名稱,種屬關系,基因或序列的注解,評住,目錄查閱, 甚至DNA序列也是類文字的。現在互相交換以以文字文件的形式存在的但是具有不兼容的資料格式生物信息資料是一個很頭疼的問題,perl的這個方面的優(yōu) 點,可以在這一方面解決不少問題.

          第二. Perl 能容錯。生物資料通常是不完全的,錯誤或者說誤差從數據的產生時候可能就產生了.另外生物數據的某項值欄位可以被忽略 ,可能是空著的,或是某個欄位也就是某個值,被預期要出現好幾次(舉例來說,一個實驗可能被重復的操作),或是資料以手動輸入所以有錯誤。Perl并不介 意某個值是空的或是有奇怪的字符。正規(guī)表示式能夠被寫成取出并且更正錯誤的一般錯誤。當然這種彈性也可能是各壞處。


                 還有,Perl 是組件導向的。Perl 鼓勵人們將他們的軟件寫成小模組,不論是用 Perl 函式庫模組或是正統(tǒng)的 Unix 工具導向的方式。外部程序能夠輕易的被整合進 Perl 程序,靠著管道(pipe),系統(tǒng)呼叫,或是插座(socket)。Perl5 引進的動態(tài)載入器允許人們使用 C 的函式,或者讓整個編程過的函式庫,被使用在 Perl 直譯器中。最近的成果是世界各地的智能結晶都會收錄在一組模組里面,稱為”bioPerl”(請參考 Perl Journal)
                  Perl 很容易去寫并且能很快開發(fā)完。直譯器讓你不需要宣告你所有的函數型式以及資料型態(tài),當未定義的函式被呼叫時只會引起一個錯誤,除錯器也能與Emacs很好 的合作并且讓你能用令人舒服的交談式的開發(fā)模式。
                   Perl 是良好的原型語言。因為它快而且臟(quick and dirty),用 Perl 建構新演算的原型比直接寫成一個快的需要編程過的語言來的有意義。有時候發(fā)現結果是Perl已經夠快了,所以程序變不需要移植;更多情形是某人可以用C寫 一個小的核心程序,編程成動態(tài)載入的模組或是外部的可執(zhí)行程序,然后其它的部分用Perl來完成。這部分的例子可以參考 http://waldo.wi.mit.edu/ftp/distribution/software/rhmapper/)。

                   有一點要強調的是, Perl 在寫作網頁 CGI 方面非常優(yōu)秀,而且重要性隨著各實驗將資料發(fā)表在網絡上之后更是增加。我在基因中心環(huán)境下使用 Perl 的經驗從頭到尾都是值得稱贊的。然而我發(fā)現 Perl 也有它的問題。它的松散的程序風格導致許多錯誤,這些在其它嚴格的語言都會被抓到。舉例來說,Perl 讓你在一個變數在被指定值之前就能使用,這是個很有用的特性當你需要的時候,但是卻是一個災難當你單純的打錯了辨識名稱。同樣的,很容易忘記要宣告一個函 式里面的區(qū)域變數,導致不小心地改到了全域變數。
              最后,Perl 的不足之處在于建立圖形化的使用者接口。雖然 Unix忠實信徒所有事情都能在命令模式下完成,大多數的終端使用者卻不同意。視窗,選單,彈跳的圖案已經變成了必要的時尚。


                   直到最近,直到最近,Perl 的使用者界面(GUI)發(fā)展仍是不成熟的。然而 Nick Ing-Simmons的努力使得 perlTK(pTK) 的整合使得以 Perl 驅動的使用者接口在 X-window上面成為可能。我的伙伴和我曾經在 MIT 基因中心寫過幾個 pTK 為基礎的應用程序供互連網使用者,而且從頭到尾都是一個令人滿意的經驗。其它的基因中心則更大規(guī)模的使用 pTK,在某些地方已經成為主要的生產力。

          posted on 2005-02-18 06:29 pyguru 閱讀(602) 評論(0)  編輯  收藏 所屬分類: Bioinformatics
          主站蜘蛛池模板: 双鸭山市| 京山县| 轮台县| 理塘县| 淮阳县| 太谷县| 东乡| 海阳市| 三穗县| 枣强县| 宁远县| 区。| 五大连池市| 新巴尔虎左旗| 马公市| 阿拉善左旗| 获嘉县| 怀远县| 堆龙德庆县| 丰台区| 合水县| 贺兰县| 仪陇县| 舞钢市| 垣曲县| 青龙| 富顺县| 崇明县| 巧家县| 高碑店市| 旬阳县| 平陆县| 德庆县| 延庆县| 义马市| 英德市| 麻江县| 垣曲县| 虎林市| 三明市| 茶陵县|