[經驗談] 無招勝有招

Design Patterns 或 MVC 都是用來解決架構與設計上的相關問題,它給你的是方向,但真正實作出來的,其實並不是一定要 "依樣畫葫蘆",只要在設計上有滿足 Design Patterns 或 MVC 的精神:職責分明,並且能解決你要解決的問題領域,就夠了。當你學習夠多的時候,自然而然就會有想法,而且自然會植基於 Patterns 之上來思考。Design Patterns 或 MVC 其實只是教你該如何去思考,是概念上的作法,但實作要靠自己實踐,打出一套能夠滿足 Design Patterns 的精神,並能完成問題解決的拳法,才是王道。

...繼續閱讀 »

[ASP.NET][vNext] ASP.NET vNext @ 2014

今年的 TechEd 2014 North America 可真是豐富又紮實啊,除了 Microsoft Azure 多了一堆新東西外,連 .NET Framework 以及 ASP.NET 也宣布了下一個新的未來版本 vNext,.NET Framework 的部份著重在新一代的編譯平台 (Compiler Platform) Roslyn,新一代的機器語言編譯器 .NET Native 以及新一代的即地編譯系統 RyuJIT。而針對 ASP.NET 的部份則是很恐怖的大幅改版,不是針對功能面,而是針對核心面...

...繼續閱讀 »

[.NET][SignalR] 由 Server 呼叫 JavaScript–使用 SignalR 實作 Push 訊息模式

在前一個範例中,我們己經實作出來一個簡單的應用程式,而這次我們要來展示 SignalR 的另一個功能:由伺服端呼叫用戶端的 JavaScript 指令碼的功能,而這個功能的要求必須是要實作成 Hub 的模式,因此我們可以順便看到如何實作 Hub 類型的 SignalR 應用程式。

...繼續閱讀 »

[ASP.NET][MVC] ASP.NET MVC (12) : 設計自己的 View 輸出-以 CSV 為例

我們在 ASP.NET MVC (7) 中曾介紹了 ASP.NET MVC 的 View 內建了 9 種不同的 View,基本上這些 View 均足以應付大部份的資料呈現需求,但是它也不是不能擴充的,像是一些特殊的 View (例如圖表或特殊檔案或特別的資料格式),就需要由開發人員自己設計,不過 MVC 的 View 設計上也不難,只要將自己的 View 加入 HTTP 處理流程中即可。

...繼續閱讀 »

[ASP.NET][MVC] ASP.NET MVC (10) : 部份檢視與 AJAX 的整合

我們在前一篇文章中看到部份檢視的功能,它除了可以作為網頁上的排版外,其實它還有一個更重要的用途:與 AJAX 結合。ASP.NET MVC 本身的 AJAX 目前可支援最早的,以 MicrosoftAjax.js 與 MicrosoftMvcAjax.js 組成的 AJAX,以及由 MVC 3.0 開始支援的 jquery.min.js 與 jquery.unobtrusive-ajax.js 兩種,要選擇哪一種是由開發人員自己決定,但個人推薦使用 jQuery 的 ajax,一來方便,二來可相容於許多的 jQuery Plug-ins,甚至想用 jQuery Mobile 來開發行動網頁,也可以享受到 MVC AJAX 的能力。

...繼續閱讀 »

[ASP.NET][MVC] ASP.NET MVC (9) : 部份檢視 (Partial View)

寫過 ASP.NET Web Form 的人應該都知道使用者控制項 (user control) 這個東西吧,它允許開發人員對 Web 的畫面設計可重覆使用的網頁區域,在多數的情況下,我們都是用靜態的使用者控制項,也就是在 Web Forms 上放一個自己的 user control (*.ascx),它會幫我們將對應的 HTML 繪製出來...

...繼續閱讀 »

[ASP.NET][MVC] ASP.NET MVC (6) : 資料驗證 (2) Model Validation

在前一篇文章中,我們撰寫了一個 server-side 的 validation 方法,雖然解決了驗證的問題,但是和時下流行的 client-side validation 不符,而且 server-side 不應該只是檢查資料型別這件事而已,它應該要解決更複雜的問題,而 client-side validation 專司處理簡單的驗證問題...

...繼續閱讀 »

[ASP.NET][MVC] ASP.NET MVC (3) : 加入資料檢視功能-Models

我們在前一篇文章中,實作了最簡單的 Controllers 與 Views,也看到了這兩個物件之間的關聯性,但是 MVC 中還少一個東西,就是 Models,但還是老樣子,雖然很多書都用 LINQ to SQL 或 Entity Framework 來當 Models,但是我仍然堅持要由最簡單最原始的方式來實作,所以我們一樣由類別來實作 Models。

...繼續閱讀 »

[ASP.NET][MVC] ASP.NET MVC (1) : 如何學 ASP.NET MVC ?

ASP.NET MVC 最近似乎慢慢的有變紅的趨勢,也開始有不少人在詢問如何學習 ASP.NET MVC,之前我也寫過一篇簡單的介紹文,說 ASP.NET MVC 比較適合寫過 ASP, JSP, PHP 等的開發人員,因為它的處理方式和傳統的 ASP.NET Web Form 截然不同,首先就是 MVC 的概念,因為這會涉及資料在 MVC Framework 內的流動方式,另外一個就是習慣導向的設計,微軟認為習慣導向可以加快開發人員的開發速度,所以在一個 ASP.NET MVC 專案的配置,和平常寫 ASP.NET Web Form 有一定的差異。

...繼續閱讀 »

[Architecture] MVP, MVC, MVVM, 傻傻分不清楚~

最近 MVC (Model-View-Controller) 和 MVVM (Model-View-ViewModel) 在微軟圈成為顯學,ASP.NET MVC 和 WPF 的 Prism (MVVM Framework) 功不可沒,MVC 和 MVVM 在概念上都是基於分層的,將呈現 (presentation) 與資料 (data) 分開的設計架構,M 和 V 基本上不是問題,但將這兩個整合的中間這層可就有很多的學問,另外,除了 MVC 和 MVVM 外,還有一個叫做 MVP (Model-View-Presenter) 的架構,這三個的設計概念非常類似,很容易會讓人傻傻分不清楚 ...

...繼續閱讀 »