項目代碼調試:提問前要做的六個步驟
出版:2017-07-24
上天對於每個地球人都是公平的,每個人都一天只有 24 小時。為什麼有的人會停留不前,有的人卻會不斷有所成長?其中一個原因是當遇到問題時,他們解決問題的方法是非常不同的。同樣是遇到問題,與其伸手,等其他程序員幫助去解決問題,倒不如自己先嘗試各種方法,然後才問人家。。。我會在這篇文章簡單說一下在你提問之前,你可以做的六個步驟。
如果你是和其他人一齊開發項目的話,可能你會遇到 packages 安裝報錯的問題,這個時候,你應該試試安裝 packages,例如npm install
,把現有項目的 packages 更新一下,可能現有的 packages 已經不是最新的,或者有所缺乏。
另外,你也可以看一下你自己的 npm 和 node 版本,是否因為版本號太低,而導致無法安裝某些 packages。如果是的話,請先確定是否需要用那麼新的 package 版本,然後再更新 node 版本。
問題就是答案,其實你直接在搜尋引擎搜尋,就會找到這些問題的解決方法。如果你問我一些技術的問題,我很可能會直接叫你 Google,因為有時候第一個搜尋結果就是你的答案。如果你已經找過,但是找不到的話,很大機會是你的搜尋字不對,你可以加一下你的項目的 package,比如說 把 react, bootstrap 等字眼加在搜尋裡面。
先閱讀 Github 上面的 README.md,然後閱讀官網上對於該項目的簡介,使用方法,再看 API。你可以再看一次 Github Repo 的說明,看看有沒有自己沒注意到的地方。你也可以直接進入官網,然後看它對於各個方法,變量的說明。如果你看不到你想要的方法,你可以返回第二步,Google 一下。
如果你還是搜不到的話,看看人家有沒有遇到類似的問題,並從中獲取靈感。
有時候,開源項目的作者寫得比較匆忙,急著都沒有寫好文檔,以及測試代碼。這個時候,你直接看上面的代碼吧。。。
如果是部署在 Github 上面的話,可以使用在線代碼搜尋插件,比如說 Insight.io for Github。如果你已經把它 clone 下來的話,可以使用流行的編輯器進行全局搜尋,例如 Atom,Sublime。
另外,你也可以使用 lambda-view,閱讀 JavaScript 源代碼時,這個很好用的。
如果你看了網上的解決方法,但覺得無從入手的話,出去走一走,喝一口水,讓大腦休息一下。有時候,我上午想不到的問題,吃個午餐,然後下午就想到解決方法了。
如果你做了以上的步驟,還是沒有辦法解決問題的話,你可以去 Repo 的 Issue 上面說一下,先不要直接說我找到一個 bug。。。
感覺很長時間沒有寫博客了,文筆開始生疏。這一篇文章寫的時間比以前長,可能我要努力一點才行。。。
Calpa 是一個四天工作的系統架構師,日常幫助客戶構建一站式網站應用,手機應用,雲端架構。
2023 年 9 月,Calpa 收到來自國內外不同 Web3 團隊的邀請,參加韓國的 KBW 2023 和新加坡的 TOKEN 2049 活動。十二月份,Calpa 將參加台北區塊鏈週的 Hackathon 比賽。
Calpa 擅長運用各種前沿技術,包括 TypeScript、React.js 和 Vue.js,開發具有 Responsive Web Design 的網站。另外,他透過運用 aws-cdk 和 TypeScript 技術的融合,實現了基於雲端的「基礎即代碼」(Infrastructure as Code)部署策略,建立了多套高效且具有可伸縮性的全端架構。
同時,Calpa 積極參與各個社群,活躍於香港和台灣的開源社區,分享前沿知識。他曾在 2019 年的香港開源大會中擔任重要講者,為聽眾提供寶貴的工作經驗和深刻見解。此外,Calpa 在 GitHub 上公開分享了個人博客程式碼,已獲得超過 300 顆星星和 60 個分支。
如果您對系統架構有任何問題,或需要進一步交流,請隨時聯絡 Calpa,他非常歡迎討論。