天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

淺談ASP.NET MVC

在正式的工作中使用ASP.NET MVC也有一陣子了,也看了聽了很多關于ASP.NET MVC別人的想法和代碼,我認為很多人對于它的理解是錯誤的。

在這里我只談談對ASP.NET MVC我的一些想法,希望大家多多討論。

1. ASP.NET MVC區(qū)別于ASP.NET在于設計理念

我聽過的關于ASP.NET  MVC的第一個看法是ASP.NET MVC最大的特點在于Controller和View的分離,當時我還不懂ASP.NET MVC是什么東西,但是當我第一眼看到這個框架時,我就認為這個觀點是錯誤的,我認為ASP.NET MVC最大的特點,也是最大的優(yōu)點是由Controller來驅(qū)動整個項目的開發(fā)進展

我們知道,在一個項目的面向?qū)ο蠓治雠c設計過程中,我們一直都在圍繞著人,可能是角色,也可能是涉眾來分析和設計整個項目。人,全都是人!站在整個類設計結(jié)構最上層的就應該是人,然后我們接下來應該去分析這個人有什么特征,我們這個人要做什么(記住,而不是這個人可以做什么)。也就是說,除了人之外,接下來的層次就應該是這個人的行為,也就是整個系統(tǒng)中的Action

好,接下來我們可以回想一下我們最初的ASP.NET Webform時代,我們是如何開發(fā)一個系統(tǒng)的,我們寫出一堆設計文檔,然后美工給我們頁面,然后就是我們常說的“套頁面”。對于這個做法,也就是我在之前文章中調(diào)侃的“PDD”(頁面驅(qū)動開發(fā))。缺點我就不說了,在前文中我想我已經(jīng)說得很清楚了。

那么我們想想,其實我們會覺得Webform是個天然為了PDD而生的產(chǎn)物。當提及三層架構時,很多人都有一種看法是ASP.NET本身就是三層的,我們暫且不管這個說法對不對,至少可以說明,很多人都天然地把.ASPx.cs當成了其中的一層,這就造成了ASPx和ASPx.cs這兩層的完全耦合性。

但是ASP.NET MVC好在哪里?一個用戶訪問,并不是在訪問某一個頁面,而是在訪問某一個功能(Action)。這就是面向?qū)ο蠓治龅淖罨A方法。

那么我們在開發(fā)ASP.NET MVC時就應該先考慮我們需要哪些功能塊,這就是我們的Controller,然后在這個功能塊下,我們都需要哪些功能,這就是我們的Action。至于頁面,應該是應該由功能來驅(qū)動我們的頁面開發(fā),這才是Controller驅(qū)動整個項目開發(fā)的核心!

但是我想仍然有很多公司在用開發(fā)ASP.NET時的那一套PDD來開發(fā)整個項目,我想,這就是沒有掌握到ASP.NET MVC的精髓之所在吧。

ASP.NET MVC要點一:先開發(fā)Controller,頁面完全可是先束之高閣,由Controller而不是Page來驅(qū)動整個項目開發(fā)。

2. Controller的代碼組織

在整體的架構中,個人認為Controller更像一個Facade,他提供給用戶一個訪問接口,在這個接口背后是復雜的業(yè)務邏輯

但是我看到很多公司的代碼都在Controller摻雜進了復雜的業(yè)務邏輯,甚至會出現(xiàn)了幾百行,幾千行的Controller,這是我沒辦法理解的。

讓我們想想Facade,他的目的是這樣的:定義一個高層接口,這個接口使這一子系統(tǒng)更加容易使用

在我看來應該注意這樣幾點:

A. Controller中不應該包含任何private和protected方法,一個Facade類只應該由對外暴露的方法,他只是對其他類方法的整合

B. Action不應該處理任何細節(jié)方面的邏輯。個人認為,每個方法之中僅應包含他下一抽象層次的方法,而不應該出現(xiàn)抽象層次的雜糅以及抽象的層次跳躍

C. Action本身其實就是一個方法,正如代碼規(guī)范上所說的,方法應該只是動詞或者動賓短語,而不應該出現(xiàn)名詞作為方法名的情況。因為用戶是希望做某一項動作,而不是得到某一種東西

3. 最后

本來感覺有好多話想說,可是寫著寫著卻發(fā)現(xiàn)不知道該寫什么了,下次再說吧。

最后,個人建議,學習ASP.NET MVC可以參考一下Java界的一些成熟思路,有些其實和ASP.NET MVC非常像,比如Struts,還有Spring MVC。

打算接下來的時間看一下。歡迎大家共同討論學習。

NET技術淺談ASP.NET MVC,轉(zhuǎn)載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: a级精品九九九大片免费看 A级韩国乱理伦片在线观看 | 66美女人体 | 久久精品AV麻豆 | 亚洲va精品中文字幕 | 欧洲美女人 一级毛片 | 国产3级在线 | 色四房播播 | 国产永久免费高清在线观看 | 亚洲国产高清在线 | 色欲蜜臀AV免费视频 | 国产乱子影视频上线免费观看 | 无码日韩人妻精品久久蜜桃免费 | 美女伸开两腿让我爽 | h版动漫在线播放的网站 | 国产精品亚洲精品影院 | 高清撒尿hdtube撒尿 | 老师在讲桌下边h边讲课 | 校园男男高h小黄文 | 超碰97超碰在线视频哦 | 亚洲精品www久久久久久久软件 | 夜色视频社区 | 久久视频在线视频观看精品15 | 把腿张开JI巴CAO死你H教室 | 亚洲AV怡红院影院怡春院 | 花季v3.0.2黄在线观看 | 精品久久久久中文字幕 | 我和黑帮老大第365天第2季在线 | 人人射人人插 | 女攻男受高h全文肉肉 | 国产精品青青青高清在线密亚 | 日本19禁啪啪吃奶大尺度 | AV福利无码亚洲网站麻豆 | 久久精品视频在线看 | 国产在线高清视频无码不卡 | 国产这里有精品 | 无码AV毛片色欲欧洲美洲 | 亚洲精品久久无码AV片银杏 | 久久黄色片| 年轻的女教师2017韩国在线看 | 又紧又大又爽精品一区二区 | 三级黄.色 |