Posted on 2007-12-25 13:57
江邊之鳥 閱讀(616)
評論(0) 編輯 收藏 引用
對軟件工程來說,腳本語言相當(dāng)于輸送管,他們強大的富有表現(xiàn)力的語法是他們能夠比較理想地處理軟件開發(fā)過程中的外圍特殊任務(wù)。腳本語言常用于批處理、小工具包、自動構(gòu)建過程和實驗性原理等。
C#/C++/VB顯然是.net項目的主要語言,他們都是很強的靜態(tài)類型編程語言。然而實際中的某些問題,這些語言解決起來并不時很理想,這時引入其他的語言和概念無疑是有幫助的。
下面是一些適合使用腳本語言的例子:
1、 試驗用戶界面模型
2、編寫代碼生成器
3、編寫自動測試腳本
4、可控制批處理
5、特定報表生成
6、自動編譯和發(fā)布過程
腳本語言的主要特性包括:
1、強大的語言構(gòu)建能力和自由的語法
2、富于表現(xiàn)力的語法
3、松散類型
4、解釋而不是編譯執(zhí)行
在過去的幾年中,軟件行業(yè)誕生了大量的腳本語言。下面是一些廣為人知并受到高度評價的腳本語言
1、Python
2、Perl
3、Ruby
4、Tcl
下面介紹一個.net平臺之上,使用類似Python語法的一個全新的靜態(tài)語言Boo。
官方定義:
Boo is a new object oriented statically typed programming language for
the Common Language Infrastructure with a python inspired syntax and a
special focus on language and compiler extensibility. 網(wǎng)站:
http://boo.codehaus.org/Home?nocache
從定義可以看出,Boo一方面可以獲取動態(tài)語言,例如類似Python這樣的語言語法方面的優(yōu)勢,例如一些內(nèi)建數(shù)據(jù)結(jié)構(gòu);另一方面,其又是有類型的靜態(tài)
語言(通過Duck類型支持運行時類型識別等動態(tài)語言的特征,個人覺得類似VB的Variant類型),具有速度等方面的優(yōu)勢。
Boo作為靜態(tài)語言,具有類型安全,速度等優(yōu)勢,而通過推導(dǎo)(inference)來模擬或者模仿動態(tài)語言的特性。Boo的文檔,網(wǎng)站,例子做得很好,而且已經(jīng)有了一些應(yīng)用,例如#Develop的插件。Boo Primer〔
http://boo.codehaus.org/Boo+Primer?nocache〕是一份很詳細(xì)的Boo的入門文檔。Boo目前在#Develop下有Addin支持,可以作為其IDE。目前,已經(jīng)有很多使用Boo創(chuàng)建的程序:
http://boo.codehaus.org/Boo+Applications?nocache參考:
http://maweifeng.cnblogs.com/archive/2006/01/31/324461.html http://boo.codehaus.org/BooManifesto.pdf