當前位置:首頁 » 網頁前端 » 基於aspnet的web應用開發第二版
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

基於aspnet的web應用開發第二版

發布時間: 2023-05-23 05:01:24

① 推薦幾本ASP.NET的書籍

去 www.ibook8.com 看看吧
如果是剛開始學習的核肆話建議你選擇《親畢兄密接觸ASP。NET》手氏襲
內容很簡單易懂,也有不少入門性的實例
一本很不錯的書,我剛開始就是用它入門的

② 學習asp的有關書籍或是asp.net.的具體書籍。麻煩大家能告訴我一下具體書名嗎

ASP.NET會計系統設計與項目開發 ¥40.85元
本書以一種會計系統的設計、構建和實現為線索,使用VB.NET+ASP. NET+sql Server+Excel技術,從面向對象系統的分析、設計,到會計系統設計的實現循序漸進地進行講述。讀者通過本書的學習,可以掌握VB.NET和A SP.NET的程序技巧和設計實用應用系統的規劃技巧。本書 ...
Web開發技術教程——ASP/ASP.NET/JSP程序設計 ¥32.30元
本書系統講述Web開發技術,全書內容覆蓋了當前Web程序設計與開發的主流。第1章介紹Web編程基礎及Web開發環境;第2、3、4、5、6章完整介紹ASP技術,包括ASP工作原理,VBScript、JavaScript、ASP五大內置對象,ASP的伺服器組件和ADO組件及其Web資料庫發布技術,ASP綜?...
ASP.NET網路編程從基礎到實踐 ¥45.60元
本書以ASP.NET的基礎知識學習和應用為主要討論對象。在基礎篇(第1-14章),以淺顯的方式講解ASP.NET的基本知識,並包含了相應的示例。在進階篇(第15-22章),精心按照難易程度和適用范圍,對ASP.NET的具體應用進行了較為詳細的討論。對於每個例子,都有詳細的背景 ...
ASP.NET項目開發實踐(第二版)——項目開發實踐系列叢書 ¥33.25元
ASP.NET是Microsoft.NET框架的一部分,使用它可以編寫出功能強大而復雜的各種應用系統來。本書首先簡單的回顧了ASP.NET技術的主要方面,包括ASP.NET頁面的基本語法、Web Form的概念及Web控制項,Web Services和ASP.NET的狀態管理等;然後以多個實用的在線系統為例,詳 ...
ASP.NET程序或洞設計專家門診 ¥42.75元
本書重點介紹如何解決ASP.NET程序設計過程中碰到的各種問題,包括了ASP.NET編程基礎、HTML伺服器控制項應用、Web伺服器控制項應用、客戶端與伺服器的交互、數據綁定控制項、ADO.NET技術、XML應用、圖形圖像處理、ASP.NET高級技巧的應用、客戶端編程技術等。本書強調理論與 ...
網際網路應用(ASP平台)ASP.NET試題匯編(高級管理員級) ¥33.25元
由勞動和社會保障部職業技能鑒定中心在全國統一組織實施的全國計算機信息高新技術考試是面向廣大社會勞動者舉辦的計算機職業技能考試,考試採用國際通行的專項職業技能鑒定方式,測定應試者的計算機應用操作能力,以適應社會發展和科技進步需要。本書包含了全國計算機信 ...
網際網路應用(ASP平台)ASP.NET試題解答.高級管理員級 ¥36.10元
由勞動和社會保障部就業效能審定中心在全國組織實施的全國計算機信息高新技術考試是面向廣大社會勞動者舉辦的計算機職業技能考試…… ...
(1CD.第二版)ASP.NET揭秘 ¥90.25元
本書是美國亞馬遜網站同類書長期銷售冠軍,並受到微軟ASP.NET小組項目經理Rob Howard的大力推薦,中文版由中科院專家湯濤老師翻譯,經典、權威是本書最好的詮釋。本書共分10部分,31章,囊括了在.NET框架下架建ASP.NET應用程序的各個層面。每一章也都不是泛泛而談理論, ...
拒絕黑客——ASP.NET Web 應用程序安全性剖析 ¥45.60元
本書詳細介紹了ASP.NET Web應用程序面對的各種威脅和攻擊,並有針對性地提供了完美的解決方案。運用本書介紹的安全技術基本上可以抵禦到目前為止出現的各種黑客攻擊,如賬號劫持、社會工程、跨站薯歷點腳本、暴力攻擊等。 對於ASP.NET Web程序開發人員而言,本書可?...
ASP.NET+SQL Server網路應用開發與實例 ¥39.90元
本書介紹使用ASP.NET(C#)和SQL Server 2000開發Web應用程序的基礎知識和開發方法。本書涉及從編程技術到產品配置,從工具使用技巧到技術剖析的各個方面,技術含量豐富,蘊涵面廣。本書還完整地介紹了4個Web應用程序實衫手枯例,包括動態新聞發布系統、網上考試系統、B2C商務 ...
拒絕黑客——ASP.NET Web 應用程序安全性剖析 ¥45.60元
本書詳細介紹了ASP.NET Web應用程序面對的各種威脅和攻擊,並有針對性地提供了完美解決方案。運用本書介紹的安全技術基本上可以抵禦到目前為止出現的各種黑客攻擊,如賬號劫持、社會工程、跨站點腳本、暴力攻擊等。 對於ASP .NET Web程序開發人員而言,本書可謂是?...
拒絕黑客——ASP.NET Web 應用程序安全性剖析 ¥45.60元
本書詳細介紹了ASP.NET Web應用程序面對的各種威脅和攻擊,並有針對性地提供了完美解決方案。運用本書介紹的安全技術基本上可以抵禦到目前為止出現的各種黑客セ鰨�繒撕漚儷幀⑸緇峁こ獺⒖繒鏡憬瘧盡⒈┝�セ韉取? 對於ASP .NET Web程序開發人員而言,本書可謂是 ...
ASP.NET 2.0動態網站開發教程 ¥25.65元
...
ASP.NET動態網站開發基礎教程(C#篇) ¥30.40元
ASP.NET是由Microsoft公司推出的新一代Web開發構架。開發人員可以通過ASP.NET實現動態網站的開發,包括開發Web應用程序和Web服務。本書詳細講解了ASP.NET動態網站開發技術,共分13章,內容包括ASP.NET語言基礎、HTML與Script語言、C#語言基礎、ASP.NET常用對象、數據?...
ASP.NET電子商務入門經典(第2版) ¥55.10元
本書全面詳細地介紹了如何構建電子商務Web站點,並通過大量的代碼和示例逐步教會您設計和構建站點的具體過程。您將學會構建使用購物車的在線商品類目、創建搜索和商品推薦功能,並實現管理功能、客戶賬戶、定單處理系統以及其他更多內容。您還將了解如何集成PayPal、Dat ...
Web應用程序設計技酢�獮SP.NET ¥26.60元
...
ASP.NET(C#)基礎教程 ¥37.05元
學習軟體開發最重要的就是能夠學以致用,同樣學習ASP.NET Web開發最好的效果也是能夠學以致用,因此在全書學習過程中,讀者應該帶著需求來學習,例如全書完成後,我們如何完成一個中小型電子商務系統的開發,比如網上書店系統、網上手機系統、網上論壇等。讀者也可以從?...
ASP.NET網路資料庫開發實例精解 ¥58.90元
本書以實例的方法介紹了網路應用程序的資料庫和ASP.NET應用程序(使用C#語言)的開發技術,以及兩者結合在一起的Web應用程序的開發技術。本書還介紹了如何使用ASP.NET應用程序連接、訪問和操作資料庫的基本方法,以及使用ASP.NET中的伺服器控制項讀取、顯示、添加、修改和 ...
ASP.NET 1.1入門經典—— Visual C#.NET 2003編程篇 ¥81.70元
ASP.NET 1.1是Microsoft公司Active Server Page(ASP)的最新版本,它是一種基於伺服器的功能強大的技術,用於為Web站點或企業的內部網創建動態的、互動式的HTML頁。ASP.NET由多項技術組成,如Web服務、ADO.NET、定製控制項和安全性等。本書配合大量示例代碼,全面系統地講?...
ASP.NET 1.1入門經典—— VB.NET 2003編程篇 ¥80.75元
ASP.NET 1.1是Microsoft公司的Active Server Page(ASP)技術的最新版本,它是一種基於伺服器的、功能非常強大的技術,可以為Web站點或企業內部網創建動態和互動式的Web頁。ASP.NET 1.1也是Microsoft的.NET戰略的核心內容,可以為功能強大的.NET開發環境提供基於Web的訪問 ...
ASP.NET 1.1高級編程 ¥121.60元
Microsoft的ASP.NET自從第一次發布為預覽技術以來,已經取得了巨大的成功。對於使用Microsoft技術開發Web站點的開發人員來說,ASP.NET提供了豐富的編程模型,可以輕松地構建站點。ASP.NET自發布以來對它的評論非常多,但撇開宣傳和新聞這些炒作不談,.NET確實為開發人員 ...
ASP.NET簡明教程(C#篇) ¥28.31元
本書主要介紹了在Windows 2000操作系統上使用ASP.NET創建動態Web網頁的相關技術,內容涵蓋了ASP.NET程序的運行環境需求、C#語法基礎、ASP.NET擴展的HTML控制項和Web內部控制項的使用、ASP.NET的常用內置對象、.NET的命名空間、在ASP.NET中實現事件驅動、在ASP.NET程序中使用 ...
ASP.NET實用教程 ¥28.31元
本書系統介紹了利用Visual Studio .NET 2003開發ASP.NET Web應用程序的方法。全書共分14章,主要內容包括:動態網頁的基本概念,ASP.NET的運行和開發環境,ASP.NET的基本語法,C#語言基礎,C#面向對象的編程方法,ASP.NET內置對象,ASP.NET伺服器控制項,資料庫基礎及其在 ...
ASP.NET 1.1資料庫入門經典 ¥43.70元
本書內容豐富,結構清晰,共分為3部分:簡介(第1-2章)、核心技巧(第3-10章)和應用(第11-13章)。重點講解如何使用ASP.NET和ADO.NET建立數據驅動的Web應用程序。除了介紹構建Web窗體和將控制項放入頁面的基礎知識外,還闡述了ASP.NET開發人員應如何構建能夠處理數 ...
ASP.NET程序設計案例教程 ¥34.20元
本書是一本精心設計的ASP.NET案例教程(以VB.NET語言講解),它不是簡單地堆砌源代碼,而是將重點放在了講解程序設計思想上,不僅要讓讀者知道怎麼編,更要讓讀者知道為什麼要這樣編。 本書案例選材來源於四個方面:Internet上優秀的案例、作者多年的教學經驗?...

③ ASP論文摘要

基於ASP.NET的Web網路應用程序開發的安全策略實踐
摘要:Web網路應用開發中,安全性是要考慮的關鍵問題,本文通過開發系統實踐,從系統規劃階段、設計開發階段、發布運行階段三個方面詳細闡述安全策略的實現,總結出如何充分利用ASP.NET的安全機制、資料庫安全控制、增強管理員網路安全防範意識,構建一個性能安全的Web應用程序。
關鍵詞:Web應用程序;web.config;認證和授權;視圖;存儲過程

1 前言

微軟公司推森做搏出的ASP.NET,可以非常方便和高效地規劃、設計、開發和發布Web網路應用程序。筆者利用ASP.NET為新疆職工培訓中心開發了運行在校園網上的網路辦公管理系統。該系統分為管理部門和教學部門兩個角色,實現了數據存儲、瀏覽查詢和教學分析統計功能,提高了培訓中心的信息化管理和校園網的利用價值。在整個系統的開發過程中,考慮最多的就是安全問題,相信這也是所有開發人員開發Web網路應用程序所必須面對的問題。因此本文針對基於ASP.NET的Web網路應用程序開發的安全問題,以我們開發的系統為例,從3個方面來闡述實際解決策略:
(1)系統規劃階段的安全策略;
(2)設計開發階段的安全策略;
(3)發布運行階段的安全策略。
希望我們的實踐能對利用ASP.NET開發Web網路應用程序的相關技術人員提供參考和借鑒。

2 安全策略實踐

2.1系統規劃階段
Web網路應用程序,就是運行在Web應用胡扮伺服器上的一個虛擬目錄及其子目錄下的所有文件、網頁、模塊以及可執行代碼的總和。根據系統需求分析,用戶分為管理部和教學部(對數據的操作許可權有區分),因此建立兩個目錄分別存放相應的網頁文件。另外,還有資料庫文件夾、樣式文件夾、網頁模版文件夾等。而對資料庫表的操作文件放在特殊的文件夾bin下,因為該目錄是禁止任何瀏覽器訪問的,從而避免了遠程客戶下載代碼的可能性。應用程序根目錄下除了上述目錄外,還有兩個重要的應用程序級文件:global.asax 和web.config(下文詳細分析)。總之,文件目錄的規劃是按類別存放文件,重要文件此祥存在bin目錄下。
2.2設計開發階段
主要從後台的資料庫設計、配置文件web.config及前台界面設計三個內容,著重闡述對安全問題的解決策略。
2.2.1資料庫設計
為了提高訪問數據的效率和安全性,能在後台做的事情,就在後台完成,能分開獨立做的事情,就分開獨立實現。
(1)充分利用後台資料庫系統的視圖和存儲過程,如:創建帶參數的視圖,實現不同角色身份的用戶對各自許可權范圍內的數據訪問。
(2)報表設計及實現:Web應用程序實現動態報表,開始考慮用ASP.NET的數據控制項Repeater,可以自由定義靈活的顯示方式,但通常比較麻煩,而且在代碼中欄位名要出現,即:使用數據容器Container.DataItem("欄位名")方式來顯示數據內容,降低了數據安全性。我們的做法是利用Bussiness Object 公司開發的專業報表軟體CrystalReports10設計報表,通過ODBC數據源與資料庫連接,生成報表文件(*.rpt)後,在前台利用報表控制項CrystalReprotViewer,將報表文件載入到頁面實現各種報表。這種把數據源、報表文件、和頁面顯示文件分開獨立實現,不僅豐富了報表顯示樣式和提高了網路報表生成效率,而且極大地提高了訪問數據的安全性。
(3)用戶口令存儲問題:不要將實際的口令存儲在資料庫表中,因為口令直接放在資料庫或文件中存在安全隱患,因此要存儲加密後的口令。使用時,例如當用戶登錄時,對口令加密,然後與資料庫中存放的加密口令進行比較。實現步驟如下:
首先,導入命名空間:<%@ Import Namespace="System.Web.Security" %>
其次,編寫加密函數EncrytPwd:
Function EncrytPwd(Pwd as String,PwdFormat as String)
If PwdFormat="MD5" then
'下面一行得到用MD5演算法加密後的字元串
EncrytPwd=FormsAuthentication.(Pwd,"MD5")
'下面一行得到用SHA1演算法加密後的字元串
Else if PwdFormat="SHA1"then
EncrytPwd=FormsAuthentication.(Pwd,"SHA1")
End if
End Function
2.2.2 配置文件web.config 的安全設置
web.config文件是一個簡單的XML文件,專門用於為應用程序配置系統設定、安全性設定、應用程序設定和會話設定。下面分5個內容介紹安全實踐策略。
(1) 資料庫連接字元串常量:Web應用程序網頁要大量用到資料庫連接,為了提高程序安全性、通用性和可移植性,在配置文件中設置資料庫連接字元串常量是很好的方法,在應用程序的web.config文件中添加如下語句:

網頁文件使用時,用下列代碼實現資料庫連接:
Dim strConn As String
strConn=ConfigurationSettings.AppSettings("sqlconntion ")'獲取資料庫連接字元串
(2) 認證和授權:HTML表單驗證(Forms Authentication),是向開發人員提供確認客戶憑證並控制訪問許可權的技術。在應用程序的web.config文件中添加如下語句:

授權:就是讓用戶擁有有效憑證,允許或拒絕訪問Web應用程序。在web.config中添加如下語句:

(3) 虛擬路徑的設置:不同用戶對不同目錄訪問許可權不同,可以設定虛擬目錄來實現

(4) 設置調試模式提高安全策略:默認情況下,錯誤信息保存在棧中。如果開啟調試模式,ASP.NET在運行中發生錯誤時,會顯示錯誤行號,方便調試。可以在頁面或web.config文件中開啟調試模式。例如:

<%@ page debug=」true」 %>'開啟頁面級調試模式

'開啟應用程序級調試模式
但發布程序時,要禁用調試模式,否則出錯時,有泄露後台代碼的隱患。
(5) 頁面出錯處理策略:出錯時轉向統一的出錯頁面,而不必在每個網頁中寫代碼,控制轉向出錯頁面,避免了程序運行期間任何未處理的意外發生時,錯誤頁面代碼泄露或使用戶不知所雲的尷尬發生。頁面出錯處理可以應用下列策略實現:
(A)定製出錯網頁

這個設置可以保證當錯誤出現時,本地用戶訪問默認出錯頁,遠程用戶訪問自定義的error.htm網頁。
(B)處理特別的HTTP請求
對於HTTP錯誤狀態代碼,例如:403禁止,404無法找到,500伺服器錯誤等,可以自定義各自的出錯處理頁面。如下所示:

2.2.3 界面設計:代碼分離和自定義控制項
(1)代碼分離:將程序代碼和HTML內容分離,不僅能增強頁面的條理性、易讀性和團隊開發的容易程度,更重要提高網頁安全性。如:
前台aspx網頁:peixun_base_
xiangmu.aspx.aspx
<%@ Register TagPrefix= "iewc" Namespace="Microsoft.Web.UI.WebControls"
Assembly="microsoft.web.ui.webcontrols" %>
<%@ Page Language="vb" AutoEventWireup="false" Codebehind=
"peixun_base_xiangmu.aspx.vb"Inherits="pxb.MUTI"%>
而後台的peixun_base_xiangmu.aspx.vb文件,專門編寫代碼,實現代碼和HTML內容分離。
(2)自定義控制項:可以根據需要編寫自定義控制項,更好地提供可重用的封裝邏輯,在使用自定義控制項前,需要將定義它們的類文件編譯成動態庫,即:
vbc /t:library /r:system.dll /r:system.web.dll/out:pxbcontrols.dll control.vb
將編寫好的類文件(.vb)編譯成動態庫(.dll),可以供以後多次使用,由於封裝了邏輯,且生成庫,所以安全性得到保障。
除上述外,必須要重視記錄日誌。日誌文件分系統日誌和用戶自定義日誌。系統日誌,如建立資料庫日誌文件;自定義日誌文件:可以利用global.asax文件的session_onStart()事件與session_onEnd()事件實現自定義日誌文件維護,例如:記錄訪問用戶的登錄名,訪問時間,IP地址等信息,在應用程序根目錄的global.asax文件內添加如下代碼:
<%@ Import Namespace= "System.IO"%>
Sub Session_onStart(Sender As Object, E As EventArgs)
'每一位客戶登錄時觸發該事件
sw=New StreamWriter(server.mappath("log/log.txt"),True,Encoding.Default)
'將客戶IP保存到Session中
Session("IP")= Request.ServerVariables("REMOTE_ADDR") sw.Writeline(Now() & "-用戶" & Session("IP") & "進入")
sw.Close
End Sub
Sub Session_OnEnd(Sender As Object, E As EventArgs)
'當每一位客戶超過會話時間沒有和伺服器交互,或關閉瀏覽器後觸發該事件
sw=New StreamWriter(server.mappath("log/log.txt "),True,Encoding.Default)
sw.Writeline(Now() & "-用戶" &Session("IP") & "退出")
sw.Close
End Sub
2.3 發布運行階段:主要考慮如下方面
(1) 關閉調試模式;
(2) 備份轉儲資料庫文件和日誌文件;
(3) 密碼要不斷更新;
(4) 及時打補丁程序。

3總結

綜上所述,基於ASP.NET的Web網路應用程序開發,在充分利用ASP.NET的安全機制、資料庫安全控制、管理員網路安全防範意識的基礎上,可以極大提高Web應用程序的安全性能。

參考文獻
[1] [美]Steven A.Smith等.用實例學ASP.NET.馬燕,閆立軍等,譯.北京:電子工業出版社,2002.
[2] [美]Macro Bellinaso Kevin Hoffman.ASP.NET Web站點高級編程.康博,譯.北京:清華大學出版社,2002.
[3] [美]John Kauffman 等. ASP.NET資料庫入門經典. 康博,譯.北京:清華大學出版社,2002.
[4] 章立民. 用實例學 Crystal Report for Visual Studio.NET.北京:電子工業出版社,2004.

④ 基於ASP.NET MVC框架開發Web論壇應用程序[1]

我想通過本系列文章從頭到尾構建一個完整的ASP NET MVC論壇應用程序 最終的目的是探討和推動使用ASP NET MVC框架構建應用程序的最佳實踐友局

簡介

在本篇中 我想先從全局方面介紹一下論壇應用程序的總體目標 在本篇中 我將討論一下避免代碼壞味道的重要性 還將討論如何利用軟體設計原則和模式來幫助你編寫適合未來改變的富有彈性的代碼 最後 我還將論證一下為什麼我選擇使用測試驅動開發方式構建本系列文章中的論壇應用程序

什麼樣的軟體是好的軟體

我不想僅僅為了構建論壇應用程序而任意構建此論壇應用程序 我的目標是盡可能構建最棒的論壇應用程序

這個目標立即引發這樣一個問題 什麼樣的軟體是好的軟體?是什麼導致一個應用程序比另一個應用程序更好一些或更差一些呢?在事先沒有一個關於 好軟體 的定義之前 我無法聲明我構建了一個完美的論壇應用程序

因此 下面是我對於 好軟體 的定義

好軟體是設計得易於修改的軟體

存在多種原因可能需要你改變軟體

)你可能需要在一個現有軟體上添加新的特徵 )你可能需要修改一個現有軟體中的錯誤 )你可能需要優化現有軟體 )你可能需要改進現有軟體的設計

一般說來 設計糟糕的軟體是難於改變的 有些軟體設計得如此糟糕 以致於每個人都害怕碰一碰它 我們大家應該都使用過設計得糟糕的軟體 當軟體不好時 你很希望它乾脆走開 甚至如果有機會的話 你可能想從頭開始重新編寫這款軟體

避免代碼壞味道

Robert和Micah Martin把糟糕的軟體部分描述為代碼壞味道 下列代碼壞味道意味著此軟體的書寫是相當糟糕的

)僵化性(Rigidity)—僵化的軟體是這樣的軟體 當你在某個位置作一改動時即要求對系統作出相應的一系列的更改 )脆弱性(Fragility)—脆弱的軟體是這樣的軟體 你在某個好鋒讓位置作一改動時即打斷另外多處的正常運行 )不必要的復雜性—不必要的復雜軟體是指過度設計的軟體 其目的是為了處理任何可能的改變 )不必要的重復—不必要的重復軟體中包含大量的重復性代碼 )晦澀性—晦澀的軟體是指難於理解的軟體

