![]()
編譯 | 蘇宓
出品 | CSDN(ID:CSDNnews)
在編程語(yǔ)言與開發(fā)框架飛速迭代的技術(shù)圈里,.NET 曾占據(jù)著舉足輕重的地位,它以相對(duì)順手的開發(fā)體驗(yàn)和完善的生態(tài),吸引了大批開發(fā)者投入其中,資深技術(shù)人后來(lái)也是多家公司 CTO 的 Walter G. 便是其中一員。
![]()
不過(guò),在深耕 .NET 二十二年后,他還是做出了一個(gè)不算輕松的決定——離開這個(gè)陪伴自己職業(yè)生涯大半時(shí)間的技術(shù)生態(tài)。為此,他專門寫下《22 年后,我告別了 .NET》一文,梳理自己與 .NET 從相識(shí)、深耕到最終轉(zhuǎn)向其他技術(shù)賽道的全過(guò)程,也坦誠(chéng)講述了背后的思考與轉(zhuǎn)變。
![]()
初識(shí) .NET
2003 年,Walter G. 在大學(xué)的一門通用編程課上第一次接觸 C# 和 .NET 框架。更久之前,他主要用 C 和 C++ 編程,誰(shuí)能想到,那時(shí)需要不斷地手動(dòng)維護(hù)指針、管理內(nèi)存結(jié)構(gòu)、處理垃圾回收,僅是處理底層細(xì)節(jié)就早已占據(jù)了他大量的精力。
后來(lái),C# 的出現(xiàn)讓人眼前一亮,這門語(yǔ)言可以自動(dòng)內(nèi)存管理、更高層次的抽象,讓他終于可以把注意力放回業(yè)務(wù)邏輯本身。
那種輕松感,他后來(lái)形容為“久旱逢雨”。
幾乎在同一時(shí)間,Visual Studio .NET 也開始嶄露頭角。使用一些類似的代碼既能生成 Windows Forms,又能生成 Web Forms,這種體驗(yàn)在當(dāng)時(shí)堪稱驚艷。即便多年之后回憶起來(lái),Walter G. 仍覺得震撼。
![]()
職場(chǎng)剛起步,遭遇理想與現(xiàn)實(shí)的落差感
然而,21 世紀(jì)初的就業(yè)市場(chǎng),大多數(shù)開發(fā)者紛紛轉(zhuǎn)向 Java。因?yàn)?Java 生態(tài)成熟、擁有更多工具和集成開發(fā)環(huán)境(如 JBuilder),就業(yè)機(jī)會(huì)也更多。
相較之下,或許因?yàn)樗揪拖矚g C++,也或許是性格里那點(diǎn)不愿隨波逐流的倔強(qiáng),他一直以來(lái)堅(jiān)持使用 C# 。
大學(xué)畢業(yè)時(shí),他在簡(jiǎn)歷最醒目的位置寫下“C# 開發(fā)者”。
然而現(xiàn)實(shí)并不總?cè)缛怂福髮W(xué)畢業(yè)后的第一份工作往往不是自己能決定的。
「大多數(shù)時(shí)候,你只是抓住能抓住的機(jī)會(huì)。于是,盡管我是以“C# 開發(fā)者”的身份入職,最終卻成了一名全職 X++ 開發(fā)者。如果你不知道什么是 X++,也不用擔(dān)心——現(xiàn)在幾乎沒人知道了。」Walter G. 無(wú)奈地說(shuō)道。
幸運(yùn)的是,當(dāng)時(shí) Walter G. 所在的公司內(nèi)部有多個(gè) .NET 項(xiàng)目。不久之后,有同事找到他:“你懂 C# 對(duì)吧?”
他笑著點(diǎn)頭。很快,他被調(diào)入 Web 團(tuán)隊(duì),也由此開啟了多年專注 Web 開發(fā)的職業(yè)路徑。
![]()
黃金歲月:把熱愛變成職業(yè)
調(diào)入 Web 團(tuán)隊(duì)后,他如魚得水。
白天寫代碼,晚上回家繼續(xù)折騰十幾個(gè)個(gè)人項(xiàng)目。開發(fā)不僅是工作,更是一種沉浸式的樂趣。他還堅(jiān)持每天看 Channel9 的視頻——那是微軟面向開發(fā)者的重要社區(qū)平臺(tái),幾乎承載了那一代 .NET 開發(fā)者的學(xué)習(xí)記憶。后來(lái),Channel9 在 2021 年被整合進(jìn) Microsoft Learn。
除了 Channel9,4GuysFromRolla 博客也是 Walter G. 的重要知識(shí)來(lái)源。他坦言,自己能在工作中游刃有余、拿到不錯(cuò)的薪資,很大程度上得益于這個(gè)博客。
那幾年,他對(duì) C# 的熟悉程度,已經(jīng)到了“幾乎可以瞬間搭建出任何想法”的地步。語(yǔ)言本身未必神奇,真正讓人著迷的,是那種掌控感。靠自己熱愛的技術(shù)謀生,本身就是很多人的理想,而他確實(shí)活在那樣的階段。
在求職市場(chǎng)上,他幾乎沒有遇到阻力。扎實(shí)的 C# 功底,讓他找工作面試幾乎沒有遇到阻礙。
![]()
被動(dòng)追趕:從 Web Forms 到 MVC
變化在 2011 年左右悄然到來(lái)。
技術(shù)領(lǐng)域里,ASP.NET Web Forms 逐漸式微,ASP.NET MVC 開始成為主流。MVC 3 搭配 Razor 視圖的出現(xiàn),更是加速了遷移潮。
很多公司開始從 Web Forms 遷移到 MVC,或直接在新項(xiàng)目中采用 MVC。
可 Walter G. 的日常工作依然是在維護(hù) Web Forms 項(xiàng)目。一方面,他經(jīng)驗(yàn)豐富;另一方面,熟悉 Web Forms 的人越來(lái)越少,他反而成了“稀缺資源”。
直到 2015 年,他才第一次從零開始主導(dǎo)一個(gè) MVC 項(xiàng)目,比行業(yè)趨勢(shì)晚了整整四年。
即便如此,他依然興奮,覺得自己終于重新跟上了“現(xiàn)代化”。
不過(guò),MVC 給他的感覺并不如 Web Forms 那般有趣。對(duì)比之下,MVC 更嚴(yán)謹(jǐn)。過(guò)去 Web Forms 項(xiàng)目里常見的各種“巧妙繞法”,在 MVC 世界里難以存在。但他明白,這是技術(shù)演進(jìn)的方向。適應(yīng),是唯一選項(xiàng)。
當(dāng)時(shí)的項(xiàng)目完成后,Walter G. 又維護(hù)了它好幾年。
![]()
再次轉(zhuǎn)折:ASP.NET Core 帶來(lái)的迷茫
到了 2016–2017 年,又一件事讓 Walter G. 開始懷疑自己的職業(yè)方向。
2016 年,微軟發(fā)布 ASP.NET Core 1.0。這是一次徹底重寫。它不再依賴 .NET Framework,可以跨平臺(tái)運(yùn)行在 Windows、Mac 和 Linux 上。更快、更現(xiàn)代。但關(guān)鍵是——它和 Walter G. 當(dāng)時(shí)正在開發(fā)的項(xiàng)目完全不兼容。
這一次,Walter G. 陷入了迷茫,不知道自己的發(fā)展方向是什么:回頭去找需要維護(hù) Web Forms 的公司?還是繼續(xù)深耕 MVC?亦或者押注尚未完全成熟的 ASP.NET Core?
答案并不輕松。
最終,他選擇了另一條路——學(xué)習(xí) React,并接受了一個(gè)教學(xué)機(jī)會(huì)。
那時(shí)的 React 正風(fēng)頭正勁,營(yíng)銷滿天飛,各種編程訓(xùn)練營(yíng)、社區(qū)、企業(yè)都在擁抱它。
Walter G. 坦言,「公平地說(shuō),我從開發(fā)生涯第一天起就大量使用 JavaScript——jQuery 動(dòng)效、XMLHttpRequest、整個(gè) Ajax 革命。但它始終只是后端代碼的補(bǔ)充,從未成為主角。
我從沒把 JavaScript 當(dāng)作真正的前端核心框架使用。所以接下來(lái)的四年,我?guī)缀醭两诟鞣N React 技術(shù)棧里,比如 MERN、PERN,還教了數(shù)百名學(xué)生,從底層原理講到實(shí)戰(zhàn)應(yīng)用。」
慢慢地,他對(duì) React 的喜愛,竟然和當(dāng)年初識(shí) C# 時(shí)的感覺相似。
React 當(dāng)然也有缺點(diǎn),但它終究是 JavaScript 的延伸,而不是一次徹底推翻重來(lái)的重寫。生態(tài)快速發(fā)展,底層基礎(chǔ)卻相對(duì)穩(wěn)定。五年前的項(xiàng)目,今天依然能運(yùn)行。
這種穩(wěn)定,讓他安心。
![]()
扎根 React:重新掌控技術(shù)選擇權(quán)
2021 年,他加入職業(yè)生涯中的第二家創(chuàng)業(yè)公司,負(fù)責(zé)搭建一個(gè) B2B SaaS 市場(chǎng)平臺(tái),并擁有技術(shù)棧的決定權(quán)。
這一次,他毫不猶豫地選擇了 React。
幾年過(guò)去,這個(gè)決定從未讓他后悔。React 仍在主流之列,Node 依然活躍。他不必?fù)?dān)心框架被徹底廢棄,也不用頻繁重寫部署流程。更多精力被釋放出來(lái),用于真正的產(chǎn)品構(gòu)建。
![]()
回望 .NET:懷念的是時(shí)代,而非框架
過(guò)去幾年里,他也曾動(dòng)過(guò)回歸 .NET 的念頭。但冷靜下來(lái)后,他意識(shí)到,自己熟悉的 Web Forms、MVC 5、Entity Framework 6,早已成為歷史。行業(yè)已經(jīng)進(jìn)入 EF Core 10 時(shí)代,并繼續(xù)前進(jìn)。
在 .NET 世界里,他反而成了“新人”。
這或許正是答案:他從來(lái)都不是一個(gè)只屬于 .NET 的開發(fā)者。他是一名 Web 開發(fā)者,只是在不同階段使用不同工具。
他會(huì)徹底告別 .NET 嗎?大概不會(huì)。他的個(gè)人博客至今仍運(yùn)行在傳統(tǒng) .NET 框架上。每年他都說(shuō)要重寫,卻始終沒動(dòng)手。或許那不僅是技術(shù)選擇,更是一段青春的記憶。
至于重新投入 .NET 生態(tài),學(xué)習(xí) Blazor、追趕快速迭代的版本節(jié)奏?目前,他沒有這個(gè)打算。
這不是對(duì) .NET 的否定。事實(shí)上,它如今的使用率或許比以往更高。真正讓他停下腳步的,是一種更清醒的認(rèn)知:他懷念的,并不是今天的 .NET,而是那個(gè)屬于自己成長(zhǎng)階段的時(shí)代。
二十二年,足夠長(zhǎng)。告別,不一定意味著否定,有時(shí)只是承認(rèn)——自己已經(jīng)走向了另一段路。
原文:https://www.thatsoftwaredude.com/content/14253/quitting-dot-net-after-22-years
未來(lái)沒有前后端,只有 AI Agent 工程師。
這場(chǎng)十倍速的變革已至,你的下一步在哪?
4 月 17-18 日,由 CSDN 與奇點(diǎn)智能研究院聯(lián)合主辦「2026 奇點(diǎn)智能技術(shù)大會(huì)」將在上海隆重召開,大會(huì)聚焦 Agent 系統(tǒng)、世界模型、AI 原生研發(fā)等 12 大前沿專題,為你繪制通往未來(lái)的認(rèn)知地圖。
成為時(shí)代的見證者,更要成為時(shí)代的先行者。
奇點(diǎn)智能技術(shù)大會(huì)上海站,我們不見不散!
特別聲明:以上內(nèi)容(如有圖片或視頻亦包括在內(nèi))為自媒體平臺(tái)“網(wǎng)易號(hào)”用戶上傳并發(fā)布,本平臺(tái)僅提供信息存儲(chǔ)服務(wù)。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.