成長月記| 2019年8月

**很久不見!在七月底辦理入職以後連着好幾周的培訓,這纔開始步入正軌,打算以新的形式去記錄工做生活的所學所想,暫且想到下面幾個模塊,接下來就是做爲正式鵝的第一個月總結啦!前端

┄┅┄┅┄┅┄┅┄┅┄┄┅┄┅┄┅┄┅算法

👩🏻‍💼釐米姑娘 de 加油站:不斷查缺補漏⛽️數據庫

👩🏻‍💼釐米姑娘 de 讀書角:繼續讀書之旅📖設計模式

👩🏻‍💼釐米姑娘 de 當心情:所見所聞所想❤️緩存

👩🏻‍💼釐米姑娘 de 照片冊:定格美好時刻🎑安全

┄┅┄┅┄┅┄┅┄┅┄┅┄┅┄┄┅┄┅**網絡


PART ONE——加油站

列一些知識點,主要仍是經過連接形式拓展和補充~架構

1.BUG彙總:app

2.Android應用的啓動方式:框架

3.分享一些大佬在編寫代碼總結的注意事項,對於還沒什麼實戰經驗的小白頗有用~

  • UI

    • 先後臺切換、橫豎屏切換時的邏輯是否正常,尤爲UI有輪詢邏輯的
    • 適配問題,好比劉海屏手機是否存在UI遮擋
    • 切換中英文時注意外文是否能完整顯示
    • 切圖資源的尺寸和大小問題
    • .9圖拉昇效果是否正常,包括padding區域
    • 對齊類UI建議優先使用約束性佈局,而不是多套一層Layout
    • 開啓手機開發者權限,確認是否有過分繪製,是否有頻繁掉幀
    • SurfaceView和TextureView不能混用重疊,會致使黑屏
  • 動畫

    • 動畫執行時長是不可靠的,不要特別依賴
    • 核心邏輯不要依賴System.currentTimeMills作時間判斷,是可能人爲改變的
    • 若是隻是計算時間差值建議用SystemClock.elapsedRealtime()
    • 複雜動畫建議用屬性動畫,用AnimatorSet的話可能會出現卡頓現象
  • Intent

    • 啓動第三方Activity,先判斷該Intent可否被解析或者加上try,不然可能出現ActivityNotFoundException
    • 四大組件設置exported屬性爲true時要考慮是否會引起安全性問題:被繞過驗證頁面?致使拒絕服務漏洞?
    • Intent傳遞的數據過大會致使頁面跳轉過慢,建議用持久化形式
  • Looper:使用View.post()要注意View一旦沒有attached任務可能永遠不會執行

  • Debug:日誌打印避免使用String.format(),建議直接使用+或append,性能有10倍的差別

  • 線程:加鎖避免範圍過大、尤爲注意臨界區代碼、複用線程池

  • 進程

    • Application生命週期裏的代碼,要考慮子進程是否須要執行
    • 用AIDL最好加上oneway標識,用callback方式回調,防止進程間阻塞
    • 善用RemoteCallbackList,防止註冊之後沒法反註冊問題
    • 基於Service的跨進程服務首次調用一般會失敗,能夠考慮用任務緩存隊列或ContentProvider代替
    • 不建議使用廣播作跨進程通訊,全量發現少許Crash
  • 清理

    • 頁面退出時:是否調用Handler.removeCallback來清空Handler裏的消息?是否取消了尚未完成的請求?在頁面裏註冊的監聽是否反註冊?使用RxJava是否解除訂閱?
    • 數據庫的遊標是否已經關閉
    • 打開的文件流是否關閉
    • WebView使用後是否destroy
  • 內存

    • 保存在內存中的圖片是否作過壓縮處理
    • 是否頻繁的建立對象,必要時須要使用內存池作複用
    • 內部類最好寫成static,避免引用外部類
    • 成員變量持有Activity或Context必要時使用弱引用包裹
    • 傳入Activity儘量getApplicationContext
  • 性能

    • 頻繁操做同一個文件或執行同一個數據庫操做,能夠考慮把讀取結果緩存在內存中,以空間換時間
    • 放在主頁面的控件,能夠考慮優先用延遲加載來優化啓動速度
  • 第三方

    • build.gradle遠程依賴第三方包版本號建議寫死,避免新版本不兼容或不穩定致使Crash
    • 調用第三方包或JDK的方法時,要跳進看源碼決定是否加try-catch,避免Crash
    • 確認是否要加防混淆,不然Release會有問題
  • 邊界狀況

    • 有切換線程的回調函數在修改UI前最好先判斷Activity是否存活,若死亡要阻止UI修改並作必要的變量回收
    • 使用Utils.equals()進行Float/Double等非精確值的對等判斷
    • 除2建議改成乘0.5,防止float精度丟失;除數非0判斷
    • 空指針問題