【注意】上述這些代碼味道在Micah和Robert Martin的著名《Agile Principles Patterns and Practices in C#》中得到充分的描述 在此 強烈建議讀者讀一下這本書 注意 上述這些代碼味道都與所有的代碼改變相關聯 每一個這些代碼味道都將妨礙代碼的改變

軟體設計原則

遵循良好的軟體設計原則 將有助於編寫軟體易於適應未來更改的軟體 軟體設計原則有若干 也不盡相同 例如 Cunningham和Cunningham Wiki描述面向對象設計的 個原則 //c /cgi/wiki?

其中提到的面向對象設計的前五個原則與Robert Martin及他的兒子Micah Martin編著的《Agile Principles Patterns and Practices in C#》中所基激主張的軟體設計原則是一致的 此外 Robert Martin還在Object Mentor開辟的博客上討論了這些原則 // objectmentor /resources/publishedArticles

此外 我還發現有另外兩本書中也提供了有關軟體設計原則的極其有用的信息 第一本是Eric Freeman Elisabeth Freeman Kathy Sierra Bert Bates編著的《Head First Design Patterns》 第二本是Brett McLaughlin Gary Pollice和David West編著的《Head First Object Oriented Analysis and Design》 盡管這些書所討論的原則與Robert Martin的提法並不十分相同 但是它們卻十分相近

