SayCoo論壇

標題: Tcl/Tk簡介 [打印本頁]

作者: jianyi    時間: 2007-1-2 10:01
標題: Tcl/Tk簡介
Tcl歷史80年初伯克萊大學的 John Ousterhout教授在"積體電路"研究中,有感於當時CAD軟體在使用和設計上普遍存在一些不方便的地方。例如:不同的CAD工具可能有自己的命令語言,而且各個命令語言彼此可能是不相容的,這個問題會造成學習上的困擾。因此,John Ousterhout教授希望能夠有一套程式語可以決解這些問題,而他理想中的程式應該要有這些特色:
基於John Ousterhout教授的這些想法,所以Tcl (Tool Command Language) 就誔生了,當然上列的特色也就是Tcl的特色了。
Tcl是屬於直譯式的程式語言,就像早期的 Basic 一樣,所以在寫好 Tcl Script 後需要一個 Tcl 直譯程式執行您的 Tcl Script 。 而 Tcl 的直譯器叫做 tclsh。
剛有提到 Tcl 的程式很容易擴充,而 Tk 就是 Tcl 的擴充功能,它擴充了 Tcl 在寫 X Window 程式的能力,換句話說Tk 是一個在 X Window 下發展GUI程式的套件, Tk 可以幫助使用者很容易的寫出視窗化程式。而包含 Tk 能力的直譯器叫做 wish 。
在功能上 Tcl 除了包含上面所說的直譯器之外,還包含了一組介面清楚、容易使用的 Tcl C library ,這個 library的目的是讓使用者可以很容易的使用 C 來撰寫自己的 Tcl 命令,以增強 Tcl 直譯器的功能。另外 Tk 也同樣的包含了一組 Clibray 使用來建立自己的視窗元件 (Widget) 。雖然說 C library 的主要功能是讓您可以很容易的擴充 Tcl本身的功能,但它還隱含了一些使用目的,例如:Script 某些部分非常在意執行效率,此時透過 C Library 把要求效率的部份寫成新的Tcl 命令,然後在 Script 內使用新的 Tcl 命令來取代副程式呼叫,這樣就可以達到加速的目的了。另一個目的是,如果希望 Script內的某些程式碼片斷不想被人看到,可以用 C Library 撰寫要保密的部分。
Tcl/Tk 支援的平台Tcl/Tk 直譯器操作Tcl/Tk提供兩種方式讓您使用直譯器,分別是"一般模式"及"互動模式"。
TCL 語言成功的原因總結來說,TCL 語言就像是一瓶膠水一般,只要收集可以運用的應用程式與 TCL Package,在這些介面上塗塗抹抹,寫個簡單的 TCLScript (TCL 指令的集合),在短暫的時間內就可組裝出一個新工具來。因此寫 TCL Script 開發軟體的過程就像是在玩樂高積木一般。




歡迎光臨 SayCoo論壇 (https://family.saycoo.com/) Powered by Discuz! X3.3