打造自己的Android常用知識體系

来源:https://www.cnblogs.com/whycxb/archive/2019/02/24/10342917.html
-Advertisement-
Play Games

前言 Android常用知識體系是什麼鬼?所謂常用知識體系,就是指對項目中重覆使用率較高的功能點進行梳理。註意哦,不是Android知識體系。 古語道:學而不思則罔,思而不學則殆。如果將做項目類比為“學”,那麼整理就可以類比為“思”。 在做項目過程中總是會遇到使用相同的功能,比如toast、對話框、 ...


前言

Android常用知識體系是什麼鬼?所謂常用知識體系,就是指對項目中重覆使用率較高的功能點進行梳理。註意哦,不是Android知識體系。

古語道:學而不思則罔,思而不學則殆。如果將做項目類比為“學”,那麼整理就可以類比為“思”。

在做項目過程中總是會遇到使用相同的功能,比如toast、對話框、刷新載入列表、網路框架、資料庫等等,一個簡單的方法就是從之前的項目中複製粘貼到新項目中,然後做一些個性化修改,好了,這就“大功告成”了。當另外一個新項目用到了,再次複製粘貼。這樣是不是很low。但是當項目一個接一個的時候,這個方法是一個簡單快速的方法。

那麼當幾乎沒有項目可做的時候或者當周末有時間的時候,我們是不是應該對功能點進行一下思考呢。那麼思考什麼呢?

  1. 思考這個功能點經過多個項目的“考驗”,是不是“成年”了,可以“獨立”出來了;
  2. 思考這個功能點是不是屬於常用功能,值得“獨立”出來;如果是的話,為什麼不把這個功能點從項目中“獨立”出來呢。有人會說,我記憶好,能知道所有項目中用到的功能點,我可以隨時找到。是嗎?我當下很懷疑啊。

功能點如何獨立?

一個Demo

將功能點從項目中摘出來,做成一個Demo。數據可以採用假數據,涉及到網路數據的,可以使用mockAPI。
註意:一個Demo只有一個主功能點,其他輔助的功能點可以簡化。不能簡化的話就在博客中標註出來。

兩個平臺

一個是博客平臺(博客園、CSDN、簡書等),一個是github。
為什麼要寫博客呢?因為這樣才能記錄這個功能的集成步驟,以及對這個功能的理解。當然了,不寫博客也可以寫到github的READMEN.md中。主要目的就是通過寫文章加深自己對功能的理解,至於精細到什麼程度,在於個人的想法。
一個小建議,剛開始寫博客沒有頭緒,可以先製作一個模板(word就行):羅列出來目錄,像什麼概述、前言、項目結構圖、集成步驟、使用方法、參考資料等目錄名稱。比如我的博客文章,基本上是同一個模板。
github就不多說了,托管自己的代碼,記錄版本迭代信息,比存儲在本地強多了。

為什麼要進行體系化?

所謂體系化,其實就是對自己的知識進行梳理。這樣才能清楚自己具備哪些能力,欠缺哪些能力。並且可以快速復用知識點,節省重覆功能的開發時間。
有人會說,整理常用知識體系,只是停留在使用的層面,無法達到進階的作用。是的,這個常用知識體系可以幫助我們快速復用功能,節省時間,同時也可以加深我們對功能的錶面理解,那麼節省出來的時間以及對功能的錶面理解是我們對功能的實現原理進階的基礎。由表入里也是一種方法。

我們不僅僅要拓寬知識的緯度,更要加深知識的經度。所以閱讀源碼、理解原理是我們的目標。

體系如何打造?

整理!先整理細碎的功能點,最後使用思維導圖的形式展現出來。
如果覺得別人整理的很好,那麼可以直接鏈接到別人的博客地址,不需要自己重覆造車輪子的。

Android常用知識體系思維導圖(例子)

《Android常用知識體系-V1.1.html》思維導圖下載地址:

鏈接:https://pan.baidu.com/s/1fQOXzlTNj7qdPAe4IMgwrg 提取碼:ff8c

 

 個人想法,僅供參考。


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 1.前言 在Linux中,伙伴系統(buddy system)是以頁為單位管理和分配記憶體。但是現實的需求卻以位元組為單位,假如我們需要申請20Bytes,總不能分配一頁吧!那豈不是嚴重浪費記憶體。那麼該如何分配呢?slab分配器就應運而生了,專為小記憶體分配而生。slab分配器分配記憶體以Byte為單位。但 ...
  • windows powershell基礎 目錄: 1.管道和重定向 2.命令執行 3.變數 4.數組和哈希表 #@()創建數組,使用","把每個值分隔開,@{}創建哈希表,用";"把每個值分隔開 5.常用命令 get-help 查看幫助 get-command 查詢命令 get-member 查看對 ...
  • 轉自:https://blog.csdn.net/xcntime/article/details/51746148 導讀:對於Windows內置安全主體特別需要註意的是:你無法創建、重命名和刪除它們,並且它們在任何一個Windows系統中都是一樣的。 在上期雜誌的“理解Windows內置安全主體(上 ...
  • 前言 開心一刻 一個女人自朋友圈寫道:我家老公昨天和別人家的老婆出去旅游,迄今未歸,我則被別人家的老公折騰了一天,好累哦! 圈子下麵,評論無數,老公在下麵評論到:能不能好好說話,我只不過陪女兒去畢業旅游行,而你負責在家留守,照顧三歲兒子,要不要寫的這麼刺激、讓人浮想聯翩的? 你是不是有點虎? 諾維斯 ...
  • 我們知道一般圖書館都會建書目索引,可以提高數據檢索的效率,降低資料庫的IO成本。MySQL在300萬條記錄左右性能開始逐漸下降,雖然官方文檔說500~800w記錄,所以大數據量建立索引是非常有必要的。MySQL提供了Explain,用於顯示SQL執行的詳細信息,可以進行索引的優化。 一、導致SQL執 ...
  • Redis常用數據類型有字元串String、字典disct、列表List、集合Set、有序集合SortedSet,List常用於獲取最新topN條新聞等類似問題和生產者消費者模式,集合set可以求對象的共同標簽,而有序集合SortedSet用於游戲中的分數排名,SortedSet底層採用壓縮列表zi... ...
  • 一、獲取SDK 1.進入ArcFace2.0的申請地址 https://ai.arcsoft.com.cn/product/arcface.html 2.填寫信息申請並提交 申請通過後即可下載SDK,查看APP_ID和SDK_KEY 二、功能介紹 虹軟ArcFace 2.0 Android包含人臉檢 ...
  • 最近面試時,面試官問了一個列表倒計時效果如何實現,然後腦袋突然懵的了O(∩_∩)O,現在記錄一下。 運行效果圖 實現思路 實現方法主要有兩個: 1.為每個開始倒計時的item啟動一個定時器,再做更新item處理; 2.只啟動一個定時器,然後遍曆數據,再做再做更新item處理。 經過思考,包括性能、實 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...