国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

【C#】微軟的Roslyn 是個(gè)啥?

這篇具有很好參考價(jià)值的文章主要介紹了【C#】微軟的Roslyn 是個(gè)啥?。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

一、說明

????????Roslyn 是微軟重寫的C#編譯器并開源。

????????Roslyn?是 C# 和 Visual Basic.NET 開源編譯器的代號(hào)。以下是它如何在過去十年企業(yè)Microsoft的最黑暗中開始,并成為所有C#(和VB)的開源,跨平臺(tái),公共語言引擎,我將在本文的其余部分將其視為給定的)。

二、Roslyn的歷史淵源

????????當(dāng) 在 2005 年加入 Microsoft 時(shí),關(guān)于什么將成為 Roslyn 的第一次對(duì)話已經(jīng)在進(jìn)行中 — 就在 .NET 2.0 發(fā)布之前。那次談話是關(guān)于用 C# 重寫 C#。這是編程語言的正常做法;語言成熟的證明。但還有一個(gè)更實(shí)際和更重要的動(dòng)機(jī):作為 C# 的創(chuàng)建者,我們自己不是用 C# 編程,而是用C++編碼!每天使用 C# 會(huì)讓你對(duì) C# 有不同的看法:這是“狗食”的力量。

客戶將依賴于新編譯器的行為方式與舊編譯器完全相同。為 C# 編寫新的編譯器意味著嘗試逐個(gè)錯(cuò)誤地匹配舊的編譯器。

????????重寫已經(jīng)掌握在客戶手中多年的編譯器的挑戰(zhàn)在于,這些客戶將依賴于新編譯器的行為方式與舊編譯器完全相同。為 C# 編寫新的編譯器意味著嘗試逐個(gè)錯(cuò)誤地匹配舊的編譯器。我說的不僅僅是已知的錯(cuò)誤,還有開發(fā)人員發(fā)現(xiàn)并依賴的那些未知和意外的行為,通常是在不知不覺中。

????????多年來,這一挑戰(zhàn)的艱巨性使我們甚至無法開始這個(gè)項(xiàng)目。

????????此外,雖然語言團(tuán)隊(duì)內(nèi)部對(duì)用 C# 編寫的新 C# 編譯器有很多好處,但對(duì)客戶的價(jià)值主張更具挑戰(zhàn)性:新編譯器將如何幫助現(xiàn)有客戶?也許唯一關(guān)心 C# 是用 C# 編寫的人是編譯器團(tuán)隊(duì)的成員。

????????在但與此同時(shí),另一個(gè)問題越來越大:處理 C# 代碼的不同工具之間的重復(fù)工作。除了編譯器之外,我們的姊妹團(tuán)隊(duì)還在Visual Studio中構(gòu)建對(duì)C#的IDE支持,他們還必須編寫大量代碼(當(dāng)時(shí)也是C++)來理解C#語法和語義。

????????除此之外,來自Microsoft和其他工具(如StyleCop,CodeRush等)的越來越多的工具都必須從平面C#源文本開始實(shí)現(xiàn)有意義的基于代碼的工具。所有這些都會(huì)有微妙不同的錯(cuò)誤,不同的理解水平,不同的妥協(xié)和權(quán)衡。所有這些都會(huì)花費(fèi)大量的精力來達(dá)到原點(diǎn):理解代碼。

最后,我們的價(jià)值主張是:使世界上只需要有一個(gè)理解 C# 的代碼庫,每個(gè)想要在代碼上構(gòu)建工具的人都可以共享!

????????最后,我們的價(jià)值主張是:使世界上只需要有一個(gè)理解 C# 的代碼庫,每個(gè)想要在代碼上構(gòu)建工具的人都可以共享!客戶價(jià)值將來自可用工具的增加,特別是現(xiàn)有工具的質(zhì)量。我們將把所有語言的正確性和性能要求放在一個(gè)代碼庫上,并花費(fèi)一次精力來使其具有出色的質(zhì)量和巨大的多功能性。我們將構(gòu)建一個(gè)語言引擎!一個(gè)統(tǒng)一的、公共的 API 到 C# 代碼:我們將重新定義“編譯器”的含義。

????????當(dāng)然,一旦你為廣泛的C#社區(qū)構(gòu)建了一個(gè)API,它應(yīng)該是一個(gè).NET API,用C#實(shí)現(xiàn),這有點(diǎn)麻煩。因此,在 C# 中“引導(dǎo)”C# 的舊夢(mèng)想幾乎是一個(gè)偶然的附帶好處。

因此,Roslyn 誕生于一種開放的心態(tài):共享 C# 的內(nèi)部工作原理,供全世界以編程方式使用。這本身就是在仍然普遍封閉的文化中邁出的大膽一步。

