作為一名入行多年的游戲開發(fā)者,尤其是虛幻引擎的重度用戶,我在IDE工具的選擇上真的很難有VisualStudio以外的其他選項(xiàng)。不過自從 2017年JetBrains Rider問世以后,這種被VS壟斷的局面正在逐漸被改變,身邊也有越來越多的朋友推薦我去使用它。
Rider簡介
Rider誕生于2016年,是JetBrains旗下一款非常年輕的跨平臺 .NET IDE。目前支持包括.NET 桌面應(yīng)用、服務(wù)和庫、Unity 和 Unreal Engine 游戲、Xamarin 、ASP.NET 和 ASP.NET Core web 等多種應(yīng)用程序的開發(fā),配合其強(qiáng)大代碼檢查和快速的響應(yīng)能力,如今已經(jīng)是可以與VS媲美競爭的明星產(chǎn)品了。
了解JetBrains系列產(chǎn)品的朋友應(yīng)該都知道,他們的IDE工具(IntelliJ IDEA、PyCharm)基本上都是架構(gòu)在JVM之上的,所以大部分的語言支持插件和相關(guān)產(chǎn)品也都是在JaVA基礎(chǔ)上研發(fā)的。不過,這些產(chǎn)品中倒是有一個例外,那就是基于.Net架構(gòu)的插件——Resharper。
ReSharper是一款應(yīng)用于VisualStudio的擴(kuò)展插件,由于VS長期存在著搜索速度慢、跳轉(zhuǎn)不準(zhǔn)確等一系列問題,因此Reshaper、VA等可以提高開發(fā)效率的插件一直有著廣泛的市場和用戶,并受到不少開發(fā)者的好評和青睞。而今天文章的主角——Rider,就是以Resharper為后端,IntelliJ為前端 (但ReSharper無法寄宿在JVM上)構(gòu)建的一款新的IDE產(chǎn)品。
網(wǎng)傳JetBrains很早就有開發(fā).Net IDE的打算,但由于微軟長期保持著對Windows開發(fā)環(huán)境的壟斷(并強(qiáng)推VisualStudio作為官方的IDE),很多相關(guān)底層技術(shù)并沒有開源,導(dǎo)致他們只能先開發(fā)ReSharper插件來緊跟.Net的發(fā)展。如今,微軟已經(jīng)收購了Mono,整合.NetFrameWork并升級為全新開源的.Net core。也許正是這些足以表明其開放態(tài)度的行為,才讓JetBrains又重拾.Net的IDE開發(fā)。
游戲開發(fā)環(huán)境與常用IDE
上古時代的游戲開發(fā)非常繁瑣,那時既沒有成熟的圖形硬件設(shè)計思路,也沒有標(biāo)準(zhǔn)的圖形API,當(dāng)然更不可能存在配套的IDE產(chǎn)品了。幾十K的內(nèi)存就動輒上百美元,開發(fā)者需要慎重處理每一個bit,并且絞盡腦汁地去針對硬件去寫各種匯編代碼。
>>游戲中的對象需要精確劃分字節(jié)來表示
不過隨著計算機(jī)技術(shù)的發(fā)展以及個人PC的普及,游戲主機(jī)的硬件架構(gòu)逐步清晰(PS、Xbox、PC、Switch),相關(guān)的圖形API OpenGL、DirectX等也趨于完善,甚至我們已經(jīng)可以在Windows平臺通過交叉編譯來完成跨平臺游戲的開發(fā)(比如IOS、Andriod、Xbox)。同時,隨著游戲引擎的誕生以及發(fā)展,游戲的分層架構(gòu)越來越成熟,游戲開發(fā)者也可以把更多的精力放在游戲的玩法設(shè)計上而無需關(guān)心那些繁瑣的硬件細(xì)節(jié)。
>>雅達(dá)利時期的電子束掃描繪制
Unity和Unreal作為目前主流的商業(yè)引擎,都有著極為強(qiáng)大的功能和配套工具。但在一個數(shù)十萬甚至上百萬行代碼的工程里進(jìn)行開發(fā),編碼工作仍然非常復(fù)雜且充滿了挑戰(zhàn)。
目前主流的開發(fā)語言為C#或者C ,細(xì)化到具體的崗位后開發(fā)環(huán)境會有一定差異,比如TA可能需要經(jīng)常編寫Shader、UI需要經(jīng)常編寫腳本語言等。作為一名客戶端開發(fā),下面列舉了一些我平時的開發(fā)環(huán)境和常用工具:
開發(fā)平臺:Windows
核心開發(fā)工具:IDE Visual Studio VA助手 開發(fā)C
數(shù)據(jù)庫:Redis MySQL等
腳本開發(fā):VSCode開發(fā)Lua,日常的各種腳本編輯
游戲引擎以及相關(guān)工具:Unreal Engine。Unreal Insight做Profile RenderDoc截幀 PVD輔助調(diào)試物理
遠(yuǎn)程:electerm鏈接遠(yuǎn)端Linux服務(wù)器,會偶爾用vim寫一些代碼。VSCode SSH插件偶爾遠(yuǎn)程寫一些PHP Python等
日志搜索:Nodepad ,WSL/PowerShell cat grep指令收集信息 跑跑批處理
全局文件搜索:EveryThing/Listary
資源管理:Perforce P4V
代碼管理:Git GitLab
畫圖:ProcessedOn/ Drawio VSCode插件
當(dāng)然還有很多項(xiàng)目內(nèi)部的工具,比如WEB端的工單管理系統(tǒng)等、Build工具、日志分析工具等等,這里并沒有列出來??偟膩碚f,雖然內(nèi)容看起來很多很雜,但實(shí)際上我大部分的時間都在與Visual Studio打交道(編碼和調(diào)試Bug),IDE自然就會對個人工作效率有著非常大的影響。
前面其實(shí)提過,由于PC游戲的流行以及Windows在圖形技術(shù)方面的推動等原因,通常我們會選擇Windows作為主要開發(fā)環(huán)境。因此,微軟官方的Visual Studio長期以來都是主流的開發(fā)IDE。但是VS功能太過強(qiáng)大甚至過于復(fù)雜,所以集成了一堆我們可能不需要的工具和環(huán)境并造成了一些效率上的缺失。此外,由于其對游戲引擎沒有專門的定制和優(yōu)化,所以會有很多不太方便的地方,甚至有很多Bug。
對于我個人,使用VS日常編碼時有以下幾個痛點(diǎn):
搜索不方便:老生常談但是卻非常影響體驗(yàn)的問題了,早期VS內(nèi)置的功能對于Unreal這樣的大項(xiàng)目完全不夠用,比如文件跳轉(zhuǎn)、定義跳轉(zhuǎn)、聲明跳轉(zhuǎn)都支持的很差,按一下F12可能就得卡半天(如下圖),最后還可能跳到一個錯誤的地方,也因此大部分人都會配合VA助手插件來輔助開發(fā)。好在現(xiàn)在VS也支持Ctrl T全局搜索,雖然一定程度上解決了這個問題,但卡頓的問題仍然存在。而且這個窗口比較小不方便查看還需要全局搜索(Ctrl Shift T)來輔助。
VA的問題:早期的VA問題非常多,經(jīng)常用著用著卡死,導(dǎo)致不得不重啟?,F(xiàn)在官方修了一些Bug,目前對于一些重名的經(jīng)常跳轉(zhuǎn)不準(zhǔn)確,另外就是每次重啟IDE后需要花費(fèi)很長的時間掃描。
Git相關(guān)的操作不方便:雖然VS目前對Git的支持已經(jīng)很全面了,但是一些細(xì)節(jié)上總是做的差點(diǎn)意思,比如沒有對ignore文件的列表展示和折疊等,Blame很卡頓等,所以通常情況下提交、查看、查詢等操作我還是習(xí)慣使用Git Bash或者TortoiseGit來處理。
VS下搜索和過濾UE的Log不太方便:雖然在編輯器里面可以過濾,但是一般比較卡,往往只能另開一個文本編輯器查看
多窗口切換:平時VS基本上只用來開發(fā)C ,其他的腳本語言、PowerShell、遠(yuǎn)程Linux、查看日志等操作都需要切換不同的窗口,用起來就會增加時間成本、降低效率。
如果你平時開發(fā)也有類似的問題,不如和我一樣試試Rider。
Rider使用體驗(yàn)
安裝與基礎(chǔ)使用:
其實(shí)VS升級到2022以后,體驗(yàn)確實(shí)已經(jīng)比之前好了很多,但是一些卡頓、跳轉(zhuǎn)的問題還是沒能很好的解決。在身邊朋友的強(qiáng)力推薦下,我轉(zhuǎn)去嘗試Rider這款廣受好評的編輯器。
為了節(jié)省大家的時間,關(guān)于安裝、配置、打開、運(yùn)行步驟我直接貼到了下面的截圖里面。如下:
(由于Rider已經(jīng)與Unity捆綁在一起,所以Unity用戶并不需要手動下載。我們可以直接在Window-> Package Manager -> 搜索到"Rider"的整合包 。)
(下載鏈接)https://www.jetbrains.com.cn/rider/download/download-thanks.HTML
整個Rider只要1個G,下載安裝的過程非常流暢??紤]到從其他IDE遷移過來的用戶,Rider很貼心的在打開后提示你導(dǎo)入其他編輯器里面的熱鍵,并自動幫你安裝對應(yīng)的插件。此外,Rider可以直接像VS那樣打開sln工程不需要任何其他設(shè)置。
提高效率的配置建議:
在用Rider打開項(xiàng)目之后,我們可以直接看到工程根目錄下的ReadMe.md文件。整個編輯器的布局很清晰,上面的全局的菜單欄,緊挨著下面有一排Run/Debug相關(guān)的按鈕。中間主視野區(qū)是資源目錄和代碼窗口,最下面一排是日志、編譯信息、Git、Debug等多個可折疊窗口。
在正式使用前,推薦大家先去做一些設(shè)置。
1.快捷鍵設(shè)置?!尽癈trl Alt S”】打開setting界面,然后找到【KeyMap】進(jìn)行設(shè)置。前面安裝時他默認(rèn)會讀取到你本地的環(huán)境并推薦你對應(yīng)的“KeyMap”,在這里可以我們可以找到你習(xí)慣的快捷鍵設(shè)置并應(yīng)用。
同時,對于其他功能可以直接按鍵搜索,或者點(diǎn)擊后面的放大鏡直接通過使用快捷鍵找到對應(yīng)的設(shè)置。網(wǎng)上有一些教程給出的快捷鍵與大家本地可能有差異(包括我們后面的快捷鍵介紹),原因是不同人使用的配置不同,如果實(shí)在找不到可以先切到其他人的配置,然后通過按下快捷鍵去找到這個功能?;蛘叩焦俜骄W(wǎng)站下載快捷鍵PDF查閱(注意:這里需要提醒大家一點(diǎn),有一些快捷鍵可能被其他軟件所占用導(dǎo)致失效,比如輸入法里面的Ctrl shift F)
https://www.jetbrains.com.cn/rider/documentation/#keyboardShortcut
2.插件:默認(rèn)在安裝的時候Rider就會根據(jù)你的選擇幫助你安裝相關(guān)的插件,比如C 和.NET的支持、JavaScript和CSS的支持等。
除此之外推薦大家手動安裝一下Key Promoter X的插件,它會在你使用非快捷鍵的時候(鼠標(biāo)點(diǎn)擊)在右下角彈窗提示你對應(yīng)的快捷鍵,有效的鞏固你對快捷鍵的記憶。
3.代碼主題:不同的用戶有不同的主題使用習(xí)慣,比如我在VS上通常使用VA進(jìn)行開發(fā)。為了無縫切到Rider下,就可以在編輯器右邊的設(shè)置按鈕里面找到Theme來選擇Visual Assist Dark完成設(shè)置。
功能推薦
完成配置后就可以愉快的進(jìn)行開發(fā)了。當(dāng)然,Rider里面不僅僅有這些功能,還有一些重要的功能推薦給大家使用。
1.搜索:對于一個復(fù)雜項(xiàng)目,搜索當(dāng)然是重中之重。首先最方便快捷的就是【”Shift Shift“】進(jìn)行快速的全局搜索,與VS中的【Ctrl T】類似,可以查找類型、文件、文本字符串等等,支持首字母查找、速度非常快。如果你忘記了某個快捷鍵,還可以通過Actions標(biāo)簽進(jìn)行關(guān)鍵字搜索,非常方便實(shí)用。
另一個非常重要的快捷鍵就是【“Alt Enter”】,可以呼出一個浮窗處理一系列相關(guān)的邏輯,包括自動插入代碼、導(dǎo)航定位、變量重命名、定義構(gòu)造分離、一鍵注釋等各種相關(guān)功能。
【“Alt G”】或者【“Ctrl 鼠標(biāo)左鍵”】可以迅速的在類的函數(shù)和定義之間切換,完全不卡且非常準(zhǔn)確?!尽癆lt O”】可以方便的在類的頭文件和CPP文件快速切換。(這些在VA助手里面也有,但是Rider確實(shí)要快多)
【“Alt Shift F”】(VA KeyMap)可以觸發(fā)FindUsages功能來全局搜索函數(shù)引用,如果只有一個引用他就會跳到對應(yīng)的位置。
【“Ctrl Shift F”】可以全局搜索字符串,秒開一個窗口來顯示結(jié)果。點(diǎn)擊結(jié)果還可以快速的在不同的窗口之間進(jìn)行切換,非常方便預(yù)覽。
【"Ctrl F2"】或者【"Alt Home"】可以直接顯示當(dāng)前文件所在的目錄,并且可以快速的在當(dāng)前目錄前后進(jìn)行跳轉(zhuǎn)和查閱。
還可以設(shè)置更多快捷鍵來快速打開當(dāng)前文件夾或者控制臺等。
另外,Rider對Shader的代碼的提示和搜索支持的也非常好,寫HLSL與寫C C#的絲滑程度基本一致。
2.編碼:我們在頭文件在聲明類之后可以通過【“Alt Insert”】自動的幫你插入常見的構(gòu)造函數(shù)、getter、Setter等,聲明完函數(shù)后,還可以轉(zhuǎn)到CPP里面直接使用【“Alt Insert”】插入所有沒有被實(shí)現(xiàn)過的的函數(shù)代碼段。
【“Ctrl E”】或者【“Ctrl 逗號”】可以快速的打開最近查看過的文件列表。
【“Alt ↑ 或 ↓”】在當(dāng)前文件的函數(shù)間進(jìn)行切換。【“Ctrl End/Home”】在當(dāng)前文件的首尾進(jìn)行切換。
Rider的提示功能也很強(qiáng),編碼時可以快速的提示你可能想使用的類型,另外還支持顯示宏定義的參數(shù)名稱。
我們還可以在Editor里面設(shè)置常用的“代碼模板”,用于快速輸入自定義格式的代碼片段。比如UE里面打印Log的接口比較復(fù)雜,我們就可以自定義設(shè)置“小寫的不同版本的代碼模板”來快速的輸出我們想要的格式。
很多使用Linux的朋友可能比較習(xí)慣Vim的操作,Rider里也可以直接一鍵設(shè)置按鍵習(xí)慣。安裝IdeaVim插件后就可以方便的在Vim和Intelj來回切換。
3.Git相關(guān):Git相關(guān)的插件是直接默認(rèn)安裝的(如果沒有可以到Plugin配置下面搜索),【Alt 9】打開Git的窗口我們就可以很方便的進(jìn)行Push、Fetch Commit 、Blame、 View Diff、View Histoty等操作。習(xí)慣后就可以完全在Rider里面進(jìn)行Git相關(guān)的操作了,大大地提高效率。
4.Debug:Rider可以自動查找并加載 UE4.natvis,不過他的Debug流程比較特別,需要用專門的Debug模式運(yùn)行才可以調(diào)試。(不能直接點(diǎn)擊Run)常見的調(diào)用堆棧、變量監(jiān)聽、函數(shù)斷點(diǎn)(條件斷點(diǎn))、內(nèi)存數(shù)據(jù)斷點(diǎn)、即時窗口、單步調(diào)試都支持,不過很多窗口都不支持折疊或者更多設(shè)置,內(nèi)存斷點(diǎn)比較麻煩,不能自定義寫地址斷點(diǎn),不支持Debug變量的字符串匹配搜索,感覺還有待完善。
5.數(shù)據(jù)庫:Rider自帶了數(shù)據(jù)庫可視化工具,可以在軟件中直接操作數(shù)據(jù)庫。而且通常我們使用的SQL Server、MySQL、Apache、Oracle全部都是支持的,用起來非常方便。
6.全棧開發(fā):Rider本身對WEB全棧其實(shí)是比較友好的,常見的JavaScript、TypeScript、HTML、CSS、JSON、SQL 等全部支持。而在游戲開發(fā)中,我們除了C 、C#還可能需要寫Lua、Python等腳本代碼,所以常常是分別使用VS和VSCode來編寫不同語言的代碼。有了Rider,再配合一些插件,我們就可以全部都在一個IDE里面進(jìn)行操作了。此外,Rider還支持SSH,對于兼職客戶端服務(wù)器兩個崗位的同學(xué),平時使用Rider搞前端,然后直接SSH鏈接到遠(yuǎn)端寫服務(wù)器代碼也是非常舒服的。
7.其他功能:還有一些比較人性化的功能,使用起來也很方便
內(nèi)置控制臺,解決運(yùn)行批處理來回切窗口的問題。
ToDolist預(yù)覽,寫復(fù)雜功能的時候就不怕臨時忘掉了
數(shù)字BookMark,更方便的進(jìn)行跳轉(zhuǎn)和記錄
LocalHistory,相當(dāng)于一個本地自動的版本管理記錄,可以右鍵查看和對比,即使電腦突然死機(jī)也可以找到你最近修改過的記錄。
顏色選取,對Color定義使用【Alt Enter】可以直接呼出顏色面板進(jìn)行選色替換(Unity可用)
8.關(guān)于漢化:Rider于2月初剛剛推出針對簡體中文本地化的搶先體驗(yàn)計劃,目前體驗(yàn)下來還不錯,預(yù)計很快就會就能正式進(jìn)入官方版本。
https://blog.jetbrains.com/zh-hans/dotnet/2023/02/07/introducing-the-rider-localization-eap-for-chinese-japanese-and-korean/
Rider與游戲開發(fā)
作為一款進(jìn)軍游戲開發(fā)領(lǐng)域的IDE,Rider針對Unity和Unreal的做了很多定制的開發(fā)來提高效率。早在Rider問世時,就已經(jīng)針對Unity做了很多功能并且被Unity官方所推薦。而今年初Epic官方發(fā)布發(fā)布的黑客帝國Demo也是使用Rider所開發(fā),側(cè)面證明Rider了對虛幻引擎的支持力度和Epic官方對其的信任程度。
Rider對游戲開發(fā)的定制優(yōu)化:
定制化的代碼檢查與提示:針對不同的游戲引擎提供非常完善的代碼檢查以及智能修復(fù)功能(一鍵生成#include缺失文件等)。比如針對Unreal,可以自動顯示反射相關(guān)的所有提示,包括UPROPERTY、UFUNCTION、UCLASS宏里面的參數(shù)。還可以檢查RPC、屬性回調(diào)函數(shù)等相關(guān)的參數(shù)設(shè)置是否正確。
資源索引和定位:對于Unity,能夠在代碼里直接看到是哪些物體使用了這個腳本以及相關(guān)引用,還可以非常智能的進(jìn)行反匯編來跳轉(zhuǎn)到指定的源碼。對于Unreal,可以直接在代碼上浮窗顯示藍(lán)圖資源的引用數(shù)量和位置,支持藍(lán)圖的讀取和搜索。
特定類型腳本和文件的構(gòu)建模板:比如UnityScript、Unity Shader、Unreal UObject/Actor Class等
完美兼容Shader編寫:所有的IDE快捷鍵都可以使用
支持與引擎的雙向通信:即可以在IDE里面直接操作引擎編輯器的Play等操作
日志共享:可以直接在IDE里面查看搜索游戲日志,Unity還可以通過點(diǎn)擊日志直接定位到對應(yīng)代碼
斷點(diǎn)暫停:Unity支持在斷點(diǎn)的同時,暫停整個游戲,恢復(fù)斷點(diǎn)后仍然維持暫停狀態(tài)
單元測試:可以在IDE里面配置多個單元測試,一鍵執(zhí)行并返回所有結(jié)果
配置文件:支持Unreal在IDE中讀取配置文件內(nèi)容并顯示
為了讓Unreal開發(fā)更加流暢,我們還需要做一些設(shè)置來提高使用體驗(yàn):
https://www.jetbrains.com.cn/lp/rider-unreal/
1.安裝Riderlink:如果你是使用虛幻引擎進(jìn)行開發(fā),打開工程后就會推薦你按照RiderLink。這是官方專門為UE開發(fā)的插件,提供了Rider Blueprints、GameControl、Logging、ShaderInfo四個子功能,會直接按照到對應(yīng)工程或者引擎對應(yīng)的Plugin的目錄下。
按照后我們可以直接在編輯器里面創(chuàng)建Unreal里面常見的類型。
直接在IDE里面設(shè)置UE編輯器里面的啟動參數(shù)
可以直接在IDE的窗口里面查看UE編輯器的日志,可以直接使用Log的層級過濾功能,速度很快且方便。
2.安裝EzArgs插件:通常來說,如果想要在啟動的時候加命令行參數(shù)(比如想運(yùn)行一個純客戶端而非Editor),需要打開項(xiàng)目設(shè)置,然后在項(xiàng)目命令函參數(shù)里面添加。
安裝插件后,我們就可以直接在這里添加參數(shù)。有一個技巧就是平時把參數(shù)都填進(jìn)去保持,如果想讓其失效,就在“-”和字符串中間加一個空格,用到的時候再把空格刪掉。
Unity由于Rider很早就支持,所以幾乎不需要下載額外的插件就可以享受前面提到的各種功能。 有一點(diǎn)補(bǔ)充一下,
我們第一次使用時,需要在Unity編輯器里面設(shè)置IDE為 Rider “Edit -> Preferences -> External Tools -> External Tools“ 。后面就可以直接在編輯器里面雙擊腳本在Rider里面打開了。
https://www.jetbrains.com.cn/lp/dotnet-unity/
結(jié)語
通過這段時間對Rider的體驗(yàn),我感受到了JetBrains對產(chǎn)品的用心以及其未來的發(fā)展?jié)摿Γㄓ绕涫窃谟螒蜷_發(fā)的環(huán)境上)。雖然VS依舊有著無法被撼動的地位以及優(yōu)勢,但是在很多方面,Rider已經(jīng)與VS平分秋色甚至超過VS。單從游戲開發(fā)的角度而言,Rider確實(shí)在整體的體驗(yàn)上要勝過VS一些。
最后,再將Rider與VS做一個相對全面的比較:
總體對比
Rider是64位 / VS在2022版本后才升級為64位【64位意味著更大的內(nèi)存空間使用和運(yùn)行時性能的提升。】
Rider是跨平臺的,支持Windows/Linux/MacOS / VS只支持Windows平臺【可以在Mac上使用Unity】
Rider前后端異構(gòu),前端IntelliJ Platform基于JVM,后端Resharper基于.Net / VS完全基于.Net框架實(shí)現(xiàn)
Rider 對 .Net 平臺語言支持雖然完整,但在可視化編輯器方便以及部分微軟的商業(yè)產(chǎn)品上支持不足 / VS功能非常豐富,除了常見的WEB開發(fā)、C 桌面應(yīng)用開發(fā),還完整的支持Azure、SQL Server、TFS、Office、WPF、UWP等
Rider對游戲引擎的支持更加友好和完善 / VS 沒有針對游戲引擎做過多的定制化
Rider漢化剛剛推出體驗(yàn)版,還在完善 / VS自帶漢化版本
Rider占用體積小,安裝迅速,不容易出現(xiàn)軟件依賴和卸載的難題 / VS占用體積非常大,安裝比較耗時
Rider需要.NET來構(gòu)建相關(guān)產(chǎn)品 / VS installer在構(gòu)建.NET產(chǎn)品以及 處理VS安裝修改、庫組件升級等方面更詳細(xì)和方便
Rider是商業(yè)產(chǎn)品 需要收費(fèi) / VS 有免費(fèi)的社區(qū)版
使用體驗(yàn)差異
搜索:Rider解析速度略快,搜索非??欤D(zhuǎn)非常準(zhǔn)確。不需要長時間的掃描來占用CPU,基本上不會出現(xiàn)卡死的情況 / VS 除了兩個全局搜索的功能外,其他搜索效率和準(zhǔn)確度都不太友好,而且經(jīng)常容易卡
調(diào)試:Rider支持VS的大部分功能,但是在數(shù)據(jù)斷點(diǎn)、即時窗口、變量搜索等方便不夠完善 / VS調(diào)試功能更全面,體驗(yàn)要更好一些
單元測試:Rider對Unity單元測試支持比較好 / VS沒有針對游戲引擎定制的單元測試
引擎操作:Rider可以在IDE里面直接運(yùn)行的游戲?qū)嵗?/ VS目前還需要切換到編輯器窗口來進(jìn)行操作
編碼:Rider的代碼生成很智能且迅速 / VS的往往不夠準(zhǔn)確
數(shù)據(jù)庫:Rider默認(rèn)支持多種數(shù)據(jù)庫可視化功能(包括MongoDB,SQlite, Sybase, DB2, Derby等)/ VS默認(rèn)只支持SQL Server, Azure SQL, Oracle等幾款常見數(shù)據(jù)庫
全棧開發(fā):Rider可以在很少的配置下就支持多種語言的開發(fā)和搜索 / VS做全棧開發(fā)感覺還是過于厚重
提示/檢查:Rider的提示更完整更準(zhǔn)確(甚至詳細(xì)到編碼風(fēng)格以及性能使用建議)/ VS 基本上只有常規(guī)的檢查,偶爾會出現(xiàn)錯誤的代碼提示
Git:Rider對Git的展示和處理更友好/ VS從功能上來說支持也很完整,但是體驗(yàn)稍差
資源占用:Rider的內(nèi)存占用看起來是比較高的(估計是因?yàn)樗隽撕芏嘟馕雠c緩存),編譯CPU吃滿 / VS內(nèi)存占用比Rider少30%左右,編譯CPU吃滿
反編譯:Rider的反編譯很完善準(zhǔn)確 / VS偶爾會出現(xiàn)反編譯失敗無法調(diào)試的情況
Dump:Rider無法直接打開Dump文件,需要在IDE里面使用特定的指令 / VS對 Dump的支持要更加友好一點(diǎn)
當(dāng)然除此之外,官方也給過更為完整詳細(xì)的對比。大家可以自行查閱
https://www.jetbrains.com/rider/compare/rider-vs-visual-studio/
Rider是一款年輕且優(yōu)秀的IDE,在搜索與提示方面做到了極致,用戶熟悉之后就可以大大地提高開發(fā)效率。同時,考慮到其針對Unity和Unreal的定制,Rider絕對可以說是目前最適合游戲開發(fā)的IDE之一了。如果非要說缺點(diǎn)的話,那可能就是Ride并非一款免費(fèi)的IDE產(chǎn)品,首年使用就需要花費(fèi)149刀來進(jìn)行購買(次年119,第三年89)。從個人角度來講這個價格著實(shí)不算便宜,但對于公司來說依然要比采購VA要更為劃算。學(xué)生和教師是可以申請免費(fèi)使用的,非學(xué)生黨且感興趣的朋友也可以免費(fèi)試用一個月再決定是否購買。
版權(quán)聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻(xiàn),該文觀點(diǎn)僅代表作者本人。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如發(fā)現(xiàn)本站有涉嫌抄襲侵權(quán)/違法違規(guī)的內(nèi)容, 請發(fā)送郵件至 舉報,一經(jīng)查實(shí),本站將立刻刪除。