欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

提高golang源碼閱讀效率的六個高級技巧

 更新時間:2024年01月31日 14:21:21   作者:golang?學(xué)習(xí)記  
隨著業(yè)務(wù)的發(fā)展,自己對代碼的審美的改變,我們不斷的迭代這些代碼,代碼量可以說是與日俱增,代碼的某些結(jié)構(gòu)也會發(fā)生大大小的改變,這些都要求我們在閱讀代碼的時候,需要更快的效率和技巧

引言

在一個項目開發(fā)過程中,我們會很經(jīng)常閱讀代碼,這里面包括負(fù)責(zé)不同業(yè)務(wù)的人的代碼,也會可能涉及到一些框架源碼。

也許更多時間是閱讀自己的代碼,隨著業(yè)務(wù)的發(fā)展,自己對代碼的審美的改變,我們不斷的迭代這些代碼,代碼量可以說是與日俱增,代碼的某些結(jié)構(gòu)也會發(fā)生大大小的改變,這些都要求我們在閱讀代碼的時候,需要更快的效率和技巧。

只有深入經(jīng)歷過比較大型的項目,我們才會更希望有更強大的方式去應(yīng)對和降低環(huán)境帶來的復(fù)雜和變化。

下面就來說說我積累到的那些神一般的閱讀源碼的技巧。

第一個:在大型項目中游刃有余的行走

使用快捷鍵:alt+Home

大型項目的一個特點就是一個文件夾下面有很多的文件,通常多到你厭煩了每次去到里面的文件都要靠鼠標(biāo)的齒輪不停的滑。

在當(dāng)前文件使用alt+home,就可以幫你彈出這個文件所屬的文件夾下面的所有文件,然后你就可以使用之前說到的 speed tying ,根據(jù)關(guān)鍵的幾個字母定位到想要去的文件了。

第二個:在已經(jīng)打開的多個文件之間來回穿梭

使用快捷鍵:alt+left/right left 表示左箭頭,right 表示右箭頭

這個快捷鍵可以大大減少自己寫代碼和右手切換到鼠標(biāo)上的時間,也許你開始這個用起來不是很喜歡,但是相信多用十幾次就會感覺很swift(飛一般的感覺)

第三個:遠(yuǎn)程定位到某個文件

使用快捷鍵:ctrl+shift+n

這個適合你的文件名很長的,但是你只記得2-5字母,并且你會感覺到現(xiàn)在你所在的文件位置距離你的目標(biāo)文件的位置很遠(yuǎn)。那么你可以趕快使用這個快捷鍵,然后輸入你記得的內(nèi)容。

根據(jù)經(jīng)驗,你可以在最后輸入文件的后綴,比如你有一個VeryLongFamousFilename.xml和VeryLongFamousFilename.go,此時你可以這樣輸入:vlfxml,這樣goland就會把你想要的文件排在最前面,只需要enter一下,就進入了想要的代碼世界了。

第四個:在多個停留點來回切換

使用快捷鍵:ctrl+alt+ left/right

在項目中,你會在很多代碼位置停留,就如同一個人在人世間從一個地方去到另一個地方,然后再去到另一個地方。

但是雖然現(xiàn)代科技的速度很快,但是去旅游,去遠(yuǎn)行人仍然會花費人很多的精力和時間。

在這方面,代碼這很快了,使用如上快捷鍵立馬到。

不過這2個快捷鍵,很容易和系統(tǒng)的快捷鍵沖突,人都不喜歡沖突的,所以,我尋得一個更快的快捷鍵

alt+P:表示回到上一個地方,P表示Previous

alt+F:回到下一個地方,F(xiàn)表示Forward。

第五個:快速查看文件的大局觀

使用快捷鍵:alt+7

前面講的都是如何進入一個文件,去到文件的細(xì)節(jié)之處;這像是一個爬山的過程,如果不一覽眾山小的話,眼光的境界就得不到總結(jié)和延展。這快捷鍵給了我們一個像杜甫一樣會當(dāng)凌絕頂,一覽眾山小的機會。

里面列出了這個文件的結(jié)構(gòu)(權(quán)當(dāng)這個文件的一個傳記了吧):就像這個文件的總結(jié)單一樣,有哪些屬性,做了哪些事;就像一個偉人傳記,會描述這個人的特點,童年經(jīng)歷等,大局觀就像書的目錄。

第六個:行為的行為,比行為更強大

前面的技巧,對象都很明確是一個文件。我們按照這些技巧,去執(zhí)行就可以了。然而有些問題是:我想做一個事情,我找不到對應(yīng)的地方去做,只能盲目的在一堆似是而非的選擇中去嘗試。

action是goland的一個強大概念,goland里面具有很多的action,從它的Setting里面就可以看出。

但是今天講的就不是讓你在Setting里面不停的點擊。我們可以像搜索文件一樣搜索action。