lishixin/Article/program/net/201311/14493

⑤ 基於ASP.NET MVC框架開發Web論壇應用程序


我想通過本系列文章從頭到尾構建一個完整的 MVC論壇應用程序,最終的目的是探討和推動使用 MVC框架構建應用程序的最佳實踐。
1、 簡介
在本篇中,我想先從全局方面介紹一下論壇應用程序的總體目標。在本篇中,我將討論一下避免代碼壞味道的重要性,還將討論如何利用軟體設計原則和模式來幫助你編寫適合未來改變的富有彈性的代碼。最後,我還將論證一下為什麼我選擇使用測試驅動開發方式構建本系列文章中的論壇應用程序。
2、 什麼樣的軟體是好的軟體
我不想僅僅為了構建論壇應用程序而任意構建此論壇應用程序。我的目標是盡可能構建最棒的論壇應用程序。
這個目標立即引發這樣一個問題:什麼樣的軟體是好的軟體?是什麼導致一個應用程序比另一個應用程序更好一些或更差一些呢?在事先沒有一個關於「好軟體」的定義之前,我無法聲明我構建了一禪高個完美的論壇應用程序。
因此,下面是我對於「好軟體」的定義。
3、 好軟體是設計得易於修改的軟體
存在多種原因可能需要你改變
1)你可能需要在一個現有軟體上添加新的特徵
2)你可能需要修改一個現有軟體中的錯誤
3)你可能需要優化現有軟體
4)你可能需要改進現有軟體的設計
一般說來,設計糟糕的軟體是難於改變的。有些軟體設計得如此糟糕,以致於每個人都害怕碰一碰它。我們大家應該都使用過設計得糟糕的軟體。當軟體不好時,你很希望它乾脆走開;甚至如果有機會的話,你可能想從頭開始重新編寫這款軟體。
4、 避免代碼壞味道
Robert和Micah Martin把糟糕的軟體部分描述為代碼壞味道。下列代碼轎伏壞味閉襲攜道意味著此軟體的書寫是相當糟糕的:
1)僵化性(Rigidity)—僵化的軟體是這樣的軟體,當你在某個位置作一改動時即要求對系統作出相應的一系列的更改。
2)脆弱性(Fragility)—脆弱的軟體是這樣的軟體,你在某個位置作一改動時即打斷另外多處的正常運行。
3)不必要的復雜性—不必要的復雜軟體是指過度設計的軟體,其目的是為了處理任何可能的改變。
4)不必要的重復—不必要的重復軟體中包含大量的重復性代碼。
5)晦澀性—晦澀的軟體是指難於理解的軟體。
【注意】上述這些代碼味道在Micah和Robert Martin的著名《Agile Principles,Patterns,and Practices in C#》中得到充分的描述。在此,強烈建議讀者讀一下這本書。
注意,上述這些代碼味道都與所有的代碼改變相關聯。每一個這些代碼味道都將妨礙代碼的改變。
5、 軟體設計原則
遵循良好的軟體設計原則,將有助於編寫軟體易於適應未來更改的軟體。軟體設計原則有若干,也不盡相同。例如,Cunningham和Cunningham Wiki描述面向對象設計的11個原則:

