開發者需要經常為提升 Html 的 UI 使用體驗而努力,包括復雜的 JavaScript 和跨浏覽器間的兼容問題。在多數情況下,他們需要通過創建主要基於服務器的動態頁面來為跨浏覽器的兼容而犧牲豐富的用戶體驗。
在過去的幾年中,浏覽器的新能力鼓勵著 Web 開發者再次為創建基於客戶端應用程序的可能性而進行探索。所有流行的浏覽器現在都支持一個可編程的文檔對象模型(DOM),並且這些浏覽器的少數最新版本中還加入了直接在客戶端和服務器之間直接通信的能力,因此不再需要執行全部的回傳過程。於是像 >Microsoft Virtual Earth 和 >Microsoft Windows Live 等新一代的 Web 應用程序出現了,並提供像拖放、以及實時處理數據、等等流行的 UI 特征。
而問題就是創建這樣的 Web 應用程序並不是一件輕松的事。你需要編寫 Javascript 代碼並理解不同浏覽器各自所提供的不同版本的 DOM。而 JavaScript 也無法提供 .Net Framework 開發者所使用的完全特征(如面向對象、類型安全等)。簡而言之,創建面向客戶端的 Web 應用程序需要一種全新的專用編程語言和新的開發平台。
於是 ASP.NET Atlas 出現了。Atlas 是一種全新的 ASP.NET Web 開發技術,它在基於 ASP.NET 2.0 服務器的開發框架中集成了客戶端腳本庫。Atlas 為你提供的基於客戶端 Web 頁面的開發平台與 ASP.NET 為基於服務器的頁面所提供開發平台的一樣。通過使用 Atlas,你能夠把應用程序的重要處理部分轉移到客戶端,並在後台保持與服務器的通信能力。因此你能夠使用一種豐富的、可響應的 UI 和服務器通信技術來創建 ASP.Net 頁面。
在 Web 開發的世界中,用來創建客戶端與服務器通信以及豐富 UI 的技術集被統稱為 AJax,即異步 JavaScript 和 XML。Ajax 是創建可響應並可交互 Web 頁面的一種方式,能夠提高浏覽器內建的能力。Atlas 允許你建立 Ajax 風格的應用程序,並且在此之外充分地提供一個完整框架來為應用程序任務創建針對於適當平台(客戶端和服務器端)的應用程序,並為所有平台都提供同一個級別的可編程性。更多關於 Atlas 和 Ajax 的信息,請參考:[理解 AJax 應用程序和 ASP.Net Atlas]。
Atlas 的一個主要目標就是把服務器端的 ASP.Net 特征與客戶端腳本特征進行集成以提供一個更全面的開發平台。
至於客戶端開發,Atlas 對基於 JavaScript 開發的復雜性進行管理並提供了如下開發特征:
Atlas 同樣為 ASP.NET 服務器端開發集成了客戶端腳本,因此你無論是在何種情況下對應用程序任務進行處理都是有意義的。ASP.Net 為 Atlas 應用程序提供了如下的服務器端特征: