理解重構(gòu) 重構(gòu)是一種對(duì)軟件內(nèi)部結(jié)構(gòu)的改善涛碑,目的是在不改變軟件的可見行為的情況下漾峡,使其更易理解败潦,修改成本更低判哥。 在保持功能不變的前提下岔帽,利用設(shè)計(jì)思想昵仅、原則睦霎、模式梢卸、編程規(guī)范等理論...

理解重構(gòu) 重構(gòu)是一種對(duì)軟件內(nèi)部結(jié)構(gòu)的改善涛碑,目的是在不改變軟件的可見行為的情況下漾峡,使其更易理解败潦,修改成本更低判哥。 在保持功能不變的前提下岔帽,利用設(shè)計(jì)思想昵仅、原則睦霎、模式梢卸、編程規(guī)范等理論...
定時(shí)器 Go的定時(shí)器是在經(jīng)過一段時(shí)間后做一些事情肮塞,位于標(biāo)準(zhǔn)庫(kù)的time包襟齿。主要是time.Timer, time.Ticker和看起來不太明顯的定時(shí)器time.Sleep。由...
什么是context 從go1.7開始枕赵,golang.org/x/net/context包正式作為context包進(jìn)入了標(biāo)準(zhǔn)庫(kù)猜欺。那么,這個(gè)包到底是做什么的呢拷窜?根據(jù)官方的文檔說...
在上一篇文章 golang context初探 中开皿,已經(jīng)初步了解了context的用法以及應(yīng)用的場(chǎng)景。那么接下來深入到源碼中來學(xué)習(xí)一下context是怎么實(shí)現(xiàn)的篮昧。 empty...
最近在油管上面看了一個(gè)視頻:Understanding nil赋荆,挺有意思,這篇文章就對(duì)視頻做一個(gè)歸納總結(jié)懊昨,代碼示例都是來自于視頻窄潭。 nil是什么 相信寫過Golang的程序員...
本文譯自:How To Close Channels in Golang Elegantly。幾天前酵颁,我寫了一篇文章來說明golang中channel的使用規(guī)范嫉你。在reddi...
跳躍表 自我感覺跳躍表就是分層的鏈表,為了達(dá)到二分查找的時(shí)間效率躏惋,跳躍表提出了層的概念幽污,每一層也是一個(gè)鏈表。 如果能達(dá)到第一層的個(gè)數(shù)是0層的一半簿姨,2層的個(gè)數(shù)是1層的一半距误,n層...
第一次1的后面一位是2攘乒,除掉偶數(shù)位后,1的后面是3,3的后面是5 每次除掉一輪惋鹅,1與后面一位的距離是2的n次方,所以最后剩下的那個(gè)數(shù)一定是1 + 2^(n)次方因?yàn)橹挥?00...
有100本書蝠检,每次可以拿1本沐鼠,2本,...叹谁,5本饲梭。A,B兩個(gè)人比賽,誰最后拿到書誰就勝利焰檩。假設(shè)你是A憔涉,怎么樣才能保證自己贏? 分析:如果A想贏析苫,則倒數(shù)第二個(gè)人必然拿不完剩下的...
1、對(duì)于出現(xiàn)兩次的元素茫死,使用“異或”操作后結(jié)果肯定為0跪但,那么我們就可以遍歷一遍數(shù)組,對(duì)所有元素使用異或操作璧榄,那么得到的結(jié)果就是兩個(gè)出現(xiàn)一次的元素的異或結(jié)果特漩。 2、因?yàn)檫@兩個(gè)元...
一.問題描述 一只青蛙正在過河骨杂。 河流分為x個(gè)單位涂身,每個(gè)單位可能存在或不存在石頭。 青蛙可以跳到石頭上搓蚪,但不能跳入水中蛤售。 給出按照升序排序的石塊位置(單位),確定青蛙是否能夠...