其中提到的面向對象設計的前五個原則與Robert Martin及他的兒子Micah Martin編著的《Agile Principles,Patterns,and Practices in C#》中所主張的軟體設計原則是一致的。此外,Robert Martin還在Object Mentor開辟的博客上討論了這些原則:

此外,我還發現有另外兩本書中也提供了有關軟體設計原則的極其有用的信息。第一本是Eric Freeman,Elisabeth Freeman, Kathy Sierra, Bert Bates編著的《Head First Design Patterns》;第二本是Brett McLaughlin,Gary Pollice和David West編著的《Head First Object-Oriented Analysis and Design》。盡管這些書所討論的原則與Robert Martin的提法並不十分相同,但是它們卻十分相近。
不過真實的情況是,上述所有這些針對軟體設計原則展開討論的資源都源自Robert Martin的工作。Robert Martin並不是所有原則的發明者,但是他的確是第一個把這些原則收集到一起的人。下面列出這些軟體設計原則:
SRP—單一責任原則
OCP—開關原則
LSP—Liskov替換原則
ISP—介面隔離原則
DIP—依賴倒置原則
上述這個原則的集合正好對應於縮略詞SOLID。
下面的軟體設計原則列表來自於《Head First Design Patterns》一書:
封裝變化
多用組合少用繼承
基於介面而不是基於實現編程
在交互的對象間努力實現松耦合
類應該為了擴展而開放,但是為了修改而關閉
依賴於抽象,而不要依賴於具體類
僅僅對你的朋友交談
不調用我,我們會調用你
一個類應該僅有一個改變的理由
當然,上述原則之間也存在許多的重疊之處。例如,「單一責任」原則與後面的「一個類應該僅有一個改變的理由」這一原則是相一致的。然而,它們所強調的重點還是有所不同。更多的細節在此不便贅述。
所有這些設計原則的真正動機在於,努力構建出能夠適應變化的軟體。上述原則分別對於不同的原則進行相應的闡述,最終目的也不過是為了創建出可以經得起時間測試的軟體。
6、 軟體設計模式
軟體設計模式描述的是應用軟體設計原則所遵循的策略的問題。換句話說,一個軟體設計原則是一個好的思想,而一個軟體設計模式是你用於實現這種好的思想的工具。
軟體設計模式的思想最初源於書籍《Design Patterns: Elements of Reusable Object-Oriented Software》。正是這本書為其它許多描述軟體設計模式書的創作帶去靈感。
例如,另一本書《The Head First Design Pattern》就以一種更易於理解的方式向人們介紹了GOF所著的書(即上面的那本《Design Patterns: Elements of Reusable Object-Oriented Software》)中所引入的設計模式。這本書中總共詳細介紹了下列14種軟體設計模式:
Strategy
Observer
Decorator
Factory
Singleton
Command
Adaptor
Fa?ade
Template
Iterator
Composite
State
Proxy
Compound
另一本在軟體設計模式方面較有影響的書是Martin Fowler的《Patterns of Enterprise Application Architecture》。這本書還擁有一個公司網站,其中列舉了本書中所介紹的模式。此網站的網址是:。
軟體設計模式提供給你按照模式的方式構建你的代碼,從而使之更富於適應未來的彈性修改。例如,當構建本文中的論壇應用程序時,我們就使用了一種名字為Repository的軟體設計模式進行設計。Eric Evans,在他的著作《Domain-Driven Design》中這樣描述Repository模式:
一個REPOSITORY把某種類型的所有對象描述為一個概念的集合(通常是模擬的)。其行為類似於一個集合,但是具有更細致的支持查詢的能力。於是,符合相應類型的對象可以被添加或刪除,而位於此REPOSITORY背後的系統則可以從資料庫中添加或刪除它們。
根據Evans的解釋,Repository模式的一個主要的優點是,它能夠幫助你實現「應用程序和域設計與存儲技術,多種資料庫策略,甚至是多個數據源之間的解耦。」換句話說,Repository模式能夠使你的應用程序免於因資料庫訪問方式的不同而重新加以改變。
為了使我們的論壇應用程序從某一種特定的存儲技術中獨立出去,我們將在系統中引入上述Repository模式。因此,最終的此論壇應用程序的設計將能夠支持我們可以在不同的數據訪問技術(例如LINQ to SQL,Entity Framework或NHibernate)之間切換。
7、 測試驅動開發
我打算使用測試驅動開發原則構建本文中的MVC論壇應用程序。更具體地說是,在我編寫任何應用程序代碼之前,我將首先編寫一個應用程序代碼的單元測試。
測試驅動開發將會基於下列原因為你帶來更高質量的代碼:
(1)為你的代碼編寫測試能夠提供給你一個適應於未來可能改變的安全網。
(2)為你的代碼編寫測試迫使你書寫松耦合的代碼。
(3)在正式書寫你的代碼前為你的代碼編寫測試將迫使你從一個用戶的角度來觀察自己書寫的代碼。
讓我們更細致地分析上述每種特徵的優點。
首先,單元測試提供你一個適應於未來可能改變的安全網。這是Michael Feathers在他的著作《Working Effectively with Legacy Code》一再強調的一個觀點。事實上,他把遺留代碼定義為「簡單地編碼而不進行測試」。
當你的應用程序代碼被單元測試所覆蓋時,你可以修改該代碼而不必擔心此改動會你的代碼既有的功能。單元測試有助於使你的代碼進行更安全的重構。如果你能夠重構,那麼,你可以使用軟體設計模式修改你的代碼,這將產生更好的適應未來修改的代碼。
其次,遵循測試驅動開發將迫使你使用一種特定的方式書寫代碼。可測試的代碼將趨於導致松耦合的代碼。單元測試能夠在各自孤立的代碼單元中執行一個測試。為了構建你的應用程序以便使之可測試,你需要使用一種可孤立的組件方式來構建應用程序。
一個類與另一個類之間是松耦合的是指,當你改變第一個類時不必改變另一個類。測試驅動開發經常迫使你編寫松耦合的代碼,因為松耦合代碼是經得起改變的。
最後,按照測試先行的方式書寫代碼將迫使你從一個用戶的角度來觀察自己書寫的代碼。通過首先編寫測試的方式書寫代碼,會使你站在一個未來的有可能使用你的代碼的開發者的角度進行工作。既然編寫測試迫使你考慮另一個開發者(也許是未來的你自己)如何使用你的代碼,那麼,你最終編寫的代碼應該是設計得更好的代碼。
8、 莫圖眼前之利益 更宜立足於長遠
使用測試驅動開發原則構建軟體在軟體開發之初要求開發者付出更多的努力。盡管編寫測試需要花費一定的時間;然而,其思想是,最初構建單元測試所要求付出的努力將會在未來獲得豐厚的回報。
存在兩種方式可以使你成為一名開發者。你可以成長為一個牛仔,也有可能成長為一個工匠。一個牛仔能夠立即開始編碼。也就是說,一個牛仔可以以很快的速度構建一個軟體應用程序。然而,作為一個牛仔,其問題在於軟體必須要進行長期的維護。
一個工匠則是很有忍耐性的。一個工匠總會精雕細琢地開發一款軟體。一個工匠總是非常仔細地構建單元測試,並使之涵蓋一個應用程序中所有的代碼。因此,一個工匠要花費更長的時間才能創建成功一款應用程序。然而,此應用程序在創建後,卻是易於後期的維護—更易於修改錯誤且更易於把新特徵添加到應用程序中。
9、 總結
總之,我們的最終目標是構建一個MVC論壇應用程序,此程序能夠經得起長時間的測試。它應該是不僅現在良好地工作,還應該在未來繼續工作—即使是當有人需要對該應用程序進行更改之時。
我想利用微軟 MVC框架開發此論壇應用程序。原因在於,這個框架可以使我更容易地編寫程序的測試代碼。而另一方面, MVC框架本身就從設計之初提供了對測試驅動開發的最忠誠的支持。

