亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

提高golang源碼閱讀效率的六個(gè)高級(jí)技巧

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

引言

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

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

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

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

第一個(gè):在大型項(xiàng)目中游刃有余的行走

使用快捷鍵:alt+Home

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

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

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

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

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

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

使用快捷鍵:ctrl+shift+n

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

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

第四個(gè):在多個(gè)停留點(diǎn)來回切換

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

在項(xiàng)目中,你會(huì)在很多代碼位置停留,就如同一個(gè)人在人世間從一個(gè)地方去到另一個(gè)地方,然后再去到另一個(gè)地方。

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

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

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

alt+P:表示回到上一個(gè)地方,P表示Previous

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

第五個(gè):快速查看文件的大局觀

使用快捷鍵:alt+7

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

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

第六個(gè):行為的行為,比行為更強(qiáng)大

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

action是goland的一個(gè)強(qiáng)大概念,goland里面具有很多的action,從它的Setting里面就可以看出。

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

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

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

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

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

有波瀾的搜索action

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

以上就是提高golang源碼閱讀效率的高級(jí)技巧的詳細(xì)內(nèi)容,更多關(guān)于golang源碼閱讀技巧的資料請(qǐng)關(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ì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-09-09
  • golang使用mapstructure解析json

    golang使用mapstructure解析json

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

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

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

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

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

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

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

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

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

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

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

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

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

    go語言中反射機(jī)制的三種使用場(chǎng)景

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

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

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

最新評(píng)論