HyperCard是一款麥金塔的應用程式和開發工具,最初于1987年發布,售價49.95美元。它融合了數據庫功能和一套圖形化、可擴展、可編輯的介面,同時還包括一種名叫HyperTalk的編程語言,用來操控數據和介面。HyperCard的特點是簡單的表單形式介面、數據庫功能和容易上手的編程功能,因此在各種場合得到了廣泛運用。有些用戶用HyperCard進行快速應用程式開發,有些用它來構建無需數據庫的互動程序、指令系統,或是設計各種展示場景。HyperCard啟發了沃德·坎寧安發展出Wiki。HyperCard是最早的超媒體系統之一,比萬維網還要早。HyperCard于2004年3月停止銷售,但在那之前它已經多年未被更新。HyperCard原生平臺是Mac OS versions 9或更早,也可在Mac OS X的經典模式下運行。
軟件介紹
HyperCard是一個麥金塔的應用程式,也是一套簡單的編程環境。原生平臺是Mac OS versions 9或更早(也可在Mac OS X的經典模式下運行)。這個應用程式概念上很像資料庫,能儲存資料。
但是與傳統資料庫不同,HyperCard是圖形式,有彈性而且易于編輯。HyperCard也包含一套強而易用的編程語言HyperTalk來控制資料與圖形使用者介面。使用者常用來快速開發程式而不是當資料庫。是80年代末期世界上最流行的超文本系統。1987年美國蘋果公司需要一個使它的計算機在市場上更具有吸引力的產品,因此導致了HyperCard的誕生。盡管HyperCard最初只是作為圖形編程環境設計的,并且為HyperCard設計的許多特性以及用HyrerCard建立的很多應用系統與超文本完全無關,但是HyperCard的流行使大批從來沒有聽說過超文本的人知道了超文本,把超文本的最基本的概念“節點”“鏈”帶給了廣大用戶,結束了超文本僅僅作為研究主題的狀況,被廣泛接受為一種新技術,并且在應用開發特別是教育系統的開發方面起到作用。HyperCard流行的原因之一是,從1987年到1992年蘋果公司隨每一臺銷售出去的機器奉送一套HyperCard。HyperCard流行的另一個原因是它提供了一種功能很強的腳本語言HyperTalk,很適于快速開發圖形界面的原型。但是,HyperCard不適于開發大型信息管理系統。HyperCard的節點是與屏幕一樣大小的卡片。卡片之間用“按鈕”連接。HyperCard提供有一些畫圖工具,這樣,就很容易設計包含有復雜圖形和正文的卡片。在HyperCard的卡片上,用戶可以設計命令按鈕。HyperTalk語言則用于編寫與命令按鈕相連的命令文件,例如:on mouse up、go to next card、end mouse up。
HyperCard包含一種名為HyperTalk的面向對象腳本語言,以其類似隨意的英語語法而聞名。HyperTalk語言特性由HyperCard環境預先確定,可以通過外部函數(XFCN)和命令(XCMD)擴展。HyperTalk支持大多數標準編程結構,如“if-then”和“repeat”,易于使用和閱讀。HyperTalk代碼段被稱為“腳本”,這個術語被認為對于初學者程序員來說不那么可怕。
發展沿革
HyperCard基于虛擬“卡片”堆棧的概念,卡片保存數據,類似于Rolodex卡片文件設備。每張卡片包含一組交互式對象,如文本字段、復選框、按鈕等GUI元素。用戶可以通過內置導航功能、搜索機制或腳本在卡片間導航。用戶可以添加新卡片,使用拖放界面在卡片上放置GUI對象。HyperCard還包括背景原型卡片,新卡片可以引用背景卡片,使得背景上的所有對象在新卡片后面顯示,便于創建具有共同布局和功能的卡片集。HyperCard的數據庫功能基于物理文件中所有卡片上的所有對象的狀態,不作為單獨系統存在。系統中任何對象的狀態都是實時和可編輯的,更改在完成后立即保存。HyperCard的腳本是堆棧中每個對象的單個攜帶代碼的元素,腳本內容以HyperTalk語言解釋。當用戶在GUI中調用操作時,HyperCard運行時將其轉換為事件,檢查目標對象的腳本是否包含事件的代碼,如果是,則運行處理程序。
HyperCard由比爾·阿特金森在一次LSD之旅后創造,工作于1985年3月開始,最初名為WildCard。1986年,丹·溫克勒開始了對HyperTalk的工作,并將其名稱更改為HyperCard。它于1987年8月11日在波士頓的MacWorld Conference & Expo發布,阿特金森承諾只有蘋果公司公司承諾在所有Mac上免費發布它時才會交給蘋果。HyperCard取得了成功,引起了一場信息饑餓狂潮。發布后不久,就有多本HyperCard書籍和一個包含50個公共領域堆棧的磁盤套裝。HyperCard 2.0于1990年發布,包括即時編譯器、新的調試器和對HyperTalk語言的改進。HyperCard IIGS面向教育市場,支持彩色圖形功能。Claris試圖創建一個業務模式,使HyperCard產生收入,但用戶對于支付傳統上免費提供的軟件感到不滿。HyperCard開始失去市場份額,作者轉向其他系統。蘋果公司最終將Claris重新合并到母公司,將HyperCard重新歸入蘋果的核心工程團隊。HyperCard 3.0嘗試重新啟動開發,但由于QuickTime團隊的注意力轉移,開發停滯了。1998年,史蒂夫·喬布斯決定放棄該產品,HyperCard工程團隊被重新分配。HyperCard的最后版本是在1998年發布的,于2004年3月完全停產。只能在經典Mac OS中本地運行,但它仍然可以在基于PowerPC的Mac OS X的經典模式中使用(G5及更早版本)。
功能服務
HyperCard已被用于一系列超文本和藝術目的。在Microsoft Office PowerPoint出現之前,HyperCard經常被用作通用演示程序。HyperCard應用的例子包括簡單的數據庫、“選擇你自己的冒險”類型的游戲和教育教學輔助工具。由于其快速應用程序設計功能,HyperCard經常被用于原型應用程序,有時甚至用于1.0版本的實現。在蘋果公司內部,QuickTime團隊是HyperCard的最大客戶之一。HyperCard的硬件要求低于Macromedia Director。一些商業軟件產品是在HyperCard中創建的,著名的是圖形冒險游戲myst的原始版本,Voyager Company的Expanded Books,貝多芬第九交響曲CD-ROM,披頭士的《A Hard Day's Night》多媒體CD-ROM,以及Voyager MacBeth。早期的《Whole Earth Catalog》的電子版是在HyperCard中實現的,并存儲在CD-ROM中。流行游戲《You Don't Know Jack》的原型和演示是用HyperCard編寫的。HyperCard可以通過外部命令(XCMD)和外部函數(XFCN)模塊進行擴展。這些是打包在資源叉中的代碼庫,可以集成到系統中或特定于HyperTalk語言;這是插件概念的早期示例。與傳統插件不同,這些模塊不需要單獨安裝即可使用;它們可以包含在堆棧中,直接可用于該堆棧中的腳本。在HyperCard的高峰期,許多供應商提供了成千上萬的外部模塊,如HyperTalk編譯器、圖形系統、數據庫訪問、Internet連接和動畫。外部模塊允許訪問麥金塔工具箱中的低級命令和函數,例如控制串行和ADB端口。
參考資料 >