⑥ MICROSOFT .NET FRAMEWORK 2.0 是什麼

.NET Framework 是支持生成和運行下一代應用程序和 XML Web services 的內部 Windows 組件。.NET Framework 旨在實現下列目標:

·提供一個一致的面向對象的編程環境,而無論對象代碼是在本地存儲和執行,還是在本地執行但在 Internet 上分布,或者是在遠程執行的。

·提供一個將軟體部署和版本控制沖突最小化的代碼執行環境。

·提供一個可提高代碼(包括由未知的或不完全受信任的第三方創建的代碼)執行安全性的代碼執行環境。

·提供一個可消除腳本環境或解釋環境的性能問臘判題的代碼執行環境。

·使開發人員的經驗在面對類型大不相同的應用程序(如基於 Windows 的應用程序和基於 Web 的應用程序)時保持一致。

·按照工業標准生成所有通信,以確保基於 .NET Framework 的代碼可與任何其他代碼集成。

.NET Framework 具有兩個主要組件:公共語言運行庫和 .NET Framework 類庫。
公共語言運行庫是 .NET Framework 的基礎。您可以將公共語豎友言運行庫看作一個在執行時管理代碼的代理,它提供內存管理、線程管理和遠程處理等核心服務,並且還強制實施嚴格的類型安全以及可提高安全性和可靠性的其他形式的代碼准確性。這類似於Java的虛擬機。事實上,代碼管理的概念是公共語言運行庫的基本原則。以公共語言運行庫為目標的代碼稱為託管代碼,而不以公共語言運行庫為目標的代碼稱為非託管代碼。
.NET Framework 的另一個主要組件是類庫,它是一個綜合性的面向對象的可重用類型集合,您可以使用它開發多種應用程序,這些應用程序包括傳統的命令行或圖形用戶界面 (GUI) 應用程序,也包括基於 ASP.NET 所提供的最新創新的應用程序(如 Web 窗體和 XML Web services)。