????????R因此,oslyn 誕生于一種開放的心態(tài):共享 C# 語言的內(nèi)部工作原理,供全世界以編程方式使用。這本身就是一個(gè)大膽的主張,在當(dāng)時(shí)仍然普遍封閉的文化中Microsoft:我們會(huì)免費(fèi)分享這些知識(shí)產(chǎn)權(quán)嗎?我們會(huì)授權(quán)不是我們的工具制造商更好地與我們競爭嗎?

????????在這里為我們贏得勝利的論點(diǎn)是關(guān)于加強(qiáng)生態(tài)系統(tǒng)并成為地球上最好的工具語言。它們是關(guān)于 C# 和 .NET 的長期增長,而不是短期貨幣化和Microsoft資產(chǎn)保護(hù)。因此,即使沒有提到開源,簽署Roslyn項(xiàng)目的成本和風(fēng)險(xiǎn)對(duì)Microsoft來說也是一大而大膽的一步。

????????當(dāng)然,你不只是構(gòu)建這樣的東西。Roslyn 的愿景雄心勃勃,也充滿了技術(shù)挑戰(zhàn),我們花了五年時(shí)間才實(shí)現(xiàn)它。但那是另一天的故事了。

自從該項(xiàng)目在2009年認(rèn)真啟動(dòng)以來,我們就有使我們的編譯器開源的愿景,但Microsoft還沒有準(zhǔn)備好。

????????F或者大多數(shù)時(shí)候我們?cè)跇?gòu)建初始版本,Roslyn 仍然是一個(gè)閉源項(xiàng)目。自從該項(xiàng)目在2009年認(rèn)真啟動(dòng)以來,我們就有使我們的編譯器開源的愿景,但Microsoft還沒有準(zhǔn)備好。私下開發(fā)和圍繞原始代碼申請(qǐng)專利的文化代表了Microsoft自 1970 年代以來的工作方式——雖然變化正在醞釀之中,但它的發(fā)生速度比我們團(tuán)隊(duì)希望的要慢。

????????事實(shí)上,有一段時(shí)間感覺公司正朝著完全相反的方向發(fā)展。

????????Windows 8項(xiàng)目幾乎接管了整個(gè)公司。憑借其新的編程模型,它的觸角深入到開發(fā)人員工具和語言團(tuán)隊(duì)中,一切都被極端保密,不僅對(duì)外部,甚至在公司內(nèi)部。舉個(gè)例子,我們當(dāng)時(shí)開發(fā)的異步功能是與 Windows 8 編程模型協(xié)調(diào)和糾纏在一起的,我甚至不敢在內(nèi)部發(fā)布它的設(shè)計(jì)筆記,生怕不小心泄露了有關(guān) Windows 8 的信息,給自己惹上麻煩!這為創(chuàng)新創(chuàng)造了一個(gè)可怕的氣候,對(duì)于我們開源C#編譯器的希望來說,這當(dāng)然不是好兆頭。

????????E然而,在Windows 8運(yùn)行完之后,該公司開始轉(zhuǎn)型并找到了新的方向,走向新的領(lǐng)導(dǎo)層和截然不同的核心理念;我們今天所知道Microsoft。開源運(yùn)動(dòng)現(xiàn)在迅速開始在Microsoft內(nèi)部扎根。

????????F# 已于 2010 年發(fā)布,具有開源許可證和自己的基金會(huì) -?F# 軟件基金會(huì)。圍繞它成長的充滿活力的社區(qū)很快成為我們所有人羨慕的對(duì)象。我們的團(tuán)隊(duì)大力推動(dòng) Roslyn 獲得開源生產(chǎn)許可證,最終出現(xiàn)了全公司范圍的基礎(chǔ)設(shè)施,使之成為現(xiàn)實(shí)。

????????到2012年,Microsoft創(chuàng)建了Microsoft開放技術(shù);一個(gè)專注于開源項(xiàng)目的組織。Roslyn 轉(zhuǎn)到Microsoft開放技術(shù)公司,并正式成為開源。它是一個(gè)很好的候選者:開發(fā)資源都是內(nèi)部的和眾所周知的,項(xiàng)目本身是獨(dú)立的,沒有很多可能造成許可沖突的依賴關(guān)系。

三、Roslyn橫空問世

????????2014 年 3 月,在舊金山舉行的 Microsoft “Build”開發(fā)者活動(dòng)中,Anders Hejlsberg 展示了 Roslyn?作為一個(gè)開源項(xiàng)目,Roslyn?于 2 月 0 日通過 CodePlex(Microsoft 年退役的開源托管平臺(tái))在 Apache <>.<> 許可下發(fā)布。

【C#】微軟的Roslyn 是個(gè)啥?,C#欄目,c#,開發(fā)語言

