国产精品天干天干,亚洲毛片在线,日韩gay小鲜肉啪啪18禁,女同Gay自慰喷水

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

使用 Go 實(shí)現(xiàn)一個簡單的 k-v 數(shù)據(jù)庫

2021-04-25 00:41 作者:roseduanV  | 我要投稿

大家好,我是 roseduan,今天我向大家推薦一下我寫的一個 Go 語言實(shí)戰(zhàn)項目—rosedb。

rosedb 是一個簡單、內(nèi)嵌的 k-v 數(shù)據(jù)庫,使用 Golang 實(shí)現(xiàn),支持多種數(shù)據(jù)結(jié)構(gòu),包含 String、List、Hash、Set、Sorted Set,接口名稱風(fēng)格和 Redis 類似。

如果你已經(jīng)比較熟悉 Go 語言的基礎(chǔ)知識了,但是又苦于沒有項目實(shí)戰(zhàn),無法得到進(jìn)一步的提升,那么這個項目一定是幫助你鞏固和進(jìn)階 Go 知識的絕佳素材。

我將這個項目開源到了我的 GitHub 上面,你可以在 GitHub 搜索 rosedb,或者點(diǎn)開這個鏈接查看:

https://github.com/roseduan/rosedb

大概去年 6 月份,我剛開始學(xué)習(xí) Go 語言,由于之前有 Java 的經(jīng)驗(yàn),加上 Go 的基本語法較簡單,上手還是很快,但是學(xué)完基礎(chǔ)的語法知識之后,就不知道下一步應(yīng)該做什么了,相信有很多小伙伴跟我有一樣的感覺。

一個偶然的機(jī)會,我在網(wǎng)上看到了一篇介紹數(shù)據(jù)庫模型的文章(文章地址在項目的 Issue 中),文章很簡單,理解起來也很容易,并且我一直以來對數(shù)據(jù)庫還是比較感興趣的。

因此我想著可以自己實(shí)現(xiàn)一個 k-v 數(shù)據(jù)庫,造個簡單的輪子,借此鞏固自己的一些基礎(chǔ)知識,通過實(shí)踐這個項目,至少可以學(xué)習(xí)到:

  • Go 語言大多數(shù)基礎(chǔ)語法,以及一些高級特性比如 goroutine、chan、mutex

  • 數(shù)據(jù)結(jié)構(gòu)及算法相關(guān)知識,鏈表,哈希表,跳表,有序集合等等

  • 操作系統(tǒng)的一些知識,特別是對文件系統(tǒng),內(nèi)存映射相關(guān)的內(nèi)容

今年初,我在找工作的時候,其實(shí)這個項目對我的幫助還是挺大的,在這之前我沒有任何 Go 相關(guān)工作經(jīng)驗(yàn),僅自學(xué)了 Go 語言的基礎(chǔ)知識,但還是順利找到了 Go 開發(fā)的工作職位。

在面試的過程當(dāng)中,一些面試官也對這個項目比較的感興趣,都讓我介紹一下,這也從某些程度說明,擁有一個開源項目,對于找工作是一個亮點(diǎn),不論項目的 star 數(shù)量多不多,這至少能夠說明你的動手能力,學(xué)習(xí)能力都還是不錯的。

很多同學(xué)可能覺得是寫數(shù)據(jù)庫,就想到可能有點(diǎn)困難。但其實(shí)我想說這種擔(dān)憂是多余的,因?yàn)轫椖空w來說還是挺簡單的,我在 B 站也錄制了幾期視頻,專門來講解這個項目,你可以跟著視頻來理解,就不會覺得很困難了。

你可以在 B 站搜索 roseduanV 或者點(diǎn)下面的鏈接訪問:

目前為止,其實(shí)這個項目還非常的不完善,我設(shè)想的很多功能都還沒有實(shí)現(xiàn),在項目的 TODO 列表中,你可以看到很多待實(shí)現(xiàn)的功能。

熟悉了這個項目之后,你可以嘗試著挑一個自己感興趣的 TODO 寫一下,成為這個項目的 Contributor。

當(dāng)然在研究這個項目的時候,你也可以參考一些其他的優(yōu)秀的數(shù)據(jù)庫,例如 redis、leveldb 等,翻一下源碼,看看別人都是怎么實(shí)現(xiàn)的,這樣對你來說是非常寶貴的探索經(jīng)驗(yàn)。

例如我寫這個項目的時候,就看了一些 redis 的源碼,這讓我對 redis 的底層實(shí)現(xiàn)有了更多的了解,并且還學(xué)習(xí)到了 redis 的一些優(yōu)化代碼的技巧,希望我的這個項目只是為你打開一扇門,而門后的精彩世界,需要你靠著好奇心自己去探索。


使用 Go 實(shí)現(xiàn)一個簡單的 k-v 數(shù)據(jù)庫的評論 (共 條)

分享到微博請遵守國家法律
汉川市| 蓬溪县| 钦州市| 通州市| 铜山县| 张掖市| 南安市| 襄樊市| 淄博市| 清流县| 淅川县| 桃园市| 东山县| 洛阳市| 嘉禾县| 宕昌县| 神池县| 平果县| 天祝| 连平县| 太原市| 齐河县| 腾冲县| 宁明县| 宁波市| 邵东县| 苍溪县| 白山市| 江山市| 青阳县| 武汉市| 依安县| 衡山县| 玉屏| 锡林郭勒盟| 股票| 徐闻县| 兴仁县| 耒阳市| 涿州市| 武汉市|