『No16: 如何快速熟悉一個項目』

image.png

大家好显沈,我叫謝偉魔慷,是一名程序員喉誊。

最近比較忙片挂,一方面是換工作闷愤,一方面是熟悉新的環(huán)境。一言難盡。

今天的主題:如何快速熟悉一個項目

之所以講這個話題,主要是最近新入職,因為是創(chuàng)業(yè)公司,不像大公司里的節(jié)奏,給你時間學習,創(chuàng)業(yè)公司需要你快速的融入環(huán)境释移,快速的熟悉業(yè)務代碼涩蜘,快速的實現需求误窖。坦率的講毒费,能力不足的時候會給你帶來焦慮。

綜合下來,當下,我還是喜歡創(chuàng)業(yè)型公司。


所以,我就遇到里這個問題,入職三天,第一天就開始分配任務,好在完成了需求窃款,雖然需求不是很復雜紊扬。但是快速熟悉了項目卵凑,切入進了項目內。

我把自己的方法整理出來冠绢,希望對大家有幫助萧朝。

主要是后端代碼為例

1里逆、具備最小知識集

這一點主要說明的是,你應該要有些基礎署隘,寫過些代碼阿弃,不管是自己私底下接觸,還是仿照別人的例子棺蛛,你大概要熟悉一門編程語言,知道后端大概會接觸些什么技術。

  • 數據庫操作

在這之前子寓,你要會用一種類型的數據庫,不需要精通也殖,初級的知道CURD 其實都還OK址愿,但是這樣的水平可能會讓你寫的代碼或者設計的業(yè)務比較不堪,所以辐烂,關于數據庫盡量需要知道更多的知識辰妙,比如數據庫的三大范式呆瞻,索引赞赖、外鍵移宅、主鍵、數據庫關聯等

  • 編程語言

不管實際上你入手的項目是不是你熟悉的編程語言,至少你要熟悉一門編程語言,假如你要熟悉的項目的編程語言剛好是你會的包帚,那么你熟悉起來當然是更得心應手了瓮床。假如不是你熟悉的編程語言兼丰,其實也都好OK,因為我見過許多程序員,編程語言都不是最重要的谐丢,只要熟悉了一門蹄葱,這種技能遷移的能力帕翻,在程序員屆實在是太常見了歇万。

  • API

知道 http 請求的主要過程,知道 http 的動作泳赋。

看得懂API:方法筹燕、參數泵三、響應值弛饭。

更高一點的需求,會用 swagger 編寫 API

...

初級的后端技術就這些東西吧气堕。

2畔咧、跑通代碼

跑通代碼意味著你大概能知道這個項目最后的結果是咋樣的誓沸。

比如說這是一個后臺管理系統(tǒng),你可以看API 文檔,大概知道提供哪些接口垦页。

假如又提供了前端干奢,那更好,你可以看看網站宋光,網頁點擊點擊罪佳,看看網絡請求是調用的哪個API. 觸發(fā)的動作是什么赘艳,響應又是什么克握。

跑通代碼菩暗,你可能也可以看到停团,整體的部署流程是什么樣的掏熬,比如如何部署的旗芬?容器捆蜀?鏡像辆它?最后又是如何自動的部署到服務器上的娩井?

假如代碼沒跑通,那么你可能依賴沒搞好洞辣,或者設置沒搞好扬霜,或者需要走的步驟你沒執(zhí)行著瓶?

總之材原,跑通代碼很重要余蟹。

相同的道理威酒,有時候,你使用某個開源項目担钮,某個具體的用法文檔上寫的不是很清楚箫津,這個時候有可能你需要看看開源項目的測試文件,有可能你只是摘抄幾個測試文件中的函數送挑,自己運行起來,再修修改改纺裁,然后你可能就搞懂了具體怎么用了栋豫。

3、項目使用里哪些第三方庫谚殊、結合官方文檔使用第三方庫

  • 絕大多少項目都需要依賴已有的成熟的第三方庫:節(jié)省時間成本

跑通代碼這一步丧鸯,應該就已經會有下載第三方庫的步驟了。

