11月的收穫與體會

自我學習

學習清單

  • 1、看完極客時間劉超老師的趣談網絡協議
  • 2、看完《深入理解Java虛擬機》
  • 3、學習CountDownLatch源代碼
  • 4、學習Java的併發知識

1、看完極客時間劉超老師的趣談網絡協議

在印象筆記做了每章小結的記錄

2、看完《深入理解Java虛擬機》

在百度腦圖做了筆記

3、學習CountDownLatch源代碼

輸入博客一篇CountDownLatch的使用與解析

4、學習Java的併發知識

推薦閱讀 Java併發編程,你需要知道的

遇到的問題

1、Retrofit/RxJava2如何優雅處理錯誤,比如需要解析錯誤的responsebody

解決方法:

(1)在Observer的onError處理:

public void onError(Throwalbe e) {
       BaseView view = weakReference.get();
       if(e instanceof HttpException) {
          ResponseBody responseBody = ((HttpException) e).response().errorBody();
          view.onUnknowError(getErrorMessage(responseBody));
       } else if (e instanceof SocketTimeoutException) {
          view.onTimeout();
       } else if (e instanceof IOException) {
          view.onNetworkError();
       } else {
          view.onUnknowError(e.getMessage());
       }
} 

(2)可以使用onErrorResumeNext解決

參考 Responses/Errors with Retrofit 2 & RxJava2

Demo

2、引入第三方庫時,在編譯過程中,報了aapt.exe(finished with non-zero exit value 1)異常問題

解決方法:
aapt.exe異常是指編譯資源時的異常,可以把自己的build.gradle的compileSdkVersion和buildToolsVersion提高,兼容第三方庫。

擴展:compileSdkVersion是APP編譯過程中使用的版本
targetSdkVersion是APP的目標 API 版本,指你已測試APP兼容的版本,手機系統不再使用向前的兼容版本
minSdkVersion 指定APP運行所需最低 API 版本,手機系統小於這個版本不安裝。

收穫體會

1、對自己提高要求,採用更高級的方式去實現需求,雖然會遇到困難,但這是自己技術成長的必經之路。

例如,以前都是線程池處理異步,現在對自己提高要求,採用RxJava,同時結合到Retrofit中,提高開發能力。

2、堅持TODOList,預估需要的時間。

3、在Dialog中使用ConstraintLayout容易出現UI不完整問題,尤其使用wrap_content,可以外部使用match_parent,內部做居中處理,

有鏈式可以嘗試使用app:layout_constraintVertical_chainStyle=“packed”

4、多問自己幾個爲什麼
比如爲什麼class文件編譯成dex文件,因爲dex文件去除了class文件結構中冗餘的設計,更加精簡,適合於運用在移動端。

轉變思維方式 >> 業務範圍外的技術應用

量化目標,少用形容詞

聰明反被聰明誤、雖然自己不感覺是在找藉口,實際是在找藉口,需要正視問題所在(多問自己幾個爲什麼,可以量化而不是形容詞)

待改進的地方

1、更合理預估TODO List的時間,以後與人合作開發的需求需要預估更多時間,這裏新增成本有溝通成本,理解代碼成本。

2、積累經驗,提高預估時間的準確性。有些預估不夠準確,比如埋點,4個埋點預估1h,簡單還可以,但有一個埋點錯誤情況太多,需要多點時間,另外特殊情況,埋點表有問題,也需要時間跟產品溝通。再另外,有些沒有預估到,比如跟QA、產品溝通時間。

3、提高學習的時間,記住自己想要什麼,你想要進步,就需要付出更多,排好優先級,把寶貴的時間花在更重要的事情上。

4、評估好事情的優先級,提高自己的執行力。需要分清楚優先級,臨時出現的事情,如果優先級不高,那麼放在後面。

5、克服自己的惰性。一是清楚自己想要什麼,比如成爲高級工程師,那麼你需要付出更多時間在學習技術上,提高自己的技術水平;二是養成一些好的習慣,比如晚上固定時間學習,週末固定時間輸出一篇博客,好的習慣就如吃飯慣性一樣,讓自己本能去做事。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章