一、.Net平台的背景
1、2010之前 的PC時代的時候,互聯網規模還不是特別龐大,以靜態編譯式語言為代表的JAVA和.Net沒什么太大區別,.net以windows自居。
2、2010年以JAVA為代表的Hadoop大數據興起后,.net無法對接,因為hadoop是工作平台,需要將jar上傳到hdfs上由mapreduce執行,(yarn)而不是像(redis,mongodb)直連式開發。(微軟官方曾今也實現了一套基礎api,但后來還是放棄維護了)。
3、2012年移動互聯網興起,.net跟進失敗。
4、2014-2015 微服務時代的來臨,以go為代表的docker技術,python為代表的devops,java的spring cloud技術興起,微服務造就了多語言的盛行,而.net還是一幅老態龍鍾的樣子,穩居windows平台,不食人間煙火。 【PC 企業級 (工廠 OA,ERP)】
5、2014年雲計算事業部副總裁納德拉出任微軟CEO,改變微軟無所不知企業文化,似乎除了C#沒有什么語言不能跨平台,開始擁抱linux。
6、2015年微軟對.net 平台進行了重新架構。
7、2016.6.27 netcore 1.0 項目發布,徹底的改變了 windows only的場景,但能不能挽回頹勢,現在很難說,畢竟還沒有出現docker這樣,spark這樣讓人眼前一亮的殺手級應用。
二:.Net Framework 和 .Net Core 的架構圖
三、.Net Framework和.Net Core在今后的項目中如何選擇:
.Net Core支持的盡量用.Net Core,.Net Core不支持的(WebForm,WPF,WinForm),就用.Net Framework吧。
四、開發工具的選擇
1、visual studio(微軟)
2、vs code(微軟)
3、rider(jetBrains)