【客戶端應用程序開發】
客戶端應用程序在基於 Windows 的編程中最接近於傳統風格的應用程序。這些是在桌面上顯示窗口或窗體從而使用戶能夠執行任務的應用程序類型。客戶端應用程序包括諸如字處理程序和電子表格等應用程序,還包括自定義的業務應用程序(如數據輸入工具、報告工具等等)。客戶端應用程序通常使用窗口、菜單、按鈕和其他 GUI 元素,並且它們可能訪問本地資源(如文件系統)和外圍設備(如列印機)。

另一種客戶端應用程序是作為網頁通過 Internet 部署的傳統 ActiveX 控制項(現在被託管 Windows 窗體控制項所替代)。此應用程序非常類似於其他客戶端應用程序:它在本機執行,可以訪問本地資源,並包含圖形元素。

過去,開發人員結合使用 C/C++ 與 Microsoft 基礎類 (MFC) 或應用程序快速開發 (RAD) 環境(如 Microsoft® Visual Basic®)來創建此類應用程序。.NET Framework 將這些現有產品的特點合並到了單個且一致的開發環境中,該環境輪纖改大大簡化了客戶端應用程序的開發。

包含在 .NET Framework 中的 Windows 窗體類旨在用於 GUI 開發。您可以輕松創建具有適應多變的商業需求所需的靈活性的命令窗口、按鈕、菜單、工具欄和其他屏幕元素。

例如,.NET Framework 提供簡單的屬性以調整與窗體相關聯的可視屬性。某些情況下,基礎操作系統不支持直接更改這些屬性,而在這些情況下,.NET Framework 將自動重新創建窗體。這是 .NET Framework 集成開發人員介面從而使編碼更簡單更一致的許多方法之一。

和 ActiveX 控制項不同,Windows 窗體控制項具有對用戶計算機的不完全受信任的訪問許可權。這意味著二進制代碼或在本機執行的代碼可訪問用戶系統上的某些資源,例如 GUI 元素和訪問受限制的文件,但這些代碼不能訪問或危害其他資源。由於具有代碼訪問安全性,許多曾經需要安裝在用戶系統上的應用程序現在可以通過 Web 部署。您的應用程序可以在像網頁那樣部署時實現本地應用程序的功能。

【伺服器應用程序開發】
在託管領域中,伺服器端應用程序是通過運行庫宿主實現的。非託管應用程序承載公共語言運行庫,後者使您的自定義託管代碼可以控制伺服器的行為。此模型在獲得主伺服器的性能和可伸縮性的同時提供給您公共語言運行庫和類庫的所有功能。

2.0是隨VS2005一起發的版本,目前已有.net framework 3.5的版本了

Visual Studio相關電子資料、軟體匯總:

VS代碼輔助工具Visual Assist X 10.4 完美版+特別文件
http://bbs.topsage.com/dispbbs.asp?boardID=123&ID=163726
CodeSmith 4.1.2 專業版 最新完美版 .NET代碼模板生成工具
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=159347
Altova MissionKit 2008 for Enterprise Software Architects完美版
http://bbs.topsage.com/dispbbs.asp?boardID=123&ID=162733
正則表達式輔助生成工具RegexBuddy 3.0.5破解版
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=162738
Pro Visual Studio 2005 Team System
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=146375
Microsoft Visual Studio 2005 Unleashed
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=146812
Visual Studio Team System Better Software Development for Agile Team
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=146393

.NET開發語言電子資料匯總:

Pro LINQ:Language Integrated Query in C# 2008
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=166647
MS Press - Introcing Microsoft LINQ
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=163429
LINQ for Visual C# 2005 (07年6月出版)
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=160598
LINQ for VB 2005 (07年6月最新PDF文字版)
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=160599
Manning:LINQ in Action
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=173732
Pro C# 2008 and the .NET 3.5 Platform
http://bbs.topsage.com/dispbbs_121_164399_1.html
Apress出版 Accelerated C# 2008
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=166768
Wrox C# 入門經典
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=145845
C# 設計模式
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=146178
C# 網路核心編程
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=146173
Windows應用高級編程 C#編程篇
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=146168
C#高級編程(第三版)
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=146165
數據結構與演算法 C#語言版
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=158814
C#字元串和正則表達式參考手冊
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=151265
O'Reily 正則表達式參考手冊 第二版 2007年最新出版
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=158756
Programming Microsoft Windows with C#
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=146163
C# 2005圖解教程
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=156700
Visual C# 2005 Express Edition編程初學者指南
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=159655
Programming .NET Framework with C#
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=163514
C#語言參考
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=158107
C#應用程序開發
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=158106
Client Side Reporting with Visual Studio in C#
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=167264
Wrox Professional VB 2005 with .NET 3.0
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=158893
Build A Program Now Visual Basic 2005
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=146029
.NET游戲編程入門經典—VB.NET篇
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=158821
O'Reilly Visual Basic 2005 Cookbook
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=160654
.NET Insight for Classic VB Developers
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=162041
Fast Track Visual Basic.NET
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=161990
Security for Microsoft Visual Basic.NET
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=175012
Visual Basic.NET How to Program 第二版
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=173182
Visual Basic 2005 簡明教程
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=173180
Visual Basic 2005傻瓜書
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=173178
Programming Visual Basic.NET
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=173164
VB開發人員SQL Sever指南
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=173176
How to Code .NET
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=145559
ADO.NET全攻略
http://bbs.topsage.com/dispbbs.asp?boardID=122&ID=145338
Apress出版 Pro ADO.NET 2.0
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=170463
Apress Professional ADO.NET 2.0
http://bbs.topsage.com/dispbbs.asp?boardID=122&ID=145214
O'Reilly .NET and XML
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=149521
.NET組件編程 (第二版)
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=152046
Wrox Beginning Visual C++ 2005
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=151263
Visual C++.NET專業項目
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=163612
Programming with Visual C++.NET 第六版
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=173170
精通.Net核心技術原理與構架
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=151312
Cross-Platform Web Services Using C# and Java
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=160472
Advanced C# Programming
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=159657

