回到大約十五年前,Web開發時期的開始。從那時起,許多的技術就已經以不同的速度和不同的記憶,穿越在我們的生活當中。曾經有過像流星般,如ActiveX文件,和像生動星般,如Active Server Pages(ASP)。大約在1997年前後,我相信特別是ASP標記出分水嶺。ASP清楚表明實際Web開發只可能通過豐富和強大的伺服器端程式設計模型。
正如同Microsoft Visual Basic為Microsoft Windows程式開發所做的,ASP提供一套Server工具,快速、有效地建構動態應用程式,並且顯示前面的發展模式。ASP.NET是Web開發技術的頂點,迅速遵循另一個在過去十五年的成果,一項建構在另一項之上,並且每一項填補其先前技術的差距。因此,ASP.NET是當前最先進技術,用於通過HTTP傳輸,建構分散式應用程式,功能豐富的強大平台。
如果能更多地使用ASP.NET,則會更加明白有更多的需要。ASP.NET簡化了大量的作業,並顯明本身,尤其是對於來自傳統的ASP開發人員來說,可以是一種程式設計天堂。ASP.NET 1.1只能夠刺激開發人員社群的食欲。因此,經過使用和評估的第一個月後,開發人員社群成員開始要求和希望能有更多的功能。
ASP.NET 2.0是該平台的一個主要升級,即使它沒有引入任何要學習新的或革命性的程式設計範例。沒有程式設計和實現的徹底新方法,且沒有開發人員必需要熟悉的新語法模型。然而,ASP.NET 2.0表示Microsoft Web開發準則的一個基本里程碑。
ASP.NET 2.0作出新行為結合最佳做法,其新的程式設計技術需要引起架構設計和先進開發人員的注意,新系統功能提供早期版本已知問題,原生的解決方案。
最近伴隨.NET Framework 3.5發佈的ASP.NET升級,沒有添加很多功能到現有的平台。ASP.NET 3.5只是ASP.NET 2.0加幾個延伸模組。新增了幾個新的伺服器控制項,例如:ListView和DataPager。可以使用新的.NET Framework加強工具──特別是LINQ和Linq-to-SQL。更重要的是還有AJAX Extensions。
ASP.NET 3.5是一個開發AJAX應用程式的完整平台,因為它合併了在2007年初以ASP.NET 2.0附件發佈的ASP.NET AJAX Extensions 1.0 Toolkit的改進版本。除了包括ASP.NET AJAX和Windows Communication Foundation(WCF)服務,這本書也多添加了一個內容,將提供豐富的網際網路應用──Silverlight。
本書包括使用Microsoft.NET技術,在Web程式設計上狀態的技巧,雖然更新為ASP.NET 3.5,但是,你將會覺得不管使用在任何ASP.NET版本都會有用。
任何一本想嘗試詳細解說,先進的ASP.NET程式設計的書,沒辦法遠少於2000頁。這本書最終是要成為那些需要先瞭解以具有生產力的核心ASP.NET主題的參考索引,例如:HTTP執行階段、安全性、快取、狀態管理頁、控制項、資料繫結和資料存取。
本書的最佳伴侶是我的早期書,Programming Microsoft ASP.NET 2.0 Applications: Advanced Topics(Microsoft Press 2006)。儘管名稱明確目標在2.0的平台上,該高級主題的書仍然是有效和合時的。
沒有一項課題是在ASP.NET 3.5中經過改變的。並且任何ASP.NET 3.5的新增功能,或者就像是Silverlight值得一看的,都列入在目前你手上這本書之中。
Dino Esposito