Code Name:Surface Go!Surface Go使用小結(jié)(三)

Augix官方QQ群:595698697。
Augix微博:@Augix頻道。
Augix微信訂閱號:AugixMe。
Surface Go QQ交流群:302627482。

作為一名喜歡寫文章做視頻的程序員,Surface Go到底能不能做開發(fā),自然也是自己想要探尋的問題。
能,也不能。
奔騰Gold 4415Y處理器的羸弱性能,肯定是沒辦法編譯代碼,所以Surface Go更適合開發(fā)Javascript、Python、Ruby這種腳本語言。
為了試探一下Surface Go到底能做什么,首先安裝IntelliJ IDEA作為Java開發(fā)工具;然后安裝“宇宙第一IDE”Visual Studio 2017,進(jìn)行C#或C++開發(fā);最后安裝Visual Studio Code,進(jìn)行Javascript和Python開發(fā)模擬。這幾本覆蓋了常見的開發(fā)工具和開發(fā)語言。
Java開發(fā)
Java開發(fā)常用的IDE有IntelliJ IDEA、Eclipse和Netbeans。這三款I(lǐng)DE中,無意IntelliJ IDEA性能最好且流暢度最高。如果不是公司強(qiáng)制使用Eclipse或者Netbeans,相信大部分開發(fā)者都會(huì)選擇IntelliJ IDEA,真的非常好用,誰用誰知道。
IntelliJ IDEA啟動(dòng)速度尚可,如果設(shè)定成自動(dòng)打開上次的工程,還是要去離開座位接杯水才能好。軟件啟動(dòng)時(shí)間并不長,但是打開工程之后會(huì)有很長的時(shí)間構(gòu)建緩存和索引的過程。不過在使用過程中流暢度還不錯(cuò)。代碼提示、重構(gòu)、搜索等功能比較順滑。但是debug就有點(diǎn)難受了,時(shí)間較長。隨著使用時(shí)間的提升,軟件還是會(huì)出現(xiàn)越來越卡的情況。
由于自己手頭沒有真正的“大項(xiàng)目”,所以并不能特別真實(shí)模擬Java開發(fā)使用情況。如果是公司較為成熟的復(fù)雜結(jié)構(gòu)的項(xiàng)目,開發(fā)體驗(yàn)更差一些。
此外,JetBrains的IDE雖然非常好用,但是占用內(nèi)存一點(diǎn)都不含糊。對于8GB內(nèi)存的Surface Go來說,平時(shí)空閑狀態(tài)下內(nèi)存剩余也就在4GB左右,而在使用IntelliJ IDEA的時(shí)候,這個(gè)軟件的內(nèi)存占用很容易就跑到1GB以上。

Visual Studio 2017
Visual Studio 2017在Surface Go上運(yùn)行效率一般,并不比IntelliJ IDEA快。大概采用類似“模塊化”加載的方式,在一開始Visual Studio 2017表現(xiàn)較為輕盈,反應(yīng)速度尚可。但是一旦涉及到一些復(fù)雜的集成開發(fā)和可視化,譬如WPF界面實(shí)時(shí)預(yù)覽、UWP頁面預(yù)覽,Visual Studio 2017就會(huì)很卡,預(yù)覽功能可能會(huì)造成整個(gè)程序短時(shí)間卡住。
在編譯代碼的時(shí)候Surface Go性能不足的問題就暴露無遺,雖不至于將Visual Studio 2017卡住,也要等待很長的時(shí)間。而如果是諸如Xamarin這種復(fù)雜的編譯+打包的過程,就算是在Android實(shí)機(jī)測試,也非常緩慢。毫不客氣說,如果用Visual Studio 2017做Xamarin、UWP、Unity之類的開發(fā),那就是在“磨洋工”。
Visual Studio Code
雖然嚴(yán)格意義上來說Visual Studio Code是微軟推出的一款“文本編輯器”,可是干的活卻更像是IDE在做的。通過插件,Visual Studio Code幾乎無所不能,而且比Visual Studio 2017更為輕盈,更適合Javascript、Python之類的開發(fā)場景。

Visual Studio Code使用體驗(yàn)非常棒,流暢度非常高,畢竟屬于一款輕量級的文本編輯器。只要不涉及到編譯,速度都尚可。例外是在使用Javascript或者TypeScript的時(shí)候,由于兼容性等歷史遺留問題,需要轉(zhuǎn)譯為ES5規(guī)范,Surface Go轉(zhuǎn)譯速度也不快。
使用體驗(yàn)
用Surface Go寫代碼,絕對是對代碼有著深沉的愛。
顯示面積太小,字體太小,寫代碼就是受罪。沒有程序員喜歡頻繁滾動(dòng)屏幕來看完一個(gè)簡單的方法,但是如果將字體放大,同屏顯示的內(nèi)容就實(shí)在是太少了。但是如果默認(rèn)的字體大小,在這塊10英寸的屏幕上編程就是“大家來找茬”了。
做運(yùn)維,或者出門緊急救急是可以的,但是絕對不適合用來長時(shí)間編程,同樣也不適用于編譯程序。如果是Web開發(fā),可以考慮外接顯示器,配合Visual Studio Code,體驗(yàn)并不是很差,但已經(jīng)可以作為主力開發(fā)的筆記本選擇了。用USB Type-C的轉(zhuǎn)接器配合外接顯示器、鍵盤鼠標(biāo),Surface Go也可以像很多MacBook用戶一樣,用作一個(gè)移動(dòng)計(jì)算平臺(tái)。
但無論是那種編程方式,外接顯示屏是必須的。在這塊10英寸的屏幕上編寫代碼就是自虐。如果日常涉及的都是輕量級編程工作,或者就是一些運(yùn)維、數(shù)據(jù)庫和網(wǎng)絡(luò)維護(hù)之類的工作,這些工作對于機(jī)器本身的性能并沒有要求,那么超級便攜的Surface Go覺得值得考慮。