asp.net mvc 4概念與新功能探討
DESCRIPTION
2011/09/25 Study4.TW Sky - Asp.Net MVC 4概念與新功能探討TRANSCRIPT
ASP.NET MVC 4 概念與新功能探討
Sky Chang
天空的垃圾場 blog.sanc.idv.tw
點課幫 Developer Party 11-925 CoodeBx 酷碼盒子
議題大綱 什麼是 MVC ASP.NET MVC 架構 ASP.NET MVC 新功能探討
最可怕的程式碼一隻程式超過 30000行
燃燒生命吧!!
變數全部都是 a、 aa、 b、 bb。
還包含許多了 500多行的 SQL語法
遇到了該怎麼辦!?
偉大的 ASP程式
使用者介面
商業邏輯 介面邏輯
SQL
我是一隻 ASP包山包地也包海
常常發生的問題修改程式容易造成錯誤
使用者沒信心、開發者沒動力!!
怎麼改怎麼錯
重複邏輯散落世界各地 改對一個還是錯
無法協同其他人員合作 原本對的也變錯
千錯萬錯都是寫程式的錯!!
ASP.NET CodeBehind
這樣就夠了嗎 !?
ASP.NET 的缺點 傳輸過於笨重 複雜的 HTML 不可測試性
什麼是 MVC
他是 UI 層 ( 展示層 ) 的 Design Patten( 設計樣式 ) 。
他是由 Model 、 View 、 Controller 所組成。
分離原本複雜的關係。
Model
通常為資料模型。 也可以是一個 DTO 。 通常裡面會放許多的商業邏輯。
View
頁面。 HTML 、 CSS 、 JavaScript 皆屬於此區
塊。 於此頁面撰寫顯示邏輯是合理的。
Controller
決定運作的流程 負責決定顯示哪一個 View 負責控制 Model 的傳遞
MVC 架構圖
MVC 優點是什麼 三者有點黏,又不會太黏。 Model 、 Controller 、 View ,三者之間
可以獨立開發。 支援標準的 HTML 語法。 不在使用 PostBack ,所以傳輸很輕量。 容易測試的架構。
那 ASP.NET MVC 是什麼 ?
MVC 是一個設計樣式的名詞,而ASP.NET MVC 是擁有實作此設計樣式的Framework 的產品。
ASP.NET 要被淘汰了嗎 ?
ASP.NET 適合快速且小的專案。 ASP.NET MVC 適合大型的專案。
Demo
程式界最有名的 Demo 範例。
ASP.NET MVC 4 Developer Preview 新功能預覽 Mobile 範例樣板 Display Modes 強大的 NuGet View Switcher Recipes 、 Task 支援 Async Controller
Mobile 範例樣版 能快速地建立手機的頁面。 使用 jQuery Mobile 來支援手機平台。
Mobile 範例樣板 Demo
Display Modes
能依據不同的平台來進行切換顯示頁面。 另用檔案名稱原理來切換。 Layout 也可以使用。
Display Modes Demo
強大的 NuGet
快速的將擴充套件裝好。 會自動的升級與處理。 未來還可以自行撰寫此擴充套件
強大的 NuGet Demo
View Switcher 能切換 Mobile 平台與 Desktop 平台。 SetOverriddenBrowser(userAgentString)
設定模擬瀏覽器的類型。 GetOverriddenUserAgent()
取得模擬瀏覽器類型的字串。 GetOverriddenBrowser()
取得 HttpBrowserCapabilitiesBase 的實體。 ClearOverriddenBrowser()
清除所有 HttpBrowserCapabilitiesBase 的實體。
View Switcher Demo
End
天空的垃圾場 http://blog.sanc.idv.tw ASP.NET http://www.asp.net