萬盛學電腦網

 萬盛學電腦網 >> 網絡編程 >> .net編程 >> .NET小常識——答你所問

.NET小常識——答你所問

class="area"> 1、.NET是什麼?
.Net全稱.NET Framework是一個開發和運行環境,
該戰略是微軟的一項全新創意,
它將使得“互聯網行業進入一個更先進的階段”,
.NET不是一種編程語言. 簡單說就是一組類庫框架,
.NET開發支持C#、VB.NET、J#、Jsript和Managed C++等。
C#是.NET Framework框架支持的一種主力開發語言,
可用於開發ASP.NET網站, Windows 程序,控制台程序,甚至於手機軟件,
至此51aspx作為微軟的合作伙伴特提供了各種類型的源碼下載:
http://51aspx.com/。

2、ASP.NET、.NET和C#的關系是怎樣的?
.NET 分成兩個方面:
(1)WinForm
(2)WebForm
ASP.NET就是屬於WebForm,也就是平時說的B/S模式的開發。
而WinForm就是屬於C/S模式。
.NET有很多種語言組成,比如C#、 VB.NET、J#、Jsript、Managed C++
但是都是運行在.NET FrameWork Run Time底下的。
Asp.NET 可以用C#或VB.NET來開發。
編譯後形成CLR,通過服務器的IIS+.NET FrameWork再次編譯來運行。
C#是開發語言.
總之,ASP.NET是.NET Framework環境下的動態網頁編程技術,
.NET Framework是.NET的基礎框架,
Visual Studio.NET是用於開發軟件的一個集成環境(IDE)。

3、.NET開發是用什麼語言?
.NET聲稱支持市面上20多種語言,但目前
只有微軟官方發布的C#,VB.NET,J#, Jsript和Managed C++

4、為什麼大部分用C#語言開發.NET?
C#是Microsoft公司設計的一種編程語言,
C#(讀做‘Csharp’)。它基於C/C++,是面向對象的.
沒有指針,有垃圾回收機制,會自動釋放內存空間。
學習C#並不必須有C語言的基礎,不過,如果你學過C語言,
那會事半功倍的,因為他們之間有很多語法是一樣的。
C#支持的基本類型和C++很相似,包括int, long,
float, double, char, string, arrays, structs和 classes等。
為此51aspx:http://51aspx.com/提供了以C#語言為主的源碼下載。

5、ASP.NET環境的安裝
(1)、其實現在一般的電腦都可以安裝,至於操作系統目前
.NET支持的平台有Windows,至於Linux和Unix的支持正在開發中.
Microsoft Windows 2000\windows xp sp3\windows 2003的操作系統
(2)、運行環境下載,因為是向下兼容,所以可以下載最新的Framework框架
.NET Framwork 2.0官方下載地址:
http://bbs.51aspx.com/showtopic-754.html
.NET Framework 3.5下載地址:
http://www.microsoft.com/downloads/details.aspx?familyid=333325FD-AE52-4E35-B531-508D977D32A6&displaylang=zh-cn
.NET Framework 4.0下載地址:
http://download.microsoft.com/download/D/2/C/D2C07945-4D8B-44B6-A5E6-EE5A4CB8357D/dotnetfx40_full_setup.exe

(3)、安裝過程
首選安裝MDAC,再安裝SDK,SDK的安裝時間比較長要耐心等待。
(4)、試運行
安裝完成後,試著運行一個簡單的ASP.NET編寫的小程序,以便確定安裝是否成功。
如需其他軟件下載,請到
http://bbs.51aspx.com/showforum-49.html

6、Bin文件夾下的DLL可以做什麼?
(1)它是自動生成的,不用自己添加。
(2)作用:bin文件夾中包含項目中所用到的所有引用的類庫,支持服務器等內容
DLL的全稱是Dynamic Link Library, 中文叫做“動態鏈接文件”。

7、.NET主要的優點有哪些?
.NET的主要優點有跨語言,跨平台,安全,以及對開放互聯網標准和協議的支持.
.NET支持多種語言的互操作,即在一種語言下開發的組件,
可在另一組件下通過面向對象的繼承而得以重用.
.NET通過將各語言先編譯成中間語言(IL),
然後再執行時用即時(Just In Time)編譯器將之編譯成本地平台代碼來實現異構平台下對象的互操作,
.NET通過公共語言運行庫CLR(Common Language Runtime)來實現資源對象,類型的安全.
.NET通過對HTTP,XML等Internet標准的支持提供在異構網絡環境下獲取遠程服務,
連接遠程設備,交互遠程應用的編程界面