快捷鍵:不好意思,這個沒有默認(rèn)的快捷鍵?。ㄕf錯了,快捷鍵是ctrl+shift+a,但是這個容易和截圖快捷鍵沖突)

但是gland不會讓你失望的。我們可以結(jié)合前面搜索文件夾快捷鍵ctrl+shift+n,然后按2次alt+right,可以專門來搜索action;

其實你也可以直接2次shift,然后輸入action的名字就好了。(這是最快的方式了,所以建議忘記ctrl+shift+a)

這樣搜索action的優(yōu)勢很明顯,如果這個action在Setting里面的層次藏的很深,這個時候,我們一層層進去很費時間的。使用一步到位的體驗就很絲滑。

有波瀾的搜索action

例子:選擇顏色主題:輸入color,然后按enter,會彈出一個小框給你選擇。

以上就是提高golang源碼閱讀效率的高級技巧的詳細(xì)內(nèi)容,更多關(guān)于golang源碼閱讀技巧的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • Go環(huán)境變量配置,及GOROOT、GOPATH的區(qū)別小結(jié)

    Go環(huán)境變量配置,及GOROOT、GOPATH的區(qū)別小結(jié)

    本文主要介紹了Go環(huán)境變量配置,及GOROOT、GOPATH的區(qū)別小結(jié),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-09-09
  • golang使用mapstructure解析json

    golang使用mapstructure解析json

    mapstructure?是一個?Go?庫,用于將通用映射值解碼為結(jié)構(gòu),這篇文章主要來和大家介紹一下golang如何使用mapstructure解析json,需要的可以參考下
    2023-12-12
  • GO中的時間操作總結(jié)(time&dateparse)

    GO中的時間操作總結(jié)(time&dateparse)

    日常開發(fā)過程中,對于時間的操作可謂是無處不在,但是想實現(xiàn)時間自由還是不簡單的,多種時間格式容易混淆,本文為大家整理了一下GO中的時間操作,有需要的可以參考下
    2023-09-09
  • 分布式架構(gòu)在Go語言網(wǎng)站的應(yīng)用

    分布式架構(gòu)在Go語言網(wǎng)站的應(yīng)用

    分布式架構(gòu)是目前應(yīng)對高流量、高并發(fā)的重要解決方案,分布式架構(gòu)的核心思想是分而治之,將單臺服務(wù)器的資源劃分為多臺服務(wù)器進行協(xié)同完成,分布式架構(gòu)應(yīng)用于Go語言網(wǎng)站中既能提升服務(wù)速度,又能降低了服務(wù)器宕機的風(fēng)險
    2024-01-01
  • Go語言Web編程實現(xiàn)Get和Post請求發(fā)送與解析的方法詳解

    Go語言Web編程實現(xiàn)Get和Post請求發(fā)送與解析的方法詳解

    這篇文章主要介紹了Go語言Web編程實現(xiàn)Get和Post請求發(fā)送與解析的方法,結(jié)合實例形式分析了Go語言客戶端、服務(wù)器端結(jié)合實現(xiàn)web數(shù)據(jù)get、post發(fā)送與接收數(shù)據(jù)的相關(guān)操作技巧,需要的朋友可以參考下
    2017-06-06
  • Go標(biāo)準(zhǔn)庫日志打印及同時輸出到控制臺與文件

    Go標(biāo)準(zhǔn)庫日志打印及同時輸出到控制臺與文件

    Go語言內(nèi)置的log包實現(xiàn)了簡單的日志服務(wù),下面這篇文章主要給大家介紹了關(guān)于Go標(biāo)準(zhǔn)庫日志打印及同時輸出到控制臺與文件的相關(guān)資料,文中通過實例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-11-11
  • golang生成指定位數(shù)的隨機數(shù)的方法

    golang生成指定位數(shù)的隨機數(shù)的方法

    這篇文章主要介紹了golang生成指定位數(shù)的隨機數(shù)的方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-10-10
  • Go語言中高效地處理集合的方法小結(jié)

    Go語言中高效地處理集合的方法小結(jié)

    在?Go?語言中,處理集合(如切片、映射等)時,可以通過多種方式提高效率,本文為大家整理了一些常見的方法,有需要的小伙伴可以了解一下
    2025-02-02
  • go語言中反射機制的三種使用場景

    go語言中反射機制的三種使用場景

    本文主要介紹了go語言中反射機制的三種使用場景,包括JSON解析、ORM框架和接口適配,具有一定的參考價值,感興趣的可以了解一下
    2025-02-02
  • Go常用技能日志log包創(chuàng)建使用示例

    Go常用技能日志log包創(chuàng)建使用示例

    這篇文章主要為大家介紹了Go常用技能日志log包創(chuàng)建使用示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-08-08

最新評論