框架應用中如何更好地解決問題

2021-08-21 20:55:12 字數 1421 閱讀 7173

現代應用開發中或多或少會使用到各種開源,自研的庫,框架等,各種資料良莠不齊,

除了部分成熟開源,商業框架的文件做得很好,使用廣泛,生態完整,的確很多問題可以處理。

但自研的通常就是重災區,資料少,不同步,

那麼如何在這類這類框架中找到問題處理的方向,甚至解決方案呢?

昨天幫同事處理了乙個uee框架使用的問題,可做借鑑。

1.對框架有個基本了解,例如框架的大體結構,層次,work流程。

對於各個部分如何work這塊我認為是很關鍵的,

例如以安全界大哥大struts2為例,理解乙個action的生成,要配置哪些檔案,

這些檔案怎麼配合,生效路徑是怎樣的,和其他框架如spring怎麼結合,

整個過程可以能在腦子裡放電影式過一遍,當然能高畫質就最好了。

這個主要是建立框架的使用模型,方便和其他框架進行模擬,解決一些基本的使用問題,

並為後續深入打好基礎。

2.了解框架的實現原理,假設你有開啟uee對應的生成件指令碼檔案,

就會發現裡邊有5w行js,連ide都會卡頓一下,怎麼破?其實還是有門路的,因為uee是基於ng1的框架,

這個檔案裡邊有一大半是jq和ng1的**,後面部分才是擴充套件功能。

所以掌握ng1的框架原理至關重要,例如dirty check,directive這些黑科技,

以昨天的問題為例,就是直接進到對應directive的實現中,對比行為差異,

最後可以發現多配置乙個引數就可以解決問題。

理解關鍵特性的實現原理,這樣在除錯驗證過程中才心裡有底,不會瞎矇。

3.工欲善其事,必先利其器,熟練掌握各種工具,小到除錯技巧,大到各種輔助工具。

除錯技巧,例如上面的問題除錯,一次觸發會數十次call,乙個個檢視很容易miss target,這個時候就應該用條件斷點。

類似的技巧還有異常斷點(查詢某個特定異常),賦值(改變執行路徑)等。

如果大段**不知**有bug,可以兩分搜尋,在斷點處驗證正確性。

除錯不是用來找bug的,它只是驗證的過程中順手找到bug。

至於輔助工具,反編譯工具,抓包工具,各種shell命令,指令碼語言,技多不壓身,總有合適的。

4.注意積累,適時總結。很多人不是厲害,只是踩坑多而已。

所以還是要多填坑,多填別人的坑,這樣就顯得很厲害了,填坑機會就更多了,這是個良性迴圈。

當然萬事開頭難,一開始還是要注重程式設計規範學習,看點書,

遇到問題的時候多找找資料,爭取系統的過一下相關知識點。

例如你今天遇到了classdefnotfoundexception,問題解決了,

那麼就看看這種異常有哪些情況下會出現,怎麼避免,和其他相關異常有什麼區別?

可能有很多人已經知道了,寫出來很low,但做一下總結總是有好處的,日積月累,做好填坑的準備是關鍵。

書寫節奏有點亂,非喜勿噴。今日@廣州地鐵。

如何解決問題

最近打算去新的崗位,嘗試新的業務,當然也就需要新的思考,新的碰撞,想起前段時間看過溫伯格1982年出版的 你的燈亮著嗎?把序言中的總結點摘錄下來,希望能給自己帶來些許思路。問題其實就是你期望的東西和你體驗的東西之間的差別。動手去解決問題之前,好好想想問題的 如何站在各個角度來看待面臨的問題,以能夠知...

如何解決問題

很多時候只是解決問題的表象,即來乙個問題處理了,但並沒有歸因,找到更深層次的根本矛盾。如乙個專案比其他專案問題更多,更不可控,如果只是列出所有的問題逐個解決處理,只是在解決問題本身,並沒有定位根本原因。根本原因是專案難度更大?專案成員表現 狀態不好?根據根本原因如何處理。為了解痛點和原因,需全面評估...

Web應用中的路徑解決問題

在開發 的時候 經常遇到一些 路徑問題。比如 子資料夾下的檔案要引用上級目錄中另乙個子資料夾的東西。或者是因為巢狀頁面導致 原頁面中的 資訊等資源因為路徑錯誤而找不到 有以下解決辦法 string path request.getcontextpath 工程路徑 string basepath re...