8、ASP.NET和ASP的區別?
ASP.NET和ASP的最大區別在於編程思維的轉換以及功能的增強。
ASP使用VB/JS這樣的弱類型、面向結構的腳本語言混合html來編程,
而非面向對象,這就明顯產生以下幾個問題:
1、代碼邏輯混亂,難於管理。
2、代碼的可重用性差:由於是面向結構的編程方式,並且混合html,
所以可能頁面原型修改一點,整個程序都需要修改,代碼重用性差。
3、弱類型造成潛在的出錯可能。
以上是ASP語言本身的弱點,在功能方面ASP同樣存在問題:
第一是功能太弱,一些底層操作只能通過組件來完成
第二缺乏完善的糾錯/調試功能
ASP.NET理論上可以使用任何編程語言包括C#,VB.NET、JS、、J#、Managed C++等等,
最合適的編程語言還是MS為.NET Frmaework專門推出的C#
優點如下:
(1)是面向對象的編程語言,簡單易學。
(2)具有面向對象編程語言的一切特性,比如封裝性、繼承性、多態性等等,
封裝性使得代碼邏輯清晰,並且應用到ASP.NET上就可以使業務邏輯和Html頁面分離;
繼承性和多態性使得代碼的可重用性大大提高
(3)C#還提供了完善的調試/糾錯體系。 

9、做項目時數據庫類型的選擇?
當前流行的數據庫有:Sql server,MySql,Oracle,DB2。
VS項目中大多是選擇以下四種:
Sql2000簡單實用,功能完全夠學習時使用,可通過命令行快速打開;
Sql2005功能全面,但安裝麻煩,體積大,剛打開數據庫的時候比較慢,啟動之後就快了許多;
Sql2008新出的數據庫,功能肯定比前兩者強大,建議使用Sql2005的用戶升級到Sql2008;
ACCESS體積小、部署方便(不用啟動服務等)使用方便簡單.

10、ASP.NET中經常使用的控件有哪些?
Label控件用來顯示文本的控件。Label控件不能接收鼠標或是鍵盤輸入。
TextBox控件來顯示和更新任務數據,用戶輸入內容。
Button按鈕控件當用戶單擊或者點擊一個按鈕時,即會觸發Click事件
ListBox和ComboBox控件外觀不同,但功能極為相似,允許用戶進行選擇,不允許輸入文本。

11、.net開發工具都有哪些?
現在主流是Visual Studio 2005/2008,但是不少小企業仍然固執使用vs2003,
不過最近vs2010也上市了。
VS提供了下列幾個版本:標准版、專業版、Tools for Office 和 Team System 版。
還有C# builder只應用於大型企業開發,
支持一些微軟的vs.net都不支持的企業級功能。
還有一款免費的開發工具web matrix,這款自動感知能力弱到幾乎沒有,
適合開發頁面和代碼不分開的那種頁面,可以提高獨立寫代碼的水平。
不過他帶有.net類庫浏覽器,以及一個數據庫開發的控件,也算是有些特點。
入門初學者VS.NET會很容易上手,
當然,還有就是高手只用記事本咯!

12、為什麼.NET程序第一次運行比較慢? aspx頁面在運行時,第一次訪問時要進行編譯。
當你再次運行時,由於緩存機制,速度就會正常了。

13、C#的命名規范
主要有Pascal和Camel兩種
Pascal:單詞的首字母大寫,如ProductType;
Camel:首個單詞的首字母小寫,其余單詞的首字母大寫,如productType)
以下是一些常用的C#成員及其推薦命名方法:
類class:Pascal
枚舉類型enum:Pascal記住,是以Pascal命名,切勿包含Enum
委托delegate:Pascal以Pascal命名,不以任何特殊字符串區別於類名、函數名
接口interface:Pascal注:總是以"I"前綴開始,後接Pascal命名
方法function: Pascal
命名空間namespace: Pascal比如:usingExcelQuicker.Framework
屬性:Pascal
參數:Camel 首字母小寫
常量const: Camel 字母全部大寫
局部變量:Camel 聲明變量是以str開頭
數據成員:Camel 以m開頭+Pascal命名規則,如mProductType(m意味member)

14、如何判斷一個程序是否開源或者是有源文件?
都有對應的.CS文或VB文件
有項目文件和解決方案文件
BIN文件下所有的dll文件或是引用的組件有對應的源碼
15、如何判51aspx源碼開源度?
在每個源碼下載頁面上都標有
copyright © 萬盛學電腦網 all rights reserved