這些第三方庫嫩絮,不需要你使用的非常6丛肢, 你只需要知道如何使用即可。怎么知道如何使用剿干?

1蜂怎、看官方文檔
2、看不懂就Google 搜一搜能看懂的例子置尔,但只是作為輔助手段杠步,最主要的還是文檔
3、拷貝文檔例子榜轿,自己實驗下幽歼,發(fā)現問題,有時候你看到的以為會,其實不一定真會犀被,讓代碼跑起來很重要
4、換個例子员舵,結合自己的歷史經驗和現有的文檔注服,看看能不能換個例子再實現一下,能不能更優(yōu)化了你之前的想法鸭你,提供了更好的解決方案

4瓣窄、梳理項目結構

項目結構劝贸,講究的是如何組織的代碼層級結構瞎颗,體現在最終的效果上就是代碼文件是如何組織的了。

我之前非常崇尚領域驅動 DDD

項目的組織也一度按照的是 DDD 的指導思想:

  • Domain 領域層
  • Infra 基礎設施層
  • UI 用戶UI 層
  • Application 應用層

不過當然不是所有的項目都和你想象的一樣,受歷史的原因粉怕,項目的組織結構往往受第一個寫這個代碼的人的影響蛉谜,一定程度上反應了第一個寫這份代碼的人的編程風格筑辨。

好,這里當然不是講述個人編程風格問題。

好的項目組織:

  • 好看:

這是第一印象,什么叫好看呢?項目組織清晰,一看就知道,哪部分是干什么的,實現了什么樣的功能。

  • 可拓展:

特別是作為一個初始階段的項目,會頻繁變動歉嗓,這個時候拓展性带膀、可維護性的項目一定會給你解決掉諸多的問題敛纲。

  • 低耦合

即相互之間的依賴少佩谷,即可實現功能稚补。低耦合性對于不斷變更的需求的初始項目來說,爽的一筆。

總之润绎,就算你不熟悉具體的代碼內實現什么樣的功能撬碟,僅僅看項目結構,你大概也能猜出來這個文件內的代碼大概是實現什么惶傻。對我來說,這就是好的項目組織結構否过。

假如遇到的項目組織驼卖,確實不是上文講的那么優(yōu)雅催烘,那怎么辦?

  • 你確定需要待這家公司缎罢?確定伊群。好考杉,你的機會來了。你可以進行重構舰始。重構意味著你對代碼需要非常熟悉崇棠。假如你有這個任務,相信我蔽午,你能熟悉這個項目的易茬。

好,這節(jié)主要是梳理項目的組織及老,知道哪塊負責什么任務抽莱。

可能光看還不容易明白,不利于思維的呈現骄恶。那怎么辦食铐?

  • 筆記本上寫寫畫畫,流程圖搞起來
  • 思維導圖畫起來

假如還是不懂僧鲁,那怎么辦虐呻?

兄dei, 問問會的人羅。

面子是最不值錢的玩意寞秃,不懂就問

5斟叼、仿照項目實現另一需求

簡單的說

  • 仿照或者優(yōu)化項目結構
  • 借用相同的技術棧,自己尋找類似的例子春寿,從頭到尾的實現:自己設計朗涩、自己編碼、自己測試绑改,體量可以比真實的項目小很多谢床,但核心的功能還是要實現,數據量不一定相當厘线。一句話說:麻雀雖小识腿、五臟俱全
  • 講出來:結合你自己實現的這個需求,編碼完成之后造壮,講出來渡讼,相信我,會對你有好處的耳璧。

好硝全,本節(jié)大概這樣,最重要的是第五條楞抡。

再會伟众,我是謝偉。

