国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

淺談C#語言

2017-05-04 18:22:57畢永惲壘周夢涵
藝術(shù)科技 2016年12期
關(guān)鍵詞:程序員面向?qū)ο?/a>應(yīng)用程序

畢永+惲壘+周夢涵

摘 要:從過去到現(xiàn)在幾十年的發(fā)展,C和C++已經(jīng)成為商業(yè)軟件的開發(fā)領(lǐng)域中使用最廣泛的語言。它們?yōu)槌绦騿T提供了十分靈活的操作,不過同時也犧牲了一定的效率。與visual basic等語言相比,同等級別的C/C++應(yīng)用程序往往需要更長的時間來開發(fā)。所以,許多程序員都在試圖找一種新的語言,希望能在功能和效率之間找一個更為理想的平衡點,這種新的語言就是C#語言。本文將著重于對C#語言的介紹。

關(guān)鍵詞:C#;C;C++;商業(yè)軟件的開發(fā)

C#,發(fā)音同“see sharp”,是一門簡單、現(xiàn)代化、面向?qū)ο箢愋桶踩木幊陶Z言,C#屬于C語言家族,任何c、c++或Java程序員都不覺得它很陌生。C#是來源于Java的,通俗地說,他算是Java的兒子,但是它又比Java更加具有靈活性,在.NAT的編程上獨樹一幟,沒有單獨的頭文件,也不需要按照特定順序聲明方法和類型。C#程序比C和C++的生成過程簡單,C面向過程C語言是目前世界上流行、使用非常廣泛的高級程序設(shè)計語言。C語言對操作系統(tǒng)和系統(tǒng)使用程序以及需要對硬件進行操作的場合,用C語言明顯優(yōu)于其他高級語言,許多大型應(yīng)用軟件都是用C語言編寫的。C語言具有繪圖能力強、可移植性的特點,并具備很強的數(shù)據(jù)處理能力,因此適于編寫系統(tǒng)軟件、三維、二維圖形和動畫,它是數(shù)值計算的高級語言。c++是面向?qū)ο蟮?,C是面向過程的。C++一種混合語言,目前功能最為強大的語言,面向?qū)ο蠹夹g(shù),是程序設(shè)計“方法學(xué)”方面的一次革命,是目前軟件開發(fā)中的主流技術(shù)。C++提供了面向?qū)ο蟮木幊谭椒?,而C沒有。此外,從語言的角度來講,C++對C的一些重要概念,如函數(shù)、指針和結(jié)構(gòu)等都添加了新的增強功能,C#面向?qū)ο?,只能在支?net的windows在計算機上運行,語法和Java相近,來自Microsoft。

例如,在ProgrammingGuide命名空間的頂級使用三個成員定義了MyCustomClass,在Program類的Main方法中創(chuàng)建了MyCustomClass的一個實例(對象),并使用點表示法訪問該對象的方法和屬性。

namespace ProgrammingGuide

{public class MyCustomClass

{public int Number{get;set;public int Multiply(int num)

{return num * Number;}

public MyCustomClass()

{Number=0;}

}

class Program

{static void Main(string[]args)

{MyCustomClass myClass=new MyCustomClass();

myClass.Number=27;

int result=myClass.Multiply(4);

}}}

在這段代碼中,我們可以看到它有很多優(yōu)點,它是一種精確、簡單、類型安全、面向?qū)ο蟮恼Z言。

但是在實際開發(fā)中,筆者所談到的,只是其中的冰山一角,它除了以上的優(yōu)點,還具有以下優(yōu)勢:

第一,快速應(yīng)用開發(fā)(RAD)功能。支持快速開發(fā),可以說是目前開發(fā)語言最為重要的一大功能,C#與.NET的結(jié)合支持快速開發(fā),可以使得開發(fā)人員的開發(fā)效率倍增,從而使得它們可以從繁重的重復(fù)性勞動中解放出來。

第二,語言的自由性。用C#編寫的程序能最大限度地和任何支持.NET的語言互相交換信息,能與其他.NET語言有著最好的合作。

第三,強大的Web服務(wù)端組件。在C#的Web編程中,包含了大量的Web服務(wù)端組件,有了這些強大的組件,可以設(shè)計出功能更加強勁的企業(yè)級分布式應(yīng)用系統(tǒng)。

第四,支持跨平臺。C#編寫的應(yīng)用程序具有強大的跨平臺性,這種跨平臺性包括C#程序的客戶端可以運行在不同類型的客戶端上,如PDA、手機等非PC裝置。

第五,與XML的融合。XML技術(shù)真正融入.NET和C#之中,使得C#提供給程序員更多的自由和更好的性能來使用XML。

第六,對C++的繼承。C#繼承并保留了C++強大的功能,還提供了一些新功能取代了一些原來的ANSIC預(yù)處理程序功能,提高了語言類型安全等安全性。

