c#物联网_C# 基础知识系列- 16 开发工具篇
0. 前言
這是C# 基礎(chǔ)知識(shí)系列的最后一個(gè)內(nèi)容講解篇,下一篇是基礎(chǔ)知識(shí)-實(shí)戰(zhàn)篇。這一篇主要講解一下C#程序的結(jié)構(gòu)和主要編程工具。
1. 工具
工欲善其事必先利其器,在實(shí)際動(dòng)手之前我們先來(lái)看看想要編寫(xiě)一套C#程序需要做哪些準(zhǔn)備吧。
1.1 選擇
C# 的sdk在之前的某個(gè)時(shí)間點(diǎn)分為了三個(gè)方向:
有人可能問(wèn)了,.net和C#是什么關(guān)系。首先需要明確一個(gè)概念,C#是一門(mén)編程語(yǔ)言,.net是一個(gè)CLR,即公共語(yǔ)言運(yùn)行庫(kù)。這部分概念比較抽象,不過(guò)我這么說(shuō)大家可能會(huì)理解里面的關(guān)系了:C#是.net支持的一門(mén)語(yǔ)言,于此同時(shí).net還支持F#,Visual C++等。也就是說(shuō),.net是一個(gè)平臺(tái),而C#是運(yùn)行在這個(gè)平臺(tái)上的語(yǔ)言。
不過(guò),通常上因?yàn)?net支持的其他語(yǔ)言并不如C#出名,所以很多人就忽略了兩者之間的區(qū)別,有時(shí)候也用.net代指C#了。
講了這么多廢話,回到之前。.net分了三個(gè)方向,第一個(gè)方向是沿用之前版本,繼續(xù)深耕Windows環(huán)境。.net core是微軟為了跨平臺(tái)戰(zhàn)略而開(kāi)發(fā)的,目前支持 Windows/Linux/Mac等系統(tǒng)。后續(xù)的文章也將基于.net core進(jìn)行。Mono是早期在Linux環(huán)境中支持.net framework的一套SDK,后來(lái)微軟把這項(xiàng)技術(shù)合并到了.net發(fā)展戰(zhàn)略里了,現(xiàn)在支持Android、Mac應(yīng)用開(kāi)發(fā)。最后一個(gè)是UWP,通用Windows平臺(tái),據(jù)說(shuō)是為了物聯(lián)網(wǎng)研究的。
嗯,因?yàn)槲业墓ぷ鞣较蚴?BS,也就是做網(wǎng)站開(kāi)發(fā)的,再加上需要接觸一些Linux的系統(tǒng),所以整體就在.net core這個(gè)框架下進(jìn)行后續(xù)開(kāi)發(fā)和工作了。換句話說(shuō),整個(gè)C# 系列都是在.net core上運(yùn)行的。
1.2 開(kāi)發(fā)工具
在選擇了.net core之后,我們就要選擇一個(gè)適合我們的開(kāi)發(fā)工具了。
1.2.1 Visual Studio
先放一張Visual Studio 2019的圖。
這是到目前(2020年05月05日)為止,微軟開(kāi)發(fā)的最強(qiáng)大的編譯器。在編譯器界,Visual Studio有著“宇宙第一編譯器”的美名。當(dāng)然最早是因?yàn)槠浒惭b包十分巨大,動(dòng)則2~3G的全量安裝,再加上其昂貴的正版授權(quán)價(jià)格,所以被稱(chēng)為第一編譯器。后來(lái)隨著微軟更改了安裝方式,改為在線安裝然后模塊化安裝,讓程序員可以用哪些裝哪些,減少了安裝包的大小,同時(shí)進(jìn)一步增強(qiáng)了作為編譯器的功能,添加了Community版本(社區(qū)版,免費(fèi)的)之后,第一編譯器就成了名副其實(shí)的美名。
下圖是 Visual Studio支持的功能:
具體的安裝就不演示了,這部分網(wǎng)上教程也比較多。如果有疑問(wèn)的話,可以留言或者私信我哦。
當(dāng)然了,即使是旗艦版,Visual Studio2019在網(wǎng)上也有很多激活碼 ,不過(guò)對(duì)于公司的話,這部分可能會(huì)有法律風(fēng)險(xiǎn)。個(gè)人學(xué)習(xí)研究的話,沒(méi)事。笑XD
1.2.2 Visual Studio Code
嗯,Code是微軟開(kāi)發(fā)的另一個(gè)神器,憑借著其輕量、開(kāi)源和免費(fèi)這幾大特性迅速占領(lǐng)了開(kāi)發(fā)者們的內(nèi)心。再加上其豐富的插件支持,更是讓人欲罷不能。
Code支持跨平臺(tái),Windows/Linux/Mac都支持。下圖是示意圖:
1.2.3 Jetbrains Rider
這是捷克一家軟件公司開(kāi)發(fā)的編譯器,支持跨平臺(tái)。語(yǔ)言的智能提示比VS好一點(diǎn),而且也輕一點(diǎn)。這是它功能特定的宣傳圖:
可以說(shuō)功能非常強(qiáng)勁,當(dāng)然了也是收費(fèi)的。目前市面上沒(méi)有很穩(wěn)定的科學(xué)方法。咳咳,我啥也沒(méi)說(shuō)。
1.2.4 總結(jié)
如果是初學(xué)者,我建議使用Visual Studio ,不愧與第一編譯器的美名。如果是在Linux環(huán)境的話,初學(xué)者建議試試Rider。
當(dāng)然了,對(duì)于極客或者Linux環(huán)境但預(yù)算不高的小伙伴可以試試VS Code,搭配好插件功能也不比另外的編譯器差到哪里去。
注:Rider單個(gè)軟件的訂閱是 139美元一年(首年),不過(guò)據(jù)說(shuō)有免費(fèi)的方式。
關(guān)于選擇編譯器的問(wèn)題,如果是Linux環(huán)境,需要事先安裝 .net core sdk。這部分內(nèi)容請(qǐng)參照微軟的官方,搜索關(guān)鍵詞:net core
這個(gè)頁(yè)面點(diǎn)進(jìn)去就行,如果在安裝過(guò)程中有疑問(wèn)歡迎留言,私信我。
對(duì)于Visual Studio則沒(méi)有這部分煩惱了,只需要在安裝過(guò)程中選中 net core開(kāi)發(fā)支持即可。
當(dāng)然,還有更究極的開(kāi)發(fā)方式:使用文本編輯器,然后用命令行dotnet執(zhí)行。嗯,這樣很牛但是挺累的,我就不推薦給你們了。
2. 項(xiàng)目類(lèi)型
這是在.net core上支持的一些通用的項(xiàng)目類(lèi)型,我們常用是 console類(lèi)型(一個(gè)控制臺(tái)程序)、mvc(http://asp.net core版的mvc項(xiàng)目)、web (一個(gè)網(wǎng)站項(xiàng)目)等。
具體的項(xiàng)目情況會(huì)在后續(xù)的篇幅中介紹,記住net core支持這些類(lèi)型的項(xiàng)目即可。
3. 總結(jié)
這一篇稀里糊涂的介紹完了,之后還有一個(gè)實(shí)戰(zhàn)系列。完結(jié)之后,C#的基礎(chǔ)知識(shí)系列就暫時(shí)告一段落了,不過(guò)后續(xù)還有可能會(huì)針對(duì)單個(gè)知識(shí)點(diǎn)的深入講解,按照計(jì)劃如果知識(shí)點(diǎn)比較大將會(huì)新開(kāi)一個(gè)系列,比如之前的多線程和任務(wù)那一章,其實(shí)是C# 并發(fā)編程系列的開(kāi)篇 。不過(guò)下一個(gè)系列應(yīng)該是 C# 數(shù)據(jù)訪問(wèn)系列。這個(gè)系列講解如何通過(guò)http://ADO.net、EF、Nhibernate等框架操作數(shù)據(jù)庫(kù)。
那么,敬請(qǐng)期待第一個(gè)實(shí)戰(zhàn)篇吧,親愛(ài)的小伙伴們。
最后的最后,有問(wèn)題可以隨時(shí)回復(fù)或私信。當(dāng)然了,我寫(xiě)的有錯(cuò)誤或者不嚴(yán)謹(jǐn)或遺漏的地方也請(qǐng)指出哦。
更多內(nèi)容煩請(qǐng)關(guān)注我的博客《高先生小屋》
總結(jié)
以上是生活随笔為你收集整理的c#物联网_C# 基础知识系列- 16 开发工具篇的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 魔域任务之日常试炼场任务——好胃口挑战攻
- 下一篇: Java项目几个月能完成_c#项目转JA