????????Project Roslyn in CodePlex under Microsoft Open Tech

????????與此同時(shí),.NET Foundation被宣布為包括Roslyn在內(nèi)的.NET項(xiàng)目的所在地。

????????在戶外呼吸著新鮮空氣!即使我們開始從 CodePlex 的開放性中獲益,Microsoft剩下的程序開源障礙也得到了理順,今天開源是我們?cè)谠S多團(tuán)隊(duì)中工作方式中直接且不可或缺的一部分。

我們不再將 GitHub 視為發(fā)布場(chǎng)所——它只是我們工作的地方。

????????在其他方面,公司也意識(shí)到我們不需要控制一切。很明顯,CodePlex 沒有充分的理由出現(xiàn)在世界上,Roslyn 加入了其他項(xiàng)目,從 CodePlex 遷移到 GitHub,當(dāng)時(shí)GitHub 實(shí)際上是開源項(xiàng)目的大本營。不僅源代碼,而且構(gòu)建它的過程都在 GitHub 中:我們不把它當(dāng)作一個(gè)發(fā)布場(chǎng)所——它只是我們工作的地方。

【C#】微軟的Roslyn 是個(gè)啥?,C#欄目,c#,開發(fā)語言

????????羅斯林今天在 GitHub 上

????????C# 語言設(shè)計(jì)和編譯器實(shí)現(xiàn)現(xiàn)在是完全開放的流程,有很多非Microsoft參與,包括由外部貢獻(xiàn)者構(gòu)建的整個(gè)語言功能。C# 的價(jià)值在于屋頂,不僅通過貢獻(xiàn)功能和錯(cuò)誤修復(fù)來擴(kuò)展工作量,還通過開源提供的即時(shí)每日反饋循環(huán)獲得的洞察力和課程更正。

????????這是一段漫長而狂野的旅程,對(duì)我來說,這象征著Microsoft在過去十年中經(jīng)歷的巨大變化。Roslyn的掘金始于黑暗,在開放的想法上成長,并通過開源的力量在今天爆發(fā)出一百萬種不同的用途。文章來源地址http://www.zghlxwxcb.cn/news/detail-606531.html

