摘要:未雨綢繆方能在關(guān)鍵時(shí)刻拯救自己開(kāi)源這個(gè)項(xiàng)目的另一個(gè)緣由是有些事我都已忘記,但我現(xiàn)在還記得,在一個(gè)晚上,同事阿左問(wèn)我,今天怎么不開(kāi)心。由于情況緊急,我選擇求助于同在加班的阿左,沒(méi)想到,阿左居然在項(xiàng)目閑時(shí)自己封裝了一個(gè)庫(kù)。
前言很高興和大家見(jiàn)面!
上周五我在掘金發(fā)表了 《真香警告:即使不用餓了么訂餐,也請(qǐng)務(wù)必收藏好該庫(kù)!》,文中主角 Linkage-RecyclerView 原本只是為 《RxJava魔法師》 這個(gè)項(xiàng)目的需求而存在的,沒(méi)想到在各路讀者的積極參與下,讓一個(gè)本來(lái)默默無(wú)聞的項(xiàng)目,在內(nèi)容發(fā)布的第三天,登陸 GitHub 今日趨勢(shì) Java 專(zhuān)區(qū)榜單前三,并在 5 天內(nèi)做到 GitHub star 從 0 飆至 666。(不要慌,項(xiàng)目鏈接文末已給出)
在此我首先特別感謝熱心讀者的見(jiàn)證和參與。掘金社區(qū)、WanAndroid 讀者對(duì)源碼的認(rèn)真閱讀和交流,讓我備受感動(dòng)。
開(kāi)源這個(gè)項(xiàng)目的初衷開(kāi)源這個(gè)項(xiàng)目的初衷有兩個(gè),一個(gè)是方便讀者借助該項(xiàng)目深入理解,當(dāng)我們?yōu)轫?xiàng)目選擇架構(gòu)時(shí),選材的依據(jù)是什么。
就我當(dāng)前的認(rèn)知來(lái)看,項(xiàng)目開(kāi)發(fā),無(wú)非就是顧及 “配置解耦” 和 “職責(zé)分離” 這兩件事。
對(duì)于通用必用的控件庫(kù)和組件庫(kù),我們可以將其抽取成模塊,做成可供多個(gè)項(xiàng)目依賴(lài)的第三方庫(kù)。
第三方庫(kù)的目標(biāo)是讓使用者無(wú)需了解內(nèi)部邏輯、通過(guò)外部簡(jiǎn)單的配置即可輕松上手,因而第三方庫(kù)適合使用 MVP 架構(gòu),來(lái)實(shí)現(xiàn) “配置解耦”。
對(duì)于多人參與的主干工程,我們需要確保 UI 和 業(yè)務(wù)之間可以分工給不同的人協(xié)作,這就要求架構(gòu)必須具備 “關(guān)注點(diǎn)分離(SoC)” 或 “職責(zé)分離(SoD)” 的特性。
因而我們可以在主干工程中采用目前主流的關(guān)注點(diǎn)分離架構(gòu) JetPack MVVM,或者由我自主設(shè)計(jì)并在公司項(xiàng)目重構(gòu)中采用的職責(zé)分離的 VIABUS Architecture。
開(kāi)源這個(gè)項(xiàng)目的另一個(gè)緣由是:
有些事我都已忘記,
但我現(xiàn)在還記得,
在一個(gè)晚上,
同事阿左問(wèn)我,今天怎么不開(kāi)心。
...
我說(shuō)在我的想象中,有一個(gè)開(kāi)源庫(kù),
與眾不同最時(shí)尚,接入肯定棒,
整個(gè) GitHub 找遍所有的 Repo,都沒(méi)有。
他說(shuō)將來(lái)會(huì)找到的,
時(shí)間,時(shí)間,會(huì)給我答案。。
哈哈,開(kāi)玩笑的。緣于,公司某個(gè)項(xiàng)目中的另一個(gè)需求:為多級(jí)聯(lián)動(dòng)表單動(dòng)態(tài)綁定數(shù)據(jù)。
用過(guò) Spinner 的讀者都知道,原生的 Spinner 在 onSelectItem 回調(diào)中存在延遲的 bug,雖然延遲只有 100ms,但對(duì)于哼哧哼哧地裝載、綁定、協(xié)調(diào)表單數(shù)據(jù)的多級(jí)聯(lián)動(dòng)表單來(lái)說(shuō),實(shí)在是致命的錯(cuò)誤。
因而在那天晚上加班改需求的時(shí)候,我非常盼望著找到一款當(dāng)下就可以使用的 PopupWindow + RecyclerView 實(shí)現(xiàn)的第三方 Spinner 開(kāi)源庫(kù)。
然而,現(xiàn)實(shí)卻和我開(kāi)了個(gè)大玩笑,我尋遍了 GitHub 倉(cāng)庫(kù),嘗試了若干個(gè)項(xiàng)目,都是隨便糊弄兩下、高度耦合的個(gè)人練手項(xiàng)目,這對(duì)于急著改需求的我來(lái)說(shuō),無(wú)異于火上澆油。
由于情況緊急,我選擇求助于同在加班的阿左,沒(méi)想到,阿左居然在項(xiàng)目閑時(shí)自己封裝了一個(gè) Spinner 庫(kù)。
雖然一眼望去,Adapter 三方邏輯的解耦程度還有待提高,但這個(gè)庫(kù)既然能獨(dú)立存在、通過(guò)幾行代碼即可調(diào)用,對(duì)于彼時(shí)的我來(lái)說(shuō),就已經(jīng)是最豐盛、最美的食物。
于是我毫不猶豫地將該庫(kù)用在了項(xiàng)目上,在幾經(jīng)嘗試后,表單初始化數(shù)據(jù)終于如愿地正常加載。
如何在 5 天內(nèi)使 GitHub star 從 0 飆到 666最后總結(jié)一下大家都關(guān)心的,如何讓自己的作品能被更多地訪問(wèn)、讓 GitHub Star 數(shù)一路爬升:
———— 向用戶(hù)提供價(jià)值。
什么是價(jià)值?人們對(duì)一件事物有需求,這件事因而有了價(jià)值。
人們有什么需求?人們面臨著什么困境?這是每個(gè)想要服務(wù)于大眾的人都要首先考慮明白的。
換言之,我們所做的每一件事,都務(wù)必精準(zhǔn)地化解目標(biāo)用戶(hù)的痛點(diǎn),唯有如此,才有機(jī)會(huì)在紛雜的信息中脫穎而出,讓作品受到用戶(hù)的青睞和珍視。
每個(gè)人服務(wù)的領(lǐng)域不同、目標(biāo)用戶(hù)也不同,因而用戶(hù)痛點(diǎn)需要自己在日常生活中投入大量精力去思考和領(lǐng)悟,這也是為什么文章我一周最多只更新一篇的原因。
在 Linkage-RecyclerView 開(kāi)源的短短幾天里,我累計(jì)提交了 49 次代碼、多達(dá) 9k 行的代碼變動(dòng)。
用戶(hù)不是傻子,代碼是好是壞,一眼就能看出來(lái)。唯有一絲不茍地對(duì)待工程設(shè)計(jì)和編碼,才有機(jī)會(huì)讓用戶(hù)感到確定和安心。
想讓精心打磨的作品讓更多的用戶(hù)接觸到,就要勇于在社交場(chǎng)合展示自己的價(jià)值。產(chǎn)品最終都是服務(wù)于人,務(wù)必多與用戶(hù)溝通,讓產(chǎn)品和個(gè)人品牌往更好的方向發(fā)展。
當(dāng)然,口說(shuō)無(wú)憑,以下貼上 別處看不到的、且大家喜聞樂(lè)見(jiàn)的 群聊學(xué)(chui)習(xí)(shui)交流截圖:
考慮到我在技術(shù)社區(qū)發(fā)文,應(yīng)以技術(shù)分享和經(jīng)驗(yàn)交流為主。想一睹群聊現(xiàn)場(chǎng)的朋友,請(qǐng)移一步到我的同名公眾號(hào)閱讀原文~
GitHub 項(xiàng)目鏈接:github.com/KunMinX/Lin…
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://m.hztianpu.com/yun/7037.html
摘要:未雨綢繆方能在關(guān)鍵時(shí)刻拯救自己開(kāi)源這個(gè)項(xiàng)目的另一個(gè)緣由是有些事我都已忘記,但我現(xiàn)在還記得,在一個(gè)晚上,同事阿左問(wèn)我,今天怎么不開(kāi)心。由于情況緊急,我選擇求助于同在加班的阿左,沒(méi)想到,阿左居然在項(xiàng)目閑時(shí)自己封裝了一個(gè)庫(kù)。 前言 很高興和大家見(jiàn)面! 上周五我在掘金發(fā)表了 《真香警告:即使不用餓了么訂餐,也請(qǐng)務(wù)必收藏好該庫(kù)!》,文中主角 Linkage-RecyclerView 原本只是為 ...
摘要:是為結(jié)果導(dǎo)向型人群開(kāi)設(shè)的深度學(xué)習(xí)在線課程。但是最關(guān)鍵的是,我想通過(guò)構(gòu)建簡(jiǎn)單的深度學(xué)習(xí)解決方案來(lái)實(shí)現(xiàn)理論和實(shí)踐的相結(jié)合。我的目標(biāo)是在一天結(jié)束前進(jìn)入排名的前。我的時(shí)間都用于學(xué)習(xí)庫(kù)組織數(shù)據(jù)和評(píng)估結(jié)果都是一些與深度學(xué)習(xí)無(wú)關(guān)的簡(jiǎn)單流程。 Fast.ai是Jeremy Howard為結(jié)果導(dǎo)向型人群開(kāi)設(shè)的深度學(xué)習(xí)在線課程。我讀過(guò)很多關(guān)于機(jī)器學(xué)習(xí)的書(shū),也參加過(guò)不少這方面的課程,但我認(rèn)為Fast.ai是迄今為...
摘要:作者小魚(yú)干機(jī)械臂可能在醫(yī)療劇中看過(guò),可以用來(lái)執(zhí)行一些精細(xì)化的操作,例如縫合之類(lèi)的。地址周榜新編程語(yǔ)言本周增長(zhǎng)數(shù)一種正在開(kāi)發(fā)中的編譯型編程語(yǔ)言。地址資源監(jiān)控本周增長(zhǎng)數(shù)它是一個(gè)自托管的監(jiān)控工具,類(lèi)似于。 .markdown-body{word-break:break-word;line-height:1.75;font-weight:400;font-size:15px;overflow-x:...
閱讀 847·2023-04-25 19:43
閱讀 4115·2021-11-30 14:52
閱讀 3930·2021-11-30 14:52
閱讀 4027·2021-11-29 11:00
閱讀 3921·2021-11-29 11:00
閱讀 4039·2021-11-29 11:00
閱讀 3768·2021-11-29 11:00
閱讀 6606·2021-11-29 11:00