?著作權歸作者所有,轉載或內容合作請聯系作者
  • 序言:七十年代末召廷,一起剝皮案震驚了整個濱河市凳厢,隨后出現的幾起案子账胧,更是在濱河造成了極大的恐慌,老刑警劉巖先紫,帶你破解...
    沈念sama閱讀 207,248評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件治泥,死亡現場離奇詭異,居然都是意外死亡遮精,警方通過查閱死者的電腦和手機居夹,發(fā)現死者居然都...
    沈念sama閱讀 88,681評論 2 381
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來本冲,“玉大人准脂,你說我怎么就攤上這事∶识矗” “怎么了狸膏?”我有些...
    開封第一講書人閱讀 153,443評論 0 344
  • 文/不壞的土叔 我叫張陵,是天一觀的道長添怔。 經常有香客問我湾戳,道長,這世上最難降的妖魔是什么广料? 我笑而不...
    開封第一講書人閱讀 55,475評論 1 279
  • 正文 為了忘掉前任砾脑,我火速辦了婚禮,結果婚禮上艾杏,老公的妹妹穿的比我還像新娘韧衣。我一直安慰自己,他們只是感情好糜颠,可當我...
    茶點故事閱讀 64,458評論 5 374
  • 文/花漫 我一把揭開白布汹族。 她就那樣靜靜地躺著萧求,像睡著了一般其兴。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上夸政,一...
    開封第一講書人閱讀 49,185評論 1 284
  • 那天元旬,我揣著相機與錄音,去河邊找鬼守问。 笑死匀归,一個胖子當著我的面吹牛,可吹牛的內容都是我干的耗帕。 我是一名探鬼主播穆端,決...
    沈念sama閱讀 38,451評論 3 401
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼仿便!你這毒婦竟也來了体啰?” 一聲冷哼從身側響起攒巍,我...
    開封第一講書人閱讀 37,112評論 0 261
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎荒勇,沒想到半個月后柒莉,有當地人在樹林里發(fā)現了一具尸體,經...
    沈念sama閱讀 43,609評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡沽翔,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 36,083評論 2 325
  • 正文 我和宋清朗相戀三年兢孝,在試婚紗的時候發(fā)現自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片仅偎。...
    茶點故事閱讀 38,163評論 1 334
  • 序言:一個原本活蹦亂跳的男人離奇死亡跨蟹,死狀恐怖,靈堂內的尸體忽然破棺而出哨颂,到底是詐尸還是另有隱情喷市,我是刑警寧澤,帶...
    沈念sama閱讀 33,803評論 4 323
  • 正文 年R本政府宣布威恼,位于F島的核電站品姓,受9級特大地震影響,放射性物質發(fā)生泄漏箫措。R本人自食惡果不足惜腹备,卻給世界環(huán)境...
    茶點故事閱讀 39,357評論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望斤蔓。 院中可真熱鬧植酥,春花似錦、人聲如沸弦牡。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,357評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽驾锰。三九已至卸留,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間椭豫,已是汗流浹背耻瑟。 一陣腳步聲響...
    開封第一講書人閱讀 31,590評論 1 261
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留赏酥,地道東北人喳整。 一個月前我還...
    沈念sama閱讀 45,636評論 2 355
  • 正文 我出身青樓,卻偏偏與公主長得像裸扶,于是被迫代替她去往敵國和親框都。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 42,925評論 2 344

推薦閱讀更多精彩內容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 171,527評論 25 707
  • 1呵晨、通過CocoaPods安裝項目名稱項目信息 AFNetworking網絡請求組件 FMDB本地數據庫組件 SD...
    陽明先生_x閱讀 15,968評論 3 119
  • 文:代大鴻 在之前的時間里魏保,志愿者工作只在電視和網絡上見過蔗蹋,今天有幸第一次參加了園區(qū)黨工委組織的“創(chuàng)文城市...
    殼殼巷閱讀 281評論 0 0
  • 記得剛剛上大學的時候那個激情澎湃猪杭,暗暗告訴自己,畢業(yè)一定要干一番事業(yè)妥衣,混出個人樣兒來皂吮。最起碼有有兩個底線不能逾越,...
    基礎繪畫社閱讀 287評論 3 1
  • 1.回鄉(xiāng)記(一) 施璇 第二天整個人好了些税手,頭不怎么疼了蜂筹,便也就恢復那股精神氣,到處去...
    聽語堂閱讀 905評論 0 3