到了這里,關(guān)于【C#】微軟的Roslyn 是個(gè)啥?的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • socket 到底是個(gè)啥

    socket 到底是個(gè)啥

    ? 哈嘍大家好,我是咸魚 ? 我相信大家在面試過程中或多或少都會(huì)被問到這樣一個(gè)問題: 你能解釋一下什么是 socket 嗎 ? 我記得我當(dāng)初的回答很是淺顯:socket 也叫套接字,用來負(fù)責(zé)不同主機(jī)程序之間的網(wǎng)絡(luò)通信連接,socket 的表現(xiàn)方式由四元組(ip地址:端口)組成 ? 那么今

    2023年04月13日
    瀏覽(21)
  • OCP3.0是個(gè)啥?

    OCP3.0是個(gè)啥?

    1、OCP NIC 3.0規(guī)范是OCP Mezz 2.0 設(shè)計(jì)規(guī)范的升級(jí)。 2、OCP NIC 3.0規(guī)范支持兩種基本卡尺寸:小尺寸Small Form Factor(SFF)和大尺寸Large Form Factor(LFF)。 3、SFF最多支持16 lane PCIe ,而LFF最多支持32 lane PCIe。 與OCP Mezz 2.0設(shè)計(jì)規(guī)范相比,更新的OCP網(wǎng)卡3.0規(guī)范為網(wǎng)卡和系統(tǒng)供應(yīng)商提供更廣闊的解決

    2024年02月05日
    瀏覽(16)
  • ?Web3到底是個(gè)啥?

    Web3到底是個(gè)啥? Web3是近兩年來科技領(lǐng)域最火熱的概念之一,但是目前對(duì)于Web3的定義卻仍然沒有形成標(biāo)準(zhǔn)答案,相當(dāng)多對(duì)于Web3的理解,都是建立在虛擬貨幣行業(yè)(即俗稱的“幣圈”)的邏輯基礎(chǔ)之上的。 區(qū)塊鏈服務(wù)網(wǎng)絡(luò)(BSN)的核心理念,是在互聯(lián)網(wǎng)上推動(dòng)建立一個(gè)新的公

    2024年02月14日
    瀏覽(20)
  • Web3到底是個(gè)啥?

    Web3是近兩年來科技領(lǐng)域最火熱的概念之一,但是目前對(duì)于Web3的定義卻仍然沒有形成標(biāo)準(zhǔn)答案,相當(dāng)多對(duì)于Web3的理解,都是建立在虛擬貨幣行業(yè)(即俗稱的“幣圈”)的邏輯基礎(chǔ)之上的。 區(qū)塊鏈服務(wù)網(wǎng)絡(luò)(BSN)的核心理念,是在互聯(lián)網(wǎng)上推動(dòng)建立一個(gè)新的公共層,服務(wù)于各行

    2024年02月14日
    瀏覽(16)
  • 了解 Langchain?是個(gè)啥?:第 1 部分

    ????????在日常生活中,我們主要致力于構(gòu)建端到端的應(yīng)用程序。我們可以使用許多自動(dòng) ML 平臺(tái)和 CI/CD 管道來自動(dòng)化 ml 管道。我們還有像Roboflow和Andrew N.G.的登陸AI這樣的工具來自動(dòng)化或創(chuàng)建端到端的計(jì)算機(jī)視覺應(yīng)用程序。 ????????如果我們想在OpenAI或擁抱臉的幫助下

    2024年02月13日
    瀏覽(26)
  • 液體神經(jīng)網(wǎng)絡(luò):LNN是個(gè)啥概念?

    液體神經(jīng)網(wǎng)絡(luò):LNN是個(gè)啥概念?

    ????????在在人工智能領(lǐng)域,神經(jīng)網(wǎng)絡(luò)已被證明是解決復(fù)雜問題的非常強(qiáng)大的工具。多年來,研究人員不斷尋求創(chuàng)新方法來提高其性能并擴(kuò)展其能力。其中一種方法是液體神經(jīng)網(wǎng)絡(luò)(LNN)的概念,這是一個(gè)利用動(dòng)態(tài)計(jì)算功能的迷人框架。在本文中,我們將深入研究 LNN 的世

    2024年02月13日
    瀏覽(16)
  • ChatGPT到底是個(gè)啥 - 它甚至?xí)凸氛f話

    ChatGPT到底是個(gè)啥 - 它甚至?xí)凸氛f話

    寫在前面:博主是一只經(jīng)過實(shí)戰(zhàn)開發(fā)歷練后投身培訓(xùn)事業(yè)的“小山豬”,昵稱取自動(dòng)畫片《獅子王》中的“彭彭”,總是以樂觀、積極的心態(tài)對(duì)待周邊的事物。本人的技術(shù)路線從Java全棧工程師一路奔向大數(shù)據(jù)開發(fā)、數(shù)據(jù)挖掘領(lǐng)域,如今終有小成,愿將昔日所獲與大家交流一二

    2024年02月03日
    瀏覽(26)
  • AIGC到底是個(gè)啥? AI和AIGC的區(qū)別有哪些

    AIGC到底是個(gè)啥? AI和AIGC的區(qū)別有哪些

    ? 說來說去,到底什么是AIGC呢?AIGC是人工智能生成內(nèi)容的縮寫,是一種基于生成對(duì)抗網(wǎng)絡(luò)(GAN)、大型預(yù)訓(xùn)練模型等人工智能技術(shù)的方法,通過對(duì)已有數(shù)據(jù)進(jìn)行學(xué)習(xí)和模式識(shí)別,以適當(dāng)?shù)姆夯芰ι上嚓P(guān)內(nèi)容的技術(shù),AIGC的應(yīng)用領(lǐng)域有很多例如,AIGC可以用于自動(dòng)生成新聞、

    2024年02月08日
    瀏覽(16)
  • 越來越火的Serverless(無服務(wù)器計(jì)算),到底是個(gè)啥?

    越來越火的Serverless(無服務(wù)器計(jì)算),到底是個(gè)啥?

    今天這篇文章,我們來聊一個(gè)云計(jì)算領(lǐng)域的熱門概念——Serverless。 到底什么是Serverless? 英語好的童鞋,可能一眼就看出來了,Serverless是由Server和less兩個(gè)詞根組成的詞。從字面上理解,就是“無服務(wù)器”。 行業(yè)通常所說的Serverless,主要是指 “無服務(wù)器計(jì)算(Serverless Comp

    2024年02月03日
    瀏覽(22)
  • 云原生到底是個(gè)啥玩意?從云端降臨的超級(jí)技術(shù):云原生

    云原生到底是個(gè)啥玩意?從云端降臨的超級(jí)技術(shù):云原生

    目錄 福利:文末分享云原生相關(guān)全套資料哦 一、云計(jì)算?云原生? 二、云原生帶來什么好處 7個(gè)字:隔離、彈性、自動(dòng)化。 三、云原生的基礎(chǔ)知識(shí) 四、云原生中最重要的概念 1、虛機(jī) 2、容器 3、容器編排 4、VPC 5、微服務(wù)(Microservices) 6、服務(wù)網(wǎng)格(Service Mesh) 7、無服務(wù)器

    2024年02月08日
    瀏覽(20)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包