C#還提供了一些特性來幫助和構(gòu)建健壯、耐用的應(yīng)用程序:垃圾收集(Garbage Collection)會自動回收不再使用的對象所占用的內(nèi)存;異常處理(exception hardling)提供了一種結(jié)構(gòu)化且可擴展的方式來檢測錯誤和恢復(fù);而語言的類型安全(type-safe)設(shè)計則可以防止讀取未始化的變量、數(shù)組越界或進行未檢查的類型轉(zhuǎn)換。所有C#類型都擁有統(tǒng)一的類型系統(tǒng)(unified type system),包括int和double這樣的基礎(chǔ)類型,都是從根類型object繼承而來。所以,所有的類型都有一些通用的操作,任何類型的值都可以通過一致的方式進行保存、傳遞和操作。此外,C#還支持用戶自定義引用類型和值類型,允許動態(tài)分配對象和輕型結(jié)構(gòu)的內(nèi)聯(lián)存儲。為了保證C#程序和類庫能以兼容的方式向前發(fā)展,C#在設(shè)計過程中非常注意版本控制(versioning)。很多編程語言都對這一點比較疏忽,所以當新版本的依賴庫被引用時,被這些語言編寫的程序都失靈了。

正是因為C#面向?qū)ο笳Z言的卓越設(shè)計,使它成了構(gòu)成各種應(yīng)用程序組件的理想之選,尤其是系統(tǒng)級的應(yīng)用程序和高級的商業(yè)對象。其次,C#語言允許自定義數(shù)據(jù)類型,以擴展元數(shù)據(jù),這些元數(shù)據(jù)可應(yīng)用于任何對象。項目構(gòu)建者可以定義領(lǐng)域特有的屬性并把它們應(yīng)用于任何語言元素——類、接口等。然后,開發(fā)人員可以編程檢查每個元素的屬性,所以很多工作都變得簡單了。例如,編寫一個小工具來對每個類或接口是否被正確定義為某個抽象商業(yè)的一部分進行檢查,或者只對一份基于對象的領(lǐng)域特有屬性的報表進行創(chuàng)建。程序代碼和定義的元數(shù)據(jù)之間的緊密對應(yīng)有助于加強實際實現(xiàn)和程序的預(yù)期行為之間的對應(yīng)關(guān)系。最后,C#增強了開發(fā)者的工作效率,并且當程序中出現(xiàn)錯誤,會有提示和解決方案,大大減少了編程中會出現(xiàn)的錯誤。同時,C#使C/C++程序員可以快速進行網(wǎng)絡(luò)開發(fā),也維持了開發(fā)者所需要的靈活性和強大性。

參考文獻:

[1] 顧雁宏,徐旭明. C#程序設(shè)計語言[M].北京:機械工業(yè)出版社,2009.

[2] 陳語林,唐文新,熊炎. C#程序設(shè)計[M].北京:中國水利水電出版社,2012.

[3] 羅福強,楊劍,張敏輝. C#程序設(shè)計經(jīng)典教程[M].北京:清華大學(xué)出版社,2014.

猜你喜歡
程序員面向?qū)ο?/a>應(yīng)用程序
為了讓媽媽看懂地圖,一位“野生程序員”做了個小程序
消費電子(2022年7期)2022-10-31 06:17:10
怎樣成為一名優(yōu)秀程序員
幼兒100(2020年29期)2020-10-21 06:17:58
刪除Win10中自帶的應(yīng)用程序
電腦報(2019年12期)2019-09-10 05:08:20
面向?qū)ο蟮挠嬎銠C網(wǎng)絡(luò)設(shè)計軟件系統(tǒng)的開發(fā)
電子測試(2018年15期)2018-09-26 06:01:34
程序員之子
意林(2017年24期)2018-01-02 22:49:14
面向?qū)ο蟮臄?shù)據(jù)交換協(xié)議研究與應(yīng)用
加班
三月三(2016年6期)2016-06-21 10:25:33
面向?qū)ο骔eb開發(fā)編程語言的的評估方法
面向?qū)ο笮畔⑻崛≈杏跋穹指顓?shù)的選擇
河南科技(2014年10期)2014-02-27 14:09:03
關(guān)閉應(yīng)用程序更新提醒
電腦迷(2012年15期)2012-04-29 17:09:47
鄂伦春自治旗| 东源县| 黑山县| 革吉县| 景东| 桂阳县| 工布江达县| 湘潭市| 花莲县| 宝丰县| 剑川县| 龙江县| 仲巴县| 马龙县| 忻城县| 普兰县| 六盘水市| 疏勒县| 霍州市| 南通市| 北宁市| 张家川| 措美县| 奉新县| 桦甸市| 四子王旗| 凉城县| 黑龙江省| 凤城市| 九龙县| 新巴尔虎左旗| 朝阳区| 张家界市| 乌拉特前旗| 新宁县| 苏尼特右旗| 平远县| 彭山县| 祁东县| 都昌县| 牙克石市|