ASP.NET1.x/2.0電子資料匯總:

O'Reilly Silverlight 1.1簡介
http://bbs.topsage.com/dispbbs.asp?boardID=123&ID=163145
Wrox出版 Silverlight 1.0 (彩頁染色代碼、全面解析)
http://bbs.topsage.com/dispbbs.asp?boardID=123&ID=165953
Silverlight 1.0 Development with JavaScript
http://bbs.topsage.com/dispbbs.asp?boardID=123&ID=163268
Sams出版 Silverlight 1.0 Unleashed
http://bbs.topsage.com/dispbbs.asp?boardID=123&ID=162975
Silverlight and ASP.NET Revealed
http://bbs.topsage.com/dispbbs.asp?boardID=123&ID=174174
O'Reilly Essential Silverlight
http://bbs.topsage.com/dispbbs.asp?boardID=123&ID=163266
XAML簡明教程 CHM+PDF版
http://bbs.topsage.com/dispbbs.asp?boardID=123&ID=163430
Pro ASP.NET 3.5 in C# 2008
http://bbs.topsage.com/dispbbs.asp?boardID=123&ID=166640
Beginning ASP.NET 3.5 in VB 2008 從入門到精通
http://bbs.topsage.com/dispbbs.asp?boardID=123&ID=166774
Wrox ASP.NET 2.0 MVP Hacks and Tips
http://bbs.topsage.com/dispbbs.asp?boardID=123&ID=163467
Professional ASP.NET.2.0 Design
http://bbs.topsage.com/dispbbs.asp?boardID=123&ID=160236
Professional Web Parts and Custom Controls with ASP.NET 2.0
http://bbs.topsage.com/dispbbs.asp?BoardID=123&ID=162787
ASP.NET2.0入門經典
http://bbs.topsage.com/dispbbs.asp?boardID=123&ID=146151
ASP.NET 2.0 技術內幕 微軟技術叢書 清華大學出版
http://bbs.topsage.com/dispbbs_123_171293_1.html
Wrox ASP.NET 2.0 Visual Web Developer 2005 Express Edition Starter
http://bbs.topsage.com/dispbbs.asp?boardID=123&ID=145208
Beginning ASP.NET 2.0 in C# 2005 From Novice to Professional
http://bbs.topsage.com/dispbbs.asp?boardID=123&ID=145396
Wrox Professional ASP.NET 2.0
http://bbs.topsage.com/dispbbs.asp?boardID=123&ID=145202
Wrox Professional ASP.NET 2.0 XML
http://bbs.topsage.com/dispbbs.asp?boardID=123&ID=145197
Wrox Professional ASP.NET 2.0 Security Membership and Role Management
http://bbs.topsage.com/dispbbs.asp?boardID=123&ID=145198
Wrox Beginning ASP.NET 2.0 and Databases
http://bbs.topsage.com/dispbbs.asp?boardID=123&ID=147078
Pro ASP.NET 2.0 in VB 2005
http://bbs.topsage.com/dispbbs.asp?boardID=121&ID=173790
ASP.NET開發人員手冊
http://bbs.topsage.com/dispbbs.asp?boardID=123&ID=145391
ASP.NET 2.0網路編程入門到精通
http://bbs.topsage.com/dispbbs.asp?boardID=123&ID=145342
ASP.NET Web應用程序開發新思維
http://bbs.topsage.com/dispbbs.asp?boardID=123&ID=145302
ASP.NET 2.0高級應用程序設計專家教程
http://bbs.topsage.com/dispbbs.asp?boardID=123&ID=146379
ASP.NET XML高級編程 C#編程篇
http://bbs.topsage.com/dispbbs.asp?boardID=123&ID=148800
ASP.NET程序開發 C#篇
http://bbs.topsage.com/dispbbs.asp?boardID=123&ID=159285
ASP.NET XML深入編程技術
http://bbs.topsage.com/dispbbs.asp?boardID=123&ID=148795
ASP.NET 2.0 Cookbook
http://bbs.topsage.com/dispbbs.asp?boardID=123&ID=151984
ASP.NET 2.0 Everyday Apps for Dummies
http://bbs.topsage.com/dispbbs.asp?boardID=123&ID=158103
Pro ASP.NET for SQL Server
http://bbs.topsage.com/dispbbs.asp?boardID=123&ID=167279
ASP.NET 從入門到精通
http://bbs.topsage.com/dispbbs.asp?boardID=123&ID=159331
Wrox Beginning ASP.NET 1.1 with Visual C#.NET 2003
http://bbs.topsage.com/dispbbs.asp?boardID=123&ID=160240
ASP.NET 2.0 揭秘
http://bbs.topsage.com/dispbbs.asp?boardID=123&ID=160249
Build Your Own ASP.NET 2.0 Web Site Using C# and VB
http://bbs.topsage.com/dispbbs.asp?boardID=123&ID=163143
開發Microsoft ASP.NET 2.0網路應用程序
http://bbs.topsage.com/dispbbs.asp?boardID=123&ID=160473
Pro ASP.NET 2.0 Website Programming
http://bbs.topsage.com/dispbbs.asp?boardID=123&ID=174179
開發ASP.NET 2.0 核心參考
http://bbs.topsage.com/dispbbs.asp?boardID=123&ID=160474
Building Websites with VB.NET and DotNetNuke 4
http://bbs.topsage.com/dispbbs.asp?boardID=123&ID=160639
Wrox出版 Professional DotNetNuke 4.0
http://bbs.topsage.com/dispbbs.asp?boardID=123&ID=166008
Professional DotNetNuke ASP.NET Portals
http://bbs.topsage.com/dispbbs.asp?boardID=123&ID=163399

⑦ ASP.NET技術方案寶典的介紹

