序
在現今這個雲端化的時代,以網頁為基礎的各項應用已經融入到日常的生活和工作中,網頁應用開發逐漸成為一個不可或缺的技術,不僅是專業開發人員,許多網頁使用者也相繼投入這個領域進行學習。然而,雖然網路提供的學習資源非常豐富,但在內容上較為分散,也缺乏一系列由淺入深且循序漸進的內容編排,零碎的知識與欠缺完整參考範例的搭配,使得初學者無法有效應用線上資源,在學習上備感挫折。
眾多蓬勃發展的網頁開發技術中,微軟提出ASP.NET相關技術與類別庫占有一席之地,在.NET Framework開發平台(development platform)下,採用C#語言進行開發的方式,相當普遍。而為了提升多作業平台整合與相應的開發能力,微軟於2014年推出新的架構ASP.NET 5,並在2016年更名為ASP.NET Core,這個變更代表了.NET平台的重要發展,將.NET Framework和.NET Core合併成一個統一的平台。這樣的合併有助於簡化.NET開發,並提供更一致的開發體驗,且ASP.NET Core具有跨越不同作業系統的能力,除Windows外, Mac OSX與Linux 也能進行開發,而.NET Core與現有的.NET Framework是可以並存的,能在同一台電腦上同時運行兩種開發環境,保持與過去應用程式的相容性。此外.NET Core應用程式的部署變得更簡單,不需要擁有大型的Framework Runtime,讓應用程式更輕巧;同時.NET Core採用的是分散式套件管理,應用程式可以獨立下載和更新所需的套件版本,不需要一個固定的大版本,讓專案開發更加彈性。總而言之,.NET Core為.NET開發帶來了更大的靈活性,同時也減少了不必要的複雜性,這個重要改變也促進了.NET系統的進步,並為未來的.NET開發提供更多選擇和機會。
ASP.NET Core已經持續更新到8.0測試版本,除承襲先前版本的優點外,更加入許多實用的功能,使用者可更快速有效率地完成應用程式開發,然而,如何有效率地發揮ASP.NET MVC的優勢是許多人頭痛的地方,錯誤的觀念及步驟反而造成事倍功半的窘境,有鑑於此,也就有了這本書的產生。這本書主要目的是在.NET 8的環境下,如何使用ASP.NET Core與MVC軟體開發模式來建立一個強大且可擴展的平台,將引導讀者掌握軟體開發的基本技能,從ASP.NET、MVC模式、開發工具、設計原則和專案實作一一介紹與討論,並輔以各範例的詳解步驟,幫助讀者建立軟體開發的基礎。
此書將建構多個項目來理解 .NET 8 中的基本概念。在前面章節中將使用ASP.NET Core Web 應用程式(Model-View-Controller)來學習Create(新增)、Read(閱讀)、Update(更新)、Delete (刪除)等資料基本操作。而實作章節則會帶領讀者開發電商線上平台的各個基本功能,如:會員系統、購物車、訂單管理等,從實作中學習如何開發應用程式。本書在實作範例時加入了許多知名且實用的套件,像是Toastr 和 DataTables等,帶領讀者一步步將套件引用至專案中,讀者可以根據需求和設計風格,來提高網頁的使用者體驗和美工設計,最後將會詳細介紹如何在Azure上部署應用程式。
ASP.NET Core結合MVC軟體開發模式,對於初學者而言,有一定的進入障礙,為了讓初學者能夠更容易的了解與學習,本書提供了很多的範例與補充說明,以減低學習者在學習上的困難,在實作的程式碼部分,本書的範例詳細解釋每行程式碼,讓學習者能更容易的了解整個程式運作的架構和方式,進而有更深入的體會與了解。最後,這是一本由學生團隊和指導老師們合力完成的書籍,這本書的範例都是學生練習後的成果,範例程式碼都經過學生們再三確認無誤,學生們才是這本書的真正作者。
姜琇森、蕭國倫 撰寫於 國立臺中科技大學資訊管理系