原创 設計模式(面向對象六大原則)(總結)

(1)單一職責原則-Single Responsibility Principle-SRP-優化代碼的第一步 定義:就一個類而言,應該僅有一個引起它變化的原因。 實際開發: 單一職責所表達出的用意就是”單一“二字。如何劃分一個類,

原创 設計模式(一)單例模式-創建型-減少重量級對象創建

定義: 確保某一個類只有一個實例,而且自行實例化並向整個系統提供這個實例。 單例模式的使用場景 確保某個類只有一個對象的場景,避免產生多個對象消耗過多的資源,或者某種類型的對象只應該有且只有一個。 單例模式UML類圖 角色介紹

原创 設計模式(二)-建造者模式-創建型-創建對象的最佳方式

定義 建造者模式(Builder Pattern)使用多個簡單的對象一步一步構建成一個複雜的對象。 這種類型的設計模式屬於創建型模式,它提供了一種創建對象的最佳方式。 一個 Builder 類會一步一步構造最終的對象。該 Buil

原创 WEEX-EEUI 頁面的高度問題(頁面高度設置爲多少纔對?)

前言 最近在使用EEUI開發weex頁面,遇到了一些坑,關於列表頁面底部有按鈕的頁面佈局問題提出了一個解決方案。 說明 正常使用weex開發頁面過程中使用的是750進行頁面佈局的,這個尺寸是參考了IOS的屏幕尺寸進行設定的,and

原创 AS-Android 4.0嚐鮮

前言 我就要做第一個喫螃蟹的人!!! 回望過去 從15年開始接觸android開發,那個時候androidstudio剛出1.0版本。在課堂上我們還使用着eclipse+ADT開發着小demo,我依稀記得那是我從網上down下來

原创 Android 日常開發(28) Webview緩存設置以及緩存清理辦法

前言 最近項目中用到這個東西,這裏就順便扯一扯 一般配置 this.setInitialScale(1); this.getSettings().setJavaScriptEnabled(true);

原创 Android 日常開發(32) WebView視頻全屏播放

前言 之前也做過了,很多遍全屏的控制,但是一直都沒有寫成筆記去總結。 webview setting this.getSettings().setJavaScriptEnabled(true); this.g

原创 Android-AOP-生命週期無侵入記錄

引入插件 classpath 'com.android.tools.build:gradle:3.1.4' classpath 'com.hujiang.aspectjx:gradle-android-plugin-aspectj

原创 數據結構和算法學習筆記-棧

免責聲明,本文內容大多是對數據結構與算法之美課程的學習筆記,內容上面有很多相似之處。也不太適合初學者去直接學習和掌握,僅供有算法經驗的同學提供一些,快速回顧算法知識的支持 引入問題:如何實現瀏覽器的前進後退功能? 如何理解棧? 後

原创 02)學習 Kotlin 編程語言

學習 Kotlin 編程語言 Kotlin 是世界各地的 Android 開發者廣泛使用的一種編程語言。本主題可充當 Kotlin 速成課程,能夠幫助您快速上手。 變量聲明 Kotlin 使用兩個不同的關鍵字(即 val 和 va

原创 數據結構和算法學習筆記-數組、鏈表(上)

免責聲明,本文內容大多是對數據結構與算法之美課程的學習筆記,內容上面有很多相似之處。也不太適合初學者去直接學習和掌握,僅供有算法經驗的同學提供一些,快速回顧算法知識的支持 數組 關鍵詞:線性表(Linear List)、非線性表

原创 回望2019,覓見2020

回望2019,覓見2020     如果想要用一句話來總結[2019],“買車,戀愛,寫情書,短途自駕遊,結婚,寫博客”。[2020]我能看到的就是即將到來的baby,還有就是讓自己技術變得更強。能夠養活俺的一家老小。     買

原创 AndroidX(1)androidx.core.core:1.0.0解析

前言 AndroidX出來一段時間了,從09年開始一直在做公司的quickstart和組件化的東西,基礎框架搭建這一塊也算是有一些成績。從原來的功能的抽象的封裝,到現在系統性質研究。 正文 新的項目啓動,有利於做一些前沿技術的思想

原创 node技術棧索引

1.這個技術出現的背景、初衷和要達到什麼樣的目標或是要解決什麼樣的問題。 2.這個技術的優勢和劣勢分別是什麼,或者說,這個技術的 trade-off 是什麼。 3.這個技術適用的場景 4.技術的組成部分和關鍵點 5.技術的底層原

原创 FFmepg視頻解碼流程

第一點:視頻播放流程? 第一步:視頻->封裝格式數據->MP4\3GP等… 第二步:解封裝->視頻壓縮數據->H.264,MPEG2 第三步:視頻解碼->視頻像素數據->YUV420P,YUV422P… 第四步:播放視頻像素數據