用來生成分形山的matlab程序,直接運行既是用中點法,迭代生成分形山,非常好用
上傳時間: 2014-01-16
上傳用戶:希醬大魔王
共軛梯度法為求解線性方程組而提出。后來,人們把這種方法用于求解無約束最優化問題, 使之成為一種重要的最優化方法。 共軛梯度法的基本思想是把共軛性與最速下降方法相結合, 利用已知點處的梯度構造一組共 軛方向, 并沿這組方向進行搜索, 求出目標函數的極小點。 根據共軛方向的基本性質, 這種 方法具有二次終止性。 在各種優化算法中, 共軛梯度法是非常重要的一種。 其優點是所需存 儲量小,具有步收斂性,穩定性高,而且不需要任何外來參數。 共軛方向 無約束最優化方法的核心問題是選擇搜索方向 . 在本次實驗中 , 我們運用基于共軛方向的一種 算法 — 共軛梯度法 三.算法流程圖: 四.實驗結果: (1). 實驗函數 f=(3*x1-cos(x2*x3)-1/2)^2+(x1^2-81*(x2+0.1)+sin(x3)+1.06)^2+(exp(-x1*x2)+20*x3+ 1/3*(10*3.14159-3))^2; 給定初始點 (0,0,0) , k=1 ,最 大迭代次數 n ? ? d 確定搜索方向 進 退 法 確 定 搜 索 區 間 分割法確定最 優步長
上傳時間: 2016-05-08
上傳用戶:saren11
function [alpha,N,U]=youxianchafen2(r1,r2,up,under,num,deta) %[alpha,N,U]=youxianchafen2(a,r1,r2,up,under,num,deta) %該函數用有限差分法求解有兩種介質的正方形區域的二維拉普拉斯方程的數值解 %函數返回迭代因子、迭代次數以及迭代完成后所求區域內網格節點處的值 %a為正方形求解區域的邊長 %r1,r2分別表示兩種介質的電導率 %up,under分別為上下邊界值 %num表示將區域每邊的網格剖分個數 %deta為迭代過程中所允許的相對誤差限 n=num+1; %每邊節點數 U(n,n)=0; %節點處數值矩陣 N=0; %迭代次數初值 alpha=2/(1+sin(pi/num));%超松弛迭代因子 k=r1/r2; %兩介質電導率之比 U(1,1:n)=up; %求解區域上邊界第一類邊界條件 U(n,1:n)=under; %求解區域下邊界第一類邊界條件 U(2:num,1)=0;U(2:num,n)=0; for i=2:num U(i,2:num)=up-(up-under)/num*(i-1);%采用線性賦值對上下邊界之間的節點賦迭代初值 end G=1; while G>0 %迭代條件:不滿足相對誤差限要求的節點數目G不為零 Un=U; %完成第n次迭代后所有節點處的值 G=0; %每完成一次迭代將不滿足相對誤差限要求的節點數目歸零 for j=1:n for i=2:num U1=U(i,j); %第n次迭代時網格節點處的值 if j==1 %第n+1次迭代左邊界第二類邊界條件 U(i,j)=1/4*(2*U(i,j+1)+U(i-1,j)+U(i+1,j)); end if (j>1)&&(j U2=1/4*(U(i,j+1)+ U(i-1,j)+ U(i,j-1)+ U(i+1,j)); U(i,j)=U1+alpha*(U2-U1); %引入超松弛迭代因子后的網格節點處的值 end if i==n+1-j %第n+1次迭代兩介質分界面(與網格對角線重合)第二類邊界條件 U(i,j)=1/4*(2/(1+k)*(U(i,j+1)+U(i+1,j))+2*k/(1+k)*(U(i-1,j)+U(i,j-1))); end if j==n %第n+1次迭代右邊界第二類邊界條件 U(i,n)=1/4*(2*U(i,j-1)+U(i-1,j)+U(i+1,j)); end end end N=N+1 %顯示迭代次數 Un1=U; %完成第n+1次迭代后所有節點處的值 err=abs((Un1-Un)./Un1);%第n+1次迭代與第n次迭代所有節點值的相對誤差 err(1,1:n)=0; %上邊界節點相對誤差置零 err(n,1:n)=0; %下邊界節點相對誤差置零 G=sum(sum(err>deta))%顯示每次迭代后不滿足相對誤差限要求的節點數目G end
標簽: 有限差分
上傳時間: 2018-07-13
上傳用戶:Kemin
《現代通信系統盲處理技術新進展---基于智能算法》主要由以下8章組成: 第1章簡要介紹無線通信系統的結構和發展概況,以及其盲處理算法的相關知識。第2章介紹人工神經網絡及相應知識,從BP神經網絡若手研究盲處理問題,同時給出復數域BP神經網絡的信號盲處理方法和該類方法的優缺點說明。在第3章中介紹智能體的概念,并給出基于多智能體系統的盲處理方法。第4章介紹基于支持向量機框架下的盲處理算法,介紹支持向批機的原理,給出基于ε- 支持向量回歸機的信道估計新方法,并介紹基千支持向批回歸方法的MPSK和QAM的盲信號處理方法,然后引入星座匹配誤差函數,并根據線性支持向攪回歸和有序風險最小化原則,由恒模和星座匹配誤差函數聯合組成的新經驗風險項構造一個新的代價函數,進而通過迭代求解優化問題獲得均衡器。第5章介紹神經動力學和反饋神經網絡的相關知識,特別地從神經動力學角度論述連續反饋神經網絡可有效飛作的原因,論述反饋神經網絡權值矩陣對吸引子和相軌跡的影響。并給出如何根據系統接收信號與發送信號之間的子空間關系,構造一個適用于現代通信系統中的盲檢測的特定性能函數和優化問題。第6章分別展示如何基于連續多閾值神經元Hopfield網絡模型實現通信信號盲處理的理論和方法,針對多相制信號的特點給出兩種連續相位多闕值激勵函數形式,并分析討論該兩類激勵函數參數的選擇、分別給出連續多閾值神經元 Hopfield 網絡工作于同步和異步模式下的新能隊函數及其相關證明。介紹采用幅相連續激勵法解決稀疏QAM 信號的盲檢測思路,并針對 QAM 信號的特點,分別給出連續幅度和相位多闕值激勵函數形式,分析討論該類激勵函數的特點。第7章則電在從另一個角度提出采用同相正交振幅連續激勵法解決密集QAM信號盲檢測方法。介紹如何從激勵函數角度分析放大因子選擇的范圍;給出該特定問題的同步和異步運行模式下的新能量函數形式;并證明和分析所設計的能量函數部分定理;介紹在基于反饋神經網絡的信號盲處理方法這一研究課題中發現的幾類現象,包括當信號的統計信息缺失或失真情況下,連續多閾值神經元反饋神經網絡的盲檢測能力:通用高階QMA的激勵函數被使用作為低階QAM信號盲檢測問題時的適用性......
上傳時間: 2022-07-09
上傳用戶:
本論文主要對無線擴頻集成電路設計中的信道編解碼算法進行研究并對其FPGA實現思路和方法進行相關研究。 近年來無線局域網IEEE802.11b標準建議物理層采用無線擴頻技術,所以開發一套擴頻通信芯片具有重大的現實意義。無線擴頻通信系統與常規通信相比,具有很強的抗干擾能力,并具有信息蔭蔽、多址保密通信等特點。無線信道的特性較復雜,因此在無線擴頻集成電路設計中,加入信道編碼是提高芯片穩定性的重要方法。 在了解擴頻通信基本原理的基礎上,本文提出了“串聯級聯碼+兩次交織”的信道編碼方案。串聯的級聯碼由外碼——(15,9,4)里德-所羅門(Reed-Solomon)碼,和內碼-(2,1,3)卷積碼構成,交織則采用交織深度為4的塊交織。重點對RS碼的時域迭代譯碼算法和卷積碼的維特比譯碼算法進行了詳細的討論,并完成信道編譯碼方案的性能仿真及用FPGA實現的方法。 計算機仿真的結果表明,采用此信道編碼方案可以較好的改善現有仿真系統的誤符號率。 本論文的內容安排如下:第一章介紹了無線擴頻通信技術的發展狀態以及國內外開發擴頻通信芯片的現狀,并給出了本論文的研究內容和安排。第二章主要介紹了擴頻通信的基本原理,主要包括擴頻通信的定義、理論基礎和分類,直接序列擴頻通信方式的數學模型。第三章介紹了基本的信道編碼原理,信道編碼的分類和各自的特點。第四章給出了本課題選擇的信道編碼方案——“串聯級聯碼+兩次交織”,詳細討論了方案中里德-所羅門(Reed-Solomon)碼和卷積碼的基本原理、編碼算法和譯碼算法。最后給出編碼方案的實際參數。第五章對第四章提出的編碼方案進行了性能仿真。第六章結合項目實際,討論了FPGA開發基帶擴頻通信系統的設計思路和方法。首先對FPGA開發流程以及實際開發的工具進行了簡要的介紹,然后給出了擴頻通信系統的總體設計。對發射和接收子系統中信道編碼、解碼等相關功能模塊的實現原理和方法進行分析。第七章對論文的工作進行總結。
上傳時間: 2013-07-07
上傳用戶:時代電子小智
本論文主要對無線擴頻集成電路設計中的信道編解碼算法進行研究并對其FPGA實現思路和方法進行相關研究。 近年來無線局域網IEEE802.11b標準建議物理層采用無線擴頻技術,所以開發一套擴頻通信芯片具有重大的現實意義。無線擴頻通信系統與常規通信相比,具有很強的抗干擾能力,并具有信息蔭蔽、多址保密通信等特點。無線信道的特性較復雜,因此在無線擴頻集成電路設計中,加入信道編碼是提高芯片穩定性的重要方法。 在了解擴頻通信基本原理的基礎上,本文提出了“串聯級聯碼+兩次交織”的信道編碼方案。串聯的級聯碼由外碼——(15,9,4)里德-所羅門(Reed-Solomon)碼,和內碼-(2,1,3)卷積碼構成,交織則采用交織深度為4的塊交織。重點對RS碼的時域迭代譯碼算法和卷積碼的維特比譯碼算法進行了詳細的討論,并完成信道編譯碼方案的性能仿真及用FPGA實現的方法。 計算機仿真的結果表明,采用此信道編碼方案可以較好的改善現有仿真系統的誤符號率。 本論文的內容安排如下:第一章介紹了無線擴頻通信技術的發展狀態以及國內外開發擴頻通信芯片的現狀,并給出了本論文的研究內容和安排。第二章主要介紹了擴頻通信的基本原理,主要包括擴頻通信的定義、理論基礎和分類,直接序列擴頻通信方式的數學模型。第三章介紹了基本的信道編碼原理,信道編碼的分類和各自的特點。第四章給出了本課題選擇的信道編碼方案——“串聯級聯碼+兩次交織”,詳細討論了方案中里德-所羅門(Reed-Solomon)碼和卷積碼的基本原理、編碼算法和譯碼算法。最后給出編碼方案的實際參數。第五章對第四章提出的編碼方案進行了性能仿真。第六章結合項目實際,討論了FPGA開發基帶擴頻通信系統的設計思路和方法。首先對FPGA開發流程以及實際開發的工具進行了簡要的介紹,然后給出了擴頻通信系統的總體設計。對發射和接收子系統中信道編碼、解碼等相關功能模塊的實現原理和方法進行分析。第七章對論文的工作進行總結。
上傳時間: 2013-07-18
上傳用戶:hbsunhui
本文以Turbo碼編譯碼器的FPGA實現為目標,對Turbo碼的編譯碼算法和用硬件語言將其實現進行了深入的研究。 首先,在理論上對Turbo碼的編譯碼原理進行了介紹,確定了Max-log-MAF算法的譯碼算法,結合CCSDS標準,在實現編碼器時,針對標準中給定的幀長、碼率與交織算法,以及偽隨機序列模塊與幀同步模塊,提出了相應解決方案;而在相應的譯碼器設計中,采用了FPGA設計中“自上而下”的設計方法,權衡硬件實現復雜度與處理時延等因素,優先考慮面積因素,提高元件的重復利用率和降低電路復雜度,來實現Turbo碼的Max-log-MAP算法譯碼。把整個系統分割成不同的功能模塊,分別闡述了實現過程。 然后,基于Verilog HDL 設計出12位固點數據的Turbo編譯碼器以及仿真驗證平臺,與用Matlab語言設計的相同指標的浮點數據譯碼器進行性能比較,得到該設計的功能驗證。 最后,研究了Tuxbo碼譯碼器幾項最新技術,如滑動窗譯碼,歸一化處理,停止迭代技術結合流水線電路設計,將改進后的譯碼器與先前設計的譯碼器分別在ISE開發環境中針對目標器件xilinx Virtex-Ⅱ500進行電路綜合,證實了這些改進技術能有效地提高譯碼器的吞吐量,減少譯碼時延和存儲器面積從而降低功耗。
上傳時間: 2013-04-24
上傳用戶:haohaoxuexi
局部保持映射(Locality Preserving Projection,LPP)算法是一種有效的特征提取方法。提出了利用巴氏距離和LPP相合算法對特征進行提取。當特征維數過高時,首先對樣本用LPP進行特征提取和降維處理,然后采用巴氏距離特征的迭代算法,得到最小錯誤率上界。在ORL上實驗,實驗結果表明了提出算法在人臉識別中的有效性。
上傳時間: 2014-01-25
上傳用戶:shus521
“均勻設計”是我國統計學家中國科學院應用數學研究所方開泰教授和中科院院士王元教授將數論與多元統計相結合創立的一種供多因素、多水平實驗用、可減少實驗次數的全新的最優試驗設計方法。其特點是將試驗點均勻地分布在試驗范圍內,用較少的試驗點來獲得最多的信息。這一方法結合統計調優把所得的數據進行整理、分析、判斷,用逐步回歸法建立回歸方程,并進行方差分析和顯著性檢驗,通過方程預報、等值線圖、曲線圖等數學方法,揭示出隱含于數據中的信息,找出試驗條件間的最佳組合,可實現用最少的試驗次數和最短的試驗時間,達到尋找最佳效果的目的。由于均勻設計不再具有整齊可比的特點,因而不能象正交試驗那樣,通過簡單的方差分析方法來處理所得的數據,而必須借助計算機來進行數據處理。 我所在均勻設計推廣應用到化學電源研究過程方面做了一些工作,在應用過程中均勻設計明顯地促進了我所相關項目的研究工作。下面是我所在相關項目工作中的情況介紹。
上傳時間: 2013-12-24
上傳用戶:gxy670166755
《C#入門經典(第4版)》通過C#可以很容易地學習.NET Framework 3.5的強大功能,所以C#是開始您編程生涯的絕佳方式。《C#入門經典(第4版)》全面闡述了C#編程的所有方面,包括C#語言本身、Windows編程、Web編程及數據源的使用等內容。學習了新的編程技巧后,《C#入門經典(第4版)》介紹了如何高效地部署應用程序和服務,論述了許多高級技術,如圖形化編程。另外,還探討了如何使用Visual C# Express 2008、Visual Web Developer Express 2008和Visual Studio 2008的功能。所有這些內容都已更新,以反映.NET Framework 3.5和Visual Studio 2008的變化。各章的樣例代碼和示例還可以用于創建強大且安全的應用程序。 c#入門經典第4版目錄 第Ⅰ部分 C# 語 言 第1章 C#簡介 3 1.1 什么是.NET Framework 3 1.1.1 NET Framework的內容 4 1.1.2 用.NET Framework編寫應用程序 4 1.2 什么是C# 7 1.2.1 用C#能編寫什么樣的應用程序 7 1.2.2 本書中的C# 8 1.3 Visual Studio 2008 8 1.3.1 Visual Studio 2008 Express 產品 9 1.3.2 解決方案 9 1.4 小結 9 第2章 編寫C#程序 10 2.1 開發環境 10 2.1.1 Visual Studio 2008 11 2.1.2 Visual C# 2008 ExpressEdition 13 2.2 控制臺應用程序 13 2.2.1 Solution Explorer 16 2.2.2 Properties窗口 17 2.2.3 Error List窗口 17 2.3 Windows Forms應用程序 18 2.4 小結 22 第3章 變量和表達式 23 3.1 C#的基本語法 23 3.2 C#控制臺應用程序的基本結構 25 3.3 變量 27 3.3.1 簡單類型 27 3.3.2 變量的命名 31 3.3.3 字面值 32 3.3.4 變量的聲明和賦值 33 3.4 表達式 34 3.4.1 數學運算符 34 3.4.2 賦值運算符 38 3.4.3 運算符的優先級 39 3.4.4 名稱空間 39 3.5 小結 42 3.6 練習 43 第4章 流程控制 44 4.1 布爾邏輯 44 4.1.1 位運算符 46 4.1.2 布爾賦值運算符 50 4.1.3 運算符的優先級更新 51 4.2 goto語句 52 4.3 分支 53 4.3.1 三元運算符 53 4.3.2 if語句 54 4.3.3 switch語句 57 4.4 循環 60 4.4.1 do循環 61 4.4.2 while循環 63 4.4.3 for循環 65 4.4.4 循環的中斷 69 4.4.5 無限循環 70 4.5 小結 70 4.6 練習 71 第5章 變量的更多內容 72 5.1 類型轉換 72 5.1.1 隱式轉換 72 5.1.2 顯式轉換 74 5.1.3 使用Convert命令進行 顯式轉換 76 5.2 復雜的變量類型 79 5.2.1 枚舉 79 5.2.2 結構 83 5.2.3 數組 86 5.3 字符串的處理 91 5.4 小結 95 5.5 練習 96 第6章 函數 97 6.1 定義和使用函數 98 6.1.1 返回值 99 6.1.2 參數 101 6.2 變量的作用域 107 6.2.1 其他結構中變量的作用域 110 6.2.2 參數和返回值與全局數據 111 6.3 Main()函數 113 6.4 結構函數 114 6.5 函數的重載 115 6.6 委托 117 6.7 小結 119 6.8 練習 120 第7章 調試和錯誤處理 121 7.1 VS和VCE中的調試 121 7.1.1 非中斷(正常)模式下的調試 122 7.1.2 中斷模式下的調試 131 7.2 錯誤處理 139 7.2.1 try...catch...finally 140 7.2.2 列出和配置異常 144 7.2.3 異常處理的注意事項 145 7.3 小結 146 7.4 練習 146 第8章 面向對象編程簡介 147 8.1 什么是面向對象編程 147 8.1.1 什么是對象 148 8.1.2 所有的東西都是對象 151 8.1.3 對象的生命周期 151 8.1.4 靜態和實例類成員 152 8.2 OOP技術 153 8.2.1 接口 153 8.2.2 繼承 155 8.2.3 多態性 156 8.2.4 對象之間的關系 157 8.2.5 運算符重載 159 8.2.6 事件 159 8.2.7 引用類型和值類型 160 8.3 Windows應用程序中的OOP 160 8.4 小結 162 8.5 練習 163 第9章 定義類 164 9.1 C#中的類定義 164 9.2 System.Object 169 9.3 構造函數和析構函數 170 9.4 VS和VCE中的OOP工具 174 9.4.1 Class View窗口 174 9.4.2 對象瀏覽器 176 9.4.3 添加類 177 9.4.4 類圖 177 9.5 類庫項目 179 9.6 接口和抽象類 182 9.7 結構類型 184 9.8 小結 186 9.9 練習 186 第10章 定義類成員 187 10.1 成員定義 187 10.1.1 定義字段 187 10.1.2 定義方法 188 10.1.3 定義屬性 189 10.1.4 在類圖中添加成員 194 10.1.5 重制成員 196 10.1.6 自動屬性 197 10.2 類成員的其他議題 197 10.2.1 隱藏基類方法 198 10.2.2 調用重寫或隱藏的基類方法 199 10.2.3 嵌套的類型定義 200 10.3 接口的實現 201 10.4 部分類定義 204 10.5 部分方法定義 206 10.6 示例應用程序 207 10.6.1 規劃應用程序 207 10.6.2 編寫類庫 208 10.6.3 類庫的客戶應用程序 214 10.7 小結 215 10.8 練習 216 第11章 集合、比較和轉換 217 11.1 集合 217 11.1.1 使用集合 218 11.1.2 定義集合 224 11.1.3 索引符 225 11.1.4 給CardLib添加Cards集合 227 11.1.5 關鍵字值集合和IDictionary 229 11.1.6 迭代器 231 11.1.7 深度復制 236 11.1.8 給CardLib添加深度復制 238 11.2 比較 239 11.2.1 類型比較 240 11.2.2 值比較 244 11.3 轉換 259 11.3.1 重載轉換運算符 259 11.3.2 as運算符 260 11.4 小結 261 11.5 練習 262 第12章 泛型 263 12.1 泛型的概念 263 12.2 使用泛型 264 12.2.1 可空類型 264 12.2.2 System.Collections.Generic 名稱空間 271 12.3 定義泛型 279 12.3.1 定義泛型類 280 12.3.2 定義泛型接口 291 12.3.3 定義泛型方法 291 12.3.4 定義泛型委托 293 12.4 小結 293 12.5 練習 293 第13章 其他OOP技術 295 13.1 ::運算符和全局名稱空間 13.2 定制異常 296 13.2.1 異常基類 297 13.2.2 給CardLib添加定制異常 297 13.3 事件 298 13.3.1 什么是事件 298 13.3.2 使用事件 300 13.3.3 定義事件 302 13.4 擴展和使用CardLib 309 13.5 小結 317 13.6 練習 317 第14章 C# 3.0語言的改進 318 14.1 初始化器 318 14.1.1 對象初始化器 319 14.1.2 集合初始化器 320 14.2 類型推斷 323 14.3 匿名類型 325 14.4 擴展方法 328 14.5 ?表達式 333 14.5.1 復習匿名方法 333 14.5.2 把?表達式用于匿名方法 334 14.5.3 ?表達式的參數 337 14.5.4 ?表達式的語句體 337 14.5.5 ?表達式用作委托和表達式樹 338 14.5.6 ?表達式和集合 339 14.6 小結 342 14.7 練習 342 第Ⅱ部分 Windows 編 程 第15章 Windows編程基礎 347 15.1 控件 347 15.1.1 屬性 348 15.1.2 控件的定位、停靠和對齊 349 15.1.3 事件 350 15.2 Button控件 352 15.2.1 Button控件的屬性 352 15.2.2 Button控件的事件 353 15.3 Label和LinkLabel控件 354 15.4 TextBox控件 355 15.4.1 TextBox控件的屬性 355 15.4.2 TextBox控件的事件 356 15.5 RadioButton和CheckBox控件 363 15.5.1 RadioButton控件的屬性 364 15.5.2 RadioButton控件的事件 364 15.5.3 CheckBox控件的屬性 364 15.5.4 CheckBox控件的事件 364 15.5.5 GroupBox控件 365 15.6 RichTextBox控件 368 15.6.1 RichTextBox控件的屬性 368 15.6.2 RichTextBox控件的事件 369 15.7 ListBox和CheckedListBox控件 374 15.7.1 ListBox控件的屬性 375 15.7.2 ListBox控件的方法 376 15.7.3 ListBox控件的事件 376 15.8 ListView控件 378 15.8.1 ListView控件的屬性 378 15.8.2 ListView控件的方法 380 15.8.3 ListView控件的事件 381 15.8.4 ListViewItem 381 15.8.5 ColumnHeader 381 15.8.6 ImageList控件 381 15.9 TabControl控件 388 15.9.1 TabControl控件的屬性 389 15.9.2 使用TabControl控件 389 15.10 小結 392 15.11 練習 392 第16章 Windows Forms的高級功能 393 16.1 菜單和工具欄 393 16.1.1 兩個實質一樣的控件 393 16.1.2 使用MenuStrip控件 394 16.1.3 手工創建菜單 394 16.1.4 ToolStripMenuItem控件的其他屬性 397 16.1.5 給菜單添加功能 397 16.2 工具欄 399 16.2.1 ToolStrip控件的屬性 399 16.2.2 ToolStrip的項 400 16.2.3 StatusStrip控件 405 16.2.4 StatusStripStatusLabel的屬性 405 16.3 SDI和MDI應用程序 407 16.4 創建控件 415 16.4.1 LabelTextbox控件 417 16.4.2 調試用戶控件 420 16.4.3 擴展LabelTextbox控件 421 16.5 小結 424 16.6 練習 424 第17章 使用通用對話框 425 17.1 通用對話框 425 17.2 如何使用對話框 426 17.3 文件對話框 427 17.3.1 OpenFileDialog 427 17.3.2 SaveFileDialog 438 17.4 打印 442 17.4.1 打印結構 442 17.4.2 打印多個頁面 447 17.4.3 PageSetupDialog 449 17.4.4 PrintDialog 451 17.5 打印預覽 455 17.5.1 PrintPreviewDialog 455 17.5.2 PrintPreviewControl 456 17.6 FontDialog和ColorDialog 457 17.6.1 FontDialog 457 17.6.2 ColorDialog 459 17.6.3 FolderBrowserDialog 460 17.7 小結 461 17.8 練習 461 第18章 部署Windows應用程序 463 18.1 部署概述 463 18.2 ClickOnce部署 464 18.3 Visual Studio安裝和部署項目類型 473 18.4 Microsoft Windows安裝程序結構 474 18.4.1 Windows Installer術語 474 18.4.2 Windows Installer的優點 476 18.5 為SimpleEditor創建安裝軟件包 476 18.5.1 規劃安裝內容 476 18.5.2 創建項目 477 18.5.3 項目屬性 478 18.5.4 安裝編輯器 480 18.5.5 File System編輯器 481 18.5.6 File Types編輯器 483 18.5.7 Launch Condition編輯器 485 18.5.8 User Interface編輯器 485 18.6 構建項目 488 18.7 安裝 489 18.7.1 Welcome 489 18.7.2 Read Me 489 18.7.3 License Agreement 490 18.7.4 Optional Files 490 18.7.5 選擇安裝文件夾 491 18.7.6 確認安裝 492 18.7.7 進度 492 18.7.8 結束安裝 493 18.7.9 運行應用程序 493 18.7.10 卸載 493 18.8 小結 493 18.9 練習 494 第Ⅲ部分 Web 編 程 第19章 Web編程基礎 497 19.1 概述 497 19.2 ASP .NET運行庫 498 19.3 創建簡單的Web頁面 498 19.4 服務器控件 504 19.5 事件處理程序 505 19.6 輸入的有效性驗證 509 19.7 狀態管理 512 19.7.1 客戶端的狀態管理 513 19.7.2 服務器端的狀態管理 515 19.8 身份驗證和授權 517 19.8.1 身份驗證的配置 518 19.8.2 使用安全控件 522 19.9 讀寫SQL Server數據庫 524 19.10 小結 530 19.11 練習 531 第20章 Web高級編程 532 20.1 母版頁 532 20.2 站點導航 537 20.3 用戶控件 539 20.4 個性化配置 541 20.4.1 個性化配置組 543 20.4.2 組件的個性化配置 543 20.4.3 定制數據類型中的個性化配置 543 20.4.4匿名用戶的個性化配置 544 20.5 Web Parts 545 20.5.1 WebPartManager控件 546 20.5.2 WebPartZone控件 546 20.5.3 EditorZone控件 548 20.5.4 CatalogZone控件 550 20.5.5 ConnectionsZone控件 551 20.6 JavaScript 554 20.6.1 Script元素 555 20.6.2 變量的聲明 555 20.6.3 定義函數 555 20.6.4 語句 556 20.6.5 對象 556 20.7 小結 560 20.8 練習 560 第21章 Web服務 561 21.1 Web服務推出之前 561 21.1.1 遠程過程調用(RPC) 562 21.1.2 SOAP 563 21.2 使用Web服務的場合 563 21.2.1 賓館旅行社代理應用程序 564 21.2.2 圖書發布應用程序 564 21.2.3 客戶應用程序的類型 564 21.2.4 應用程序的體系結構 564 21.3 Web服務的體系結構 565 21.3.1 可以調用的方法 565 21.3.2 調用方法 566 21.3.3 SOAP和防火墻 567 21.3.4 WS-I基本個性化配置 568 21.4 Web服務和.NET Framework 568 21.4.1 創建Web服務 568 21.4.2 客戶程序 570 21.5 創建簡單的ASP .NET Web服務 571 21.6 測試Web服務 572 21.7 執行Windows客戶程序 574 21.8 異步調用服務 577 21.9 執行ASP .NET客戶程序 580 21.10 傳送數據 581 21.11 小結 584 21.12 練習 584 第22章 Ajax編程 586 22.1 Ajax概述 586 22.2 UpdatePanel控件 587 22.3 Timer控件 591 22.4 UpdateProgress控件 592 22.5 Web服務 594 22.6 擴展控件 598 22.7 小結 600 22.8 練習 600 第23章 部署Web應用程序 601 23.1 Internet Information Services 601 23.2 IIS配置 602 23.3 復制Web站點 604 23.4 發布Web站點 606 23.5 Windows安裝程序 607 23.5.1 創建安裝程序 607 23.5.2 安裝Web 應用程序 609 23.6 小結 610 23.7 練習 610 第Ⅳ部分 數 據 訪 問 第24章 文件系統數據 613 24.1 流 613 24.2 用于輸入和輸出的類 614 24.2.1 File類和Directory類 615 24.2.2 FileInfo類 616 24.2.3 DirectoryInfo類 617 24.2.4 路徑名和相對路徑 618 24.2.5 FileStream對象 618 24.2.6 StreamWriter對象 624 24.2.7 StreamReader對象 626 24.2.8 讀寫壓縮文件 632 24.3 序列化對象 635 24.4 監控文件結構 639 24.5 小結 645 24.6 練習 646 第25章 XML 647 25.1 XML文檔 647 25.1.1 XML元素 647 25.1.2 屬性 648 25.1.3 XML聲明 649 25.1.4 XML文檔的結構 649 25.1.5 XML名稱空間 650 25.1.6 格式良好并有效的XML 651 25.1.7 驗證XML文檔 651 25.2 在應用程序中使用XML 654 25.2.1 XML文檔對象模型 655 25.2.2 選擇節點 663 25.3 小結 670 25.4 練習 671 第26章 LINQ簡介 672 26.1 LINQ的變體 673 26.2 第一個LINQ查詢 673 26.2.1 用var關鍵字聲明結果變量 675 26.2.2 指定數據源:from子句 675 26.2.3 指定條件:where子句 675 26.2.4 指定元素:select子句 676 26.2.5 完成:使用foreach循環 676 26.2.6 延遲執行的查詢 676 26.3使用LINQ方法語法和?表達式 676 26.3.1 LINQ擴展方法 676 26.3.2 查詢語法和方法語法 677 26.3.3 ?表達式 677 26.4 排序查詢結果 679 26.5 orderby子句 680 26.6 用方法語法排序 681 26.7 查詢大型數據集 682 26.8 合計運算符 685 26.9 查詢復雜的對象 688 26.10 投射:在查詢中創建新對象 691 26.11 投射:方法語法 693 26.12 單值選擇查詢 693 26.13 Any和All 694 26.14 多級排序 696 26.15 多級排序方法語法:ThenBy 698 26.16 組合查詢 698 26.17 Take和Skip 700 26.18 First和FirstOrDefault 702 26.19 集運算符 703 26.20 Join查詢 706 26.21 資源和進一步閱讀 707 26.22 小結 707 26.23 練習 707 第27章 LINQ to SQL 709 27.1 對象相關映射 709 27.2 安裝SQL Server和Northwind示例數據 710 27.2.1 安裝SQL Server Express2005 710 27.2.2 安裝Northwind示例數據庫 711 27.3 第一個LINQ to SQL查詢 712 27.4 瀏覽LINQ to SQL關系 717 27.5 進一步探討LINQ to SQL 720 27.6 LINQ to SQL中的組合、排序和其他高級查詢 723 27.7 顯示生成的SQL 725 27.8 用LINQ to SQL綁定數據 729 27.9 用LINQ to SQL更新綁定數據 733 27.10 小結 734 27.11 練習 735 第28章 ADO .NET和LINQ over DataSet 736 28.1 ADO .NET概述 736 28.1.1 ADO .NET名稱的來源 737 28.1.2 ADO .NET的設計目標 738 28.2 ADO .NET類和對象概述 739 28.2.1 提供者對象 739 28.2.2 用戶對象 740 28.2.3 使用System.Data名稱空間 741 28.3 用DataReader讀取數據 742 28.4 用DataSet讀取數據 749 28.4.1 用數據填充DataSet 749 28.4.2 訪問DataSet中的表、行和列 749 28.5 更新數據庫 752 28.5.1 給數據庫添加行 755 28.5.2 刪除行 761 28.6 在DataSet中訪問多個表 762 28.6.1 ADO .NET中的關系 762 28.6.2 用關系導航 763 28.7 XML和ADO .NET 770 28.8 ADO .NET中的SQL支持 773 28.8.1 DataAdapter對象中的 SQL命令 773 28.8.2 直接執行SQL命令 776 28.8.3 調用SQL存儲過程 778 28.9 使用LINQ over DataSet和ADO .NET 780 28.10 小結 784 28.11 練習 784 第29章 LINQ to XML 785 29.1 LINQ to XML函數構造方法 785 29.2 保存和加載XML文檔 789 29.2.1 從字符串中加載XML 791 29.2.2 已保存的XML文檔內容 792 29.3 處理XML片段 792 29.4 通過LINQ to XML生成 XML 794 29.5 查詢XML文檔 798 29.6 小結 804 29.7 練習 804 第Ⅴ部分 其 他 技 術 第30章 屬性 809 30.1 什么是屬性 809 30.2 反射 812 30.3 內置屬性 815 30.3.1 System.Diagnostics.ConditionalAttribute 815 30.3.2 System.Obsolete Attribute 817 30.3.3 System.Serializable Attribute 818 30.3.4 System.Reflection.AssemblyDelaySignAttribute 821 30.4 定制屬性 824 30.4.1 BugFixAttribute 824 30.4.2 System.AttributeUsageAttribute 826 30.5 小結 830 第31章 XML文檔說明 831 31.1 添加XML文檔說明 831 31.1.1 XML文檔說明的注釋 833 31.1.2 使用類圖添加XML文檔說明 839 31.1.3 生成XML文檔說明文件 842 31.1.4 帶有XML文檔說明的應用程序示例 844 31.2 使用XML文檔說明 846 31.2.1 編程處理XML文檔說明 846 31.2.2 用XSLT格式化XML文檔說明 848 31.2.3 文檔說明工具 849 31.3 小結 850 31.4 練習 851 第32章 網絡 852 32.1 聯網概述 852 32.1.1 名稱的解析 855 32.1.2 統一資源標識符 856 32.1.3 TCP和UDP 857 32.1.4 應用協議 857 32.2 網絡編程選項 859 32.3 WebClient 859 32.4 WebRequest和WebResponse 861 32.5 TcpListener和TcpClient 868 32.6 小結 876 32.7 練習 876 第33章 GDI+簡介 877 33.1 圖形繪制概述 877 33.1.1 Graphics類 878 33.1.2 對象的刪除 878 33.1.3 坐標系統 879 33.1.4 顏色 884 33.2 使用Pen類繪制線條 885 33.3 使用Brush類繪制圖形 887 33.4 使用Font 類繪制文本 890 33.5 使用圖像進行繪制 893 33.5.1 使用紋理畫筆繪圖 895 33.5.2 使用鋼筆繪制圖像 897 33.5.3 雙倍緩沖 898 33.6 GDI+的高級功能 900 33.6.1 剪切 900 33.6.2 System.Drawing.Drawing2D 901 33.6.3 System.Drawing.Imaging 901 33.7 小結 901 33.8 練習 902 第 34 章 Windows Presentation Foundation 903 34.1 WPF的概念 904 34.1.1 WPF給設計人員帶來的好處 904 34.1.2 WPF給C#開發人員帶來的好處 906 34.2 基本WPF應用程序的組成 906 34.3 WPF基礎 916 34.3.1 XAML語法 917 34.3.2 桌面和Web應用程序 919 34.3.3 Application對象 920 34.3.4 控件基 920 34.3.5 控件的布局 928 34.3.6 控件的樣式 936 34.3.7 觸發器 941 34.3.8 動畫 942 34.3.9 靜態和動態資源 944 34.4 用WPF編程 949 34.4.1 WPF用戶控件 950 34.4.2 實現依賴屬性 950 34.5 小結 959 34.6 練習 960 第35 章 Windows Communication Foundation 961 35.1 WCF是什么 961 35.2 WCF概念 962 35.2.1 WCF通信協議 962 35.2.2 地址、端點和綁定 963 35.2.3 合同 964 35.2.4 消息模式 965 35.2.5 行為 965 35.2.6 主機 965 35.3 WCF編程 966 35.3.1 定義WCF服務合同 973 35.3.2 自存儲的WCF服務 979 35.4 小結 985 35.5 練習 986 第36章 Windows Workflow Foundation 987 36.1 活動 990 36.1.1 DelayActivity 990 36.1.2 SuspendActivity 991 36.1.3 WhileActivity 992 36.1.4 SequenceActivity 994 36.1.5 定制活動 997 36.2 工作流運行庫 1002 36.3 數據綁 1007 36.4 小結 1010 序言
標簽:
上傳時間: 2013-11-16
上傳用戶:xinyuzhiqiwuwu