第六章 RFID 技術於建築物生產履歷之資訊系統雛形
第五節 系統開發工具
本節將介紹本研究所採用系統開發工具 Visual Studio.NET 之整體架構,而 動態網頁系統採用 ASP.NET 動態網頁技術作為開發工具,以下分別針對系統架 構及系統開發工具作簡介。
一、 Visual Studio.NET
Visual Studio.NET 套裝軟體主要是由程式語言、各類應用程式設計工具、
微軟發展之新一代運算帄台.NET Framework 三部份所組成。
由於網際網路的普及,形成許多網路應用程式是由不同公司使用不同程式 語言(例如:C++、VB、Java….等)所開發出來,正因為開發程式與設計工具的 不同,往往造成網路不同帄台之間溝通上的困難。例如:在網路上執行一個應 用程式時,系統卻出現「無法執行此程式,因為缺少…驅動元件,請先下載或更 新..」的訊息,為了改善上述的情況,並且讓電腦與通訊設備能彼此整合、應用 程 式 順 暢 的 跨 帄 台 運 作 , 微 軟 公 司 便 架 構 了 新 的 運 算 帄 台 .NET Framework。.NET Framework 運算帄台主要透過網路共通 XML( eXtensible Markup Language,延伸標記語言)來進行資料的傳遞與轉換,因此不論軟體工 程師用何種語言來開發應用程式,只需利用 Visual Studio.NET 進行整合與建 置,一旦通過測詴就可以在網路上,讓不同作業系統的使用者執行,不需撰寫 各 作 業 系 統 間 所 要 使 用 的 驅 動 程 式 ( 林 福 全 等 , 2004) 。 表 6.8 為 Visual Studio.NET 開發工具與說明。
88
表 6. 8 Visual Studio.NET 完整開發工具的架構與運作 Visual Studio.NET 完整開發工具(三大架構說明表) (A)程式語言開發工具 (B)應用程式設計工具
(C)架構在.NET Framework 後端的運算帄台
Common Language Runtime:是.NET 程式的執行引擎,負責管理記憶體、
程式碼執行編輯、孜全驗證…等功能。
.NET Framework 類別庫:設計者可利用它來開發 windows 使用者介陎的應 用程式、Web Form 應用程式和 XML Web Service…等應用程式。
ASP.NET:幫助使用者在 Web 上建置 ASP Web 應用程式。
ADO.NET:用來建立分散式資料的資料庫應用程式。
.NET 整合式開發環境(Integrated development Environment ,簡稱 IDE)可以輕 鬆整合程式,完成可跨帄台執行的方案程式。
(資料來源:林福全等,2004)
二、 .NET Framework
.NET 代表者微軟下一代針對 Windows 與 Internet 應用程式的開發帄台,對 開發者而言,微軟詴圖以.NET 來簡化應用程式的開發與部署,並使用 Web 服務 以做為設計與部屬以做為分散式應用程式最好的方法。微軟將 Windows 開發帄
台重新設計成新的.Net Framework,在這個架構中包含了執行環境、更新的 (Updated)程式語言,以及為數眾多的類別庫。對開發者而言,他是一組系統服 務、類別以及資料型別,以提升開發者的生產力,因為.NET 處理了很多讓元件 能夠交互運作/擴充的、低階的細節問題,讓開發者可以集中心力在功能的開發 (Gabriel et al..,2002)。.NET Framework 是一個「層級」(Layered)分明的類別與服 務系統,以作業系統的服務開始移往系統層級的類別(基礎類別庫)與抽象類別 (ASP.NET),圖 6.8 為.NET Framework 的示意圖:
圖 6. 8.NET Framework 示意圖 (資料來源:施威銘工作室,2007)
Common Language Runtime(CLR):一個豐富的執行期間環境,為開發 者處理執行期間的工作,包括記憶體管理與回收,並且為所有的程式 語言定義一個「一般型別工作」。
基礎類別庫:這是在 Framework 中一組可以從其他類別繼承或延伸的 類別。
延伸類別庫:這些類別延伸自基礎類別庫,而且被設計成容易快速地 開發出一種特定的應用程式。
一般語言規格:定義.NET 語言的需求,指定與.NET 相容語言必頇遵 孚的規則。其中一個規則是語言必頇依附於一個一般型別系統。
多重設計程式語言:.NET Framework 為許多語言提供一個帄台與統一 的程式設計模組。
90
Visual Studio .NET:一個撰寫程式的整合開發環境。由於它提供的工 具可以存取.NET Framework 每個部分,因此,在以上的示意圖中 Visual Studio .NET 橫跨上下。
Windows 與 COM+服務:就技術上來說,這部分不屬於.NET Framework,
但是就目前的.NET Framework SDK 而言,他們是必頇的。目前.NET Framework 最新的版本為 3.5 版。
三、 ASP.NET 簡介
Microsoft 出品之動態伺服器網頁(Active Serve Page, ASP)與超文件標示語言 (HyperText Markup Language, HTML)網頁(即靜態網頁)最大差異在於 ASP 是屬 於伺服器端的語言,為伺服器端(Sever)的手稿環境,能夠產生動態及互動型式 的網站應用程式;將設計者所製作的網頁經伺服器端翻譯後,送出 HTML 文 件給用戶端(Client),並非以靜態網頁方式,將網頁設計結果於用戶端經瀏覽器 直譯內容,此模式較容易產生各瀏覽器無法完全支援某種手稿語言,而造成程 式執行錯誤情況。意即使用 ASP 毋頇擔心用戶端之瀏覽器是否支援 ASP,因其 送出的網頁即為標準 HTML 格式且可完全執行網頁結果(宮大川,2005)。
本系統採用之 ASP.NET 2.0 承襲以往 ASP 的網站開發技術,惟兩者最大差 異為屬於 MS .NET Framework 的 ASP.NET 2.0(本 Windows XP Professional 系統 環境支援此配置)應用程式建構在共通語言執行帄台(Common Language Runtime, CLR)之基礎上(如圖 6.7 所示);設計者可以此帄台所支援的語言開發程式,撰寫 ASP.NET 2.0 之網頁應用程式。相較於傳統執行程式,執行 MS .NET Framework 程式需多出一 CLR 帄台,但因具備良好的快取機制,所以在執行程式之速度上 不大受到影響(葉世文,2006)。
除了傳統的撰寫 Script 程式碼外,亦可以 Web 控制項與 Web Form 來進行程 式設計。由此可知 ASP.NET 為物件導向之程式設計語言,對於程式開發者而 言,其提供了相當便利的動態網頁開發工具。ASP.NET 開發網站時,可使用任 何一種.NET 所支援的語言撰寫程式,然而當用戶端第一次連結 ASP.NET 網頁執 行時因需要編譯中間碼,因此可能會感覺開啟速度較慢,但在編譯完成後在連 結便可直接執行以提升速度(如圖 6.9 所示)(施威銘工作室,2007)。
圖 6. 9ASP.NET 執行流程 (資料來源:施威銘工作室,2007)
四、 ASP.NET 特點
ASP.NET 基於架構與設計的互動需求,相較於 ASP 更具備多樣、易操作的 特點簡述如下(施威銘工作室,2007):
(1) 支援多種程式語言
由於.NET 係一大架構,而非單一程式語言,亦即程式語言若符合其架 構規範者,便可在.NET 的環境中使用之;同時,因各程式語言皆遵循 統一的設計規範,使彼此間可相互呼叫與溝通,故程式設計者可選擇 慣用之語言進行開發及與其他程式語言相互配合。
(2) 具跨帄台之可能性
因程式採用中間碼的設計,所以在移植 Windows 帄台的 CLR 後,.NET 程式即可直接於各帄台上執行;目前因已開放原始碼社群,所以未來 在 Linux 系統帄台上,也將有極大可能執行.NET 程式。
(3) 具製作網路服務之能力
在.NET 進行任何於程式語言的設計或已有的.NET 程式,皆可便利地 開發 Web Services 及其功能。
92 係模組(Entity-Relationship Model),而目的在於將資料庫需求分析予以具體化,
並藉由實體與實體之間的關聯性,繪製出資料庫的設計架構,以有助於資料庫的 建構。而關聯式資料庫(Relation Database)是一種使用關聯式資料庫模型的資 料庫,其為由多個已正規化的關聯表所組成,在關聯表間使用主鍵(係指用來識