4.Android知識架構圖(水印有出處)


PART TWO——讀書角

即將開通...預告一下,接下來打算看的書是《Android源碼設計模式解析與實戰(第二版)》,以前一直想看開源框架源碼想學其設計理念,但苦於沒有很好切入點看起來有些費勁不了了之,正好有這樣一本書從設計模式出發進行源碼解析,但願在真正的項目實戰中能有所幫助~


PART THREE——當心情

過去的這一個月真的太豐富多彩了,從零零散散的前半段就能看出來重心還不在技術成長上,大部分時間是在培訓和融入,感覺頗深真不知道從何提及,那就分紅幾個大塊說說吧~

1.培訓篇

鵝廠對於咱們畢業生真的很是重視了,先來感覺下入職後培訓安排,真的是很是規範和完整了!

  • 【公司級】長達8天的封閉培訓像重回校園,以班級和小組形式上課、答辯、比賽、考試、團建、晚會...在瞭解公司的發展歷程、行業知識、業務佈局和相關制度規定的同時,還拓展視野和人際網絡。
  • 【BG級】經過線上線下的通識、專業課程和爲期1個月的MINI項目實戰,進一步瞭解PCG組織架構並熟悉產品研發流程。
  • 【部門級】1周豪華技術課程(如後臺/前端/算法/技術研究)和1個月的MINI項目,對騰訊視頻前端、內容、視頻技術、推薦、搜索、平臺等方面有個系統的瞭解。

整套培訓下來真是受益頗深,講師還提供了精心準備的課件供課後學習,無處不體現鵝廠對畢業生細緻入微的關懷,更好的幫助咱們從學生身份轉變成職業人。

多說一句,原覺得很輕鬆的培訓其實蠻辛苦的,記得封培的時候每天兩點多才回寢,但天天真是超級開心活力無限,能與這麼多優秀善良的朋友共事,是鵝廠帶給個人第一份寶貴的財富!

2.工做篇
  • 或許是實習過,再回來的時候感受未曾離開,雖然多了些新鮮的面孔,但融入到工做氛圍中幾乎沒費什麼勁,除了第一天就得知本身有需求了😭固然有了組裏大佬的幫助,仍是挺順利的~
  • 項目迭代速度仍是很快的,除了要接收各類文檔和學習新操做,還要有很多的輸出,對於新鵝來講都還不是很熟練,因此想辦法作好總結整理。例如,按照類型和版本對各類文檔和連接進行分類收藏,方便查閱和檢索;天天都寫日報清楚作了什麼;對每一個需求都有個梳理,就我目前還不成熟的理解,差很少這樣:
標題 內容
需求單
終端 1.邏輯梳理 2.初步方案 3.疑問
協議
數據上報
排期 1.任務拆分 2.重要時間節點(1)聯調時間(2)提測時間
開發 1.涉及框架 2.新知識點 3.CR問題點
測試 1.測試用例 2.showcase 3.BUG解決
  • 遇上一些流程規範化的行動, 小到需求單系統狀態的扭轉流程,大到開源協同的建設,想進階成職業人還有不少要學~
3.生活篇
  • 給本身定些小習慣但願本身能一直堅持下去,至少目前還在堅持的,好比上班路上看技術文章、午睡前學英語、晚上運動拉抻一下。
  • 週末儘可能不賴在家裏睡大覺,要不來公司學習,要不和好朋友去嗨皮,最近幾個週末的大頭是MINI項目,體驗一次終端轉行前端的刺激。
  • 公司的福利仍是一如既往的給力,在不久的未來我身邊會佔滿各類鵝定製品了。

PART FOUR—— 照片冊

首先,最想分享的是這篇記錄八天封培的推送→→又見七三 // 大梅沙流水帳←←是我培訓小組人美歌甜心善良的雨心的文章,還有超級多的照片喲,我不定時入鏡哈哈~

團寵弟弟的做品,晚會主KV,也是三組每一個人的桌面壁紙哦~

接下來就是一些隨手拍~一二樓展廳的其中一個做品(高級定製,整我的像的承重點只是腳尖喲~),整個展廳不要太炫,來濱海蔘觀不能錯過的地方!

終於知道「濱海大廈」中的海是哪了!

聽說是封閉低溫的濱海最溫暖的地方,想象一下在36樓懸空層俯視天空的感受,不要太好!

中秋節禮盒,圓圓的表情太可愛了吧,口味和顏色搭配也很贊!

最後,不知道說啥了給你們劈個叉把!但願你們都多多運動~~

相關文章
相關標籤/搜索