本版「名稱」的由來與「宗旨」

探討「內嵌」以及「腳本化」這兩個主題的技術-版主XO老師(熟悉的目前是 Tcl,討論內容也會環繞在 Tcl 四周,但是本版還是歡迎其他 Scripting 語言以及任何「內嵌」技術的討論。)

版主: b80203, ghost3401, XO, maa

分享到: Facebook

本版「名稱」的由來與「宗旨」

文章XO » 週二 5月 11, 2004 1:40 am

新版「名稱」與「宗旨」如下:

E-Office 學園 「內嵌與腳本化(Embedding & Scripting)」

在一片「物件化」(Object Oriented)與「元件化」(Component/Object Based)的聲浪中,應用程式的開發越來越像玩Lego。

製造商負責生產及開發各式各樣的「組件」(Component),明訂組件之間銜接的「介面」(Interface),玩家則利用這些既有的零組件,把想像中的創意「組裝」(Assemble) 出來。

組裝出來的汽車、城堡、人物 … 裡,有著許多不同複雜層次的「元件」,常被拿來「重重覆覆的使用」(Reuse),例如汽車的輪子在一部車子裡被重複四次,稍做變化:像是加大、變寬、換顏色 … 之後,可被「重複使用」的場合更多。早些年(1980~1)老師還在美國唸書的時候,印象中可以買的好像只有很陽春的 Lego 元件,了不起買一大桶時,還會附上個說明書,列示一些可以組合出來示範樣品的圖片,以及「組裝步驟」,這個步驟有一點兒像是影劇界裡的「腳本」(Script),只要照著劇本「演出」就可做出一個個一模一樣的成品。 (按:腳本與劇本好像是海峽兩岸對 Script 的不同翻譯)

許多年後Lego 公司生產製作的元件更趨多元與複雜化,原來需要複雜腳本才可以做出來的人物與車輪,這會兒功夫變成出廠的基本元件,用這些高檔元件,一個簡單腳本就可以把整座城市描繪得淋漓盡緻。

物件化或元件化的程式開發非常類似於Lego玩具的作法,這裡面廠商提供的軟體開發工具多半都會提供一個元件類別庫(Class Library)(蓋所謂將元件加以分門別類整理成「庫」),然後有一個本體語言(VB, Pascal, C++,…)來調用各式元件,並在元件之間穿插交織出一個劇情來,這個具體劇情的腳本正是所謂的「應用程式」是也!

在GUI花俏的使用者介面背後,潛藏的一個危機,那就是要綁住一個操作她的使用者(這不正是那花俏介面所要訴求的「友善」介面的目的:吸引「使用者」呀!),當您在用 Windows 2003 Server 很友善的介面,在為新進同仁新增一個帳號時,Point & click, drag & drop 乍看之下也許很「友善」,如果這個月一下子來了十位新同仁,你可能就會想:要是能來個預先寫好的「腳本」給個十個名字,讓那個腳本「自動地」(無須人工介入)情況下,重複做個十次,豈不更好!

沒錯應用程式是應該要有一個「友善」的使用者介面!但是要讓使用這個程式變得可以自動化,支援腳本語言的能力,就變得非常重要。

一個應用程式的開發,常是非常耗費時日,要專案 On time, within budget已經夠嗆的啦,假如還要為這應用程式添加具有自動化的腳本語言能力,這無疑像是在傷口上抹鹽!

可喜的是近幾年來 Scripting 技術的不斷精進,推陳出新,現在即便是要讓一個已經存在許久的專屬應用系統(Legacy Application)也具備自動化的能力,已經不是那麼困難啦!關鍵就在內嵌(Embedding)技術:把一個已經發展得非常完整的 Scripting Language 內嵌到您的應用系統裡去。

本版的宗旨顧名思義,就在於探討「內嵌」以及「腳本化」這兩個主題的技術。雖然我最近的心得多半來自 Tcl(Tool Command Language)這個腳本語言,將她「內嵌」到咱們一個智慧型控制器裡的經驗,也還是處於吸收日月精華的階段,我還是抱著拋磚引玉的精神,在此戰戰兢兢地擔任個引言人,歡迎大家共襄盛舉!主題內容倒也不限定非 Tcl 相關不可,雖然我還是必須再度重伸我熟悉的目前只是 Tcl,我的討論內容也會環繞在 Tcl 四周,但是本版還是歡迎其他 Scripting 語言以及任何「內嵌」技術的討論。
eXtra Old 的是我「不是酒」哦!
제 이름은 오조휘 입니다

臉書裡依舊是 Extra.Old: http://www.facebook.com/extra.old
頭像
XO
資管系教師
 
文章: 5352
註冊時間: 週二 4月 27, 2004 12:20 pm
來自: CQ Inc.

回到 內嵌與腳本化(Embedding & Scripting)

誰在線上

正在瀏覽這個版面的使用者:沒有註冊會員 和 1 位訪客