《ASP.NET技術方案寶典》一書從唯和ASP.NET進行Web應用指逗盯程序開發必須掌握的核心技術入手,通過實用方案深入介紹各種核心技術在實際開發中的應用。全書分為9章,分別是設計模式與架構選擇指鬧方案、頁面設計方案、資料庫操作技術方案、數據檢索方案、決策分析方案、水晶報表列印方案、網路通信方案、網站安全與管理方案、網站編譯與發布方案等。

⑧ 如何看待asp.netweb開發技術

先簡單回顧下asp.net過去十年

mvc流行前

asp.net的服務端控制項,將html和js一起封裝,很多客戶端事件自動通過生成的js將數據重新post回服務端。而對於很多剛入門的小夥伴來說,僅僅靠拖放控制項和寫C#代碼就可以實現一個可用的Web項目,大大降低了入門門檻。相應的,服務端控制項這種過度耦合的設計帶來了很多缺點:自定義控制難,難以純粹將前後端分離,導致asp.net從業人員既不能精通困神前段技術,又不能涉獵更多的後端技術(生態問題)。

這個年代,.net被貼上了「拖放控制項」的標簽。

mvc流行後

微軟推出了asp.netmvc,很多公司已經開始嘗試前後端分離。就模式上面來說,已經和其它語言平台基於mvc的web項目開發模式無異。

但是asp.net本身的服務框架太雜亂,尤其是艱難(如果你留意過,甚至可以說難產)支持asyncawait非同步編程後,他的同步上下文模型缺點太大:首先是源碼的結構混亂,其次是使用過程很多人容易造成死鎖,非同步方法使用不當導致請求已返回上下文已釋放然後找不到同步對象導致的異常。問題的根源是大部分程序員對線程了解不深,如果項目有正確的規范用法還好,一旦沒有,產生異常很多人根本不知道問題出在哪裡。博客園改造過程中就嘩尺桐出現過的死鎖,有興趣的可以去看看博客園官方博客寫過。

aspnetcore

新應用程序模型設計和代碼實現,我非常喜歡。其它的不說,看看那簡潔的Reqeust和Response對象,是不是就會讓你欣喜?再看看中間件管道,上下文(Context)通過委託鏈鏈一路傳遞,再也不用晦澀的同步上下文,也移除了和Windows安全相關的特徵。

整個架構更加清晰,喜歡做擴展的人絕對會有一日看盡長安花的快感。

自然性能也不用說,可以關注github上亂坦微軟之前做過的除了mvc之外的性能測試對比。

net生態

擁抱開源後,netcore,standard,aspnetcore,efcore等一系列實現全部都有了,明年的netcore3.0還會包含客戶端模型(wpf和winform,只能在windows下使用)。

github上面aspnet,dotnet,dotnet-architecture等分支包含大量微軟直接維護的開源項目。

開源社區大部分的項目已經跟進將三方組件基於standard標准打包。

微軟也久違地把散亂的文檔匯集到docs子域名下

萬事劇本,就欠生態!如果apache基金會下面的重要項目都有.net的分支,相信依靠netcore必定可以再次搶占不少的份額。

前景

微服務流行後,其實內部可以混合多種平台提供服務,用aspnetcore做對三方組件需求不太大的業務服務是完全的可以的,基於微軟一貫的作風,開發效率是很高的。

其實現在很多內部系統在用.net,只是面向互聯網相關的項目,更加需求豐富的三方資源,採用.net的比較少。不過很多大的公司都有.net的分支團隊。畢竟在桌面和開發效率上的優勢,還是有他存在的價值。

aspnet到底會如何發展,個人感覺還是要看社區的反應,要看生態是否能逐步豐富起來。

看在微軟這么努力的份上,個人挺希望他能夠扳回一局。

所以?

眼光放長遠一點,平台只是我們的工具,一個IT人不應當把自己的技術范圍限定到某一個平台。多學多積累,實際項目中應該針對需求、架構以及團隊做出選擇。

比如Java和.net同時掌握,各取所長,基於他們重疊性較高的原因,學習成本並不高。何況絕大部分的知識和平台並無關系。

個人見解純手打,歡迎大家評論或者提出意見。

⑨ 《Web程序設計ASP.NET第2版》pdf下載在線閱讀全文,求百度網盤雲資源

《Web程序設計ASP.NET第2版》網路網盤pdf最新全集下載:
鏈接:https://pan..com/s/1ayPcM5FHJG2RHV5BhMjm2w

?pwd=oq5i 提取碼:oq5i
簡介:全書共12章,內容分為兩部分。第一部分為第1章和第2章,主要介紹Web基礎知識和ASPNET相關知識。第二部分為第3章-第12章,從網路涉及的實用模塊出發,結合流行的技術和組件,詳細介紹每個模塊的設計原理及實現過程,進而講解ASP.NET在網路開發中的應用,內容主要包括ASPNET控制項、ADO.NET、數據綁定、LINQ查詢、網站主題、數據驗證和網路優化等。

本書實踐知識與理論知識並重,力求使讀者通過親自動手來掌握ASPNET新技術,從而學習盡可能多的知識,了解盡可能多的應用。本書可作為普通高等院校相關專業Web程序設計、網路程序設計、ASPNET程序設計等課程的教材,同時也適用於初、中級ASPNET用戶學習參考。

⑩ ASP.NET開發寶典:ASP.NET的優點

ASP NET的優點

ASP NET使得建立網站和網頁並維持其運行變得更加簡單 ASP NET 將應用程序代碼行數減少約 % 可以使開發人員將注意力讓顫世轉移到如何實現業務邏輯上 盡量做到在不寫或者少寫代碼的情況下也可完成任務

新增的伺服器控制項和現有的伺服器控制項 可以輕松 快捷坦肢地創建ASP NET Web應用程序 在頁面框架設計方面 ASP NET 同樣做出了重大的改進 使用母版頁提供一致的布局 使用主題和皮膚可以為站點創建一致的外觀

ASP NET 的優點主要包括以下幾方面

( )生產效率高 使用新增的ASP NET伺服器控制項和包含新增功能的現有控制項 可以輕松 快捷地創建ASP NET網洞斗頁和應用程序 新增內容(如成員資格 個性化和主題)可以提供系統級的功能 此類功能通常可能會要求開發人員進行大量的代碼編寫工作 新增數據控制項 無代碼綁定和智能數據顯示控制項已經解決了核心開發方案問題

( )靈活性和可擴展性 很多ASP NET功能都可以擴展 這樣可以輕松地將自定義功能集成到應用程序中 例如 ASP NET提供程序模型為不同數據源提供插入支持

( )性能 使用諸如預編譯 可配置的緩存和SQL緩存失效等功能 可以優化Web應用程序的性能

( )安全性 現在向Web應用程序添加身份驗證和授權比以往任何時候都簡單

( )宿主 ASP NET中包含的新增功能使得管理宿主環境變得更加簡單 從而為宿主主體創建了更多的增值機會

( )完整性 新增功能和現有功能協同工作 可以創建解決實時Web開發挑戰的端對端方案

返回目錄 ASP NET開發寶典

編輯推薦

ASP NET開發培訓視頻教程

Microsoft NET框架程序設計視頻教程

ASP NET MVC 框架揭秘

lishixin/Article/program/net/201311/16048