原创 RxSwift + MVVM 初體驗

一、原起 作爲一名iOS開發者,必須跟上時代的潮流,隨着swift ABI越來越穩定,使用swift開發iOS APP 的人越來越多。從網上看了很多文章,也從github上下載了很多demo進行代碼學習。最近使用RxSwift+MVVM+M

原创 iOS開發架構

一、原件架構的原則 軟件架構的七大原則如下: 開閉原則 依賴倒置原則 單一職責原則 接口隔離原則 迪米特法則(最小知道原則) 里氏替換原則 合成/聚合複用原則 1.開閉原則 對擴展開放,對修改關閉。 說的是,在設計一個模塊的時候,應當

原创 swift開發利器-RxSwift

一、爲什麼要使用RxSwift? 因爲使用RxSwift框架我們可以使target-action、代理、閉包回調、通知、多個任務之間的依賴、等待多個併發任務完成之後處理結果等等的編程場景變得邏輯清晰、易讀、易維護。 RxSwift的優點:

原创 只有程序員才懂的痛

小區新搬來一戶人家,一個30歲左右的年輕漂亮女人,帶着一個4歲的男孩。每天獨自一人操持家務,買菜做飯,接送孩子。 時間久了,鄰居們都有些議論,知道有一天,一個男人揹着大包小包敲開了這家的門。男人剛進屋,女人哭聲即傳了出來。 女人叫到:“你T

原创 iOS內存相關的知識點整理

一、原起 iOS的內存相關知識是我們開發iOS APP的基石之一,也是面試中必然會問的問題。內存知識的融會貫通,與及內存相關問題的解決,是iOS開發者必須要掌握的。 二、iOS內存相關知識點 2.1 iOS的內存管理方式 iOS的內存管理

原创 對iOS代碼重構的一點看法

一、原起 基本上每一個項目都會經歷這樣的一個過程,前期的快速迭代,去做市場的試探,這個時候的要求是怎麼快怎麼來,經過市場試探,找到對應的盈利模式,與及摸準了用戶的使用習慣,這個時候產品會進入一個穩步發展的階段,這個時候很多公司就會開始考慮怎

原创 swift的一些面試題

一、open與public的區別 public:可以別任何人訪問,但是不可以被其他module複寫和繼承。 open:可以被任何人訪問,可以被繼承和複寫。 二、struct與class 的區別 struct是值類型,class

原创 ffmpeg開發知識點回顧

視頻花屏/卡頓原因 如果GOP分組中的P幀丟失會造成解碼端的圖像發生錯誤 爲了避免花屏問題的發生,一般如果發現P幀或者I幀丟失,就不顯示本GOP內的所有幀,直到下一個I幀來後,重新刷新圖像。 時間基 tbr: 幀率 tbn:time

原创 直播知識結構整理

文章內容來自於邏輯教育公開課。 總結:以上主要是對音視頻開發中用到的相關知識進行了一個整理,囊括了流媒體知識、直播技術點、直播架構、音頻知識點。

原创 FFmpeg組織結構

學習ffmpeg之前,我們應該對ffmpeg的組織結構有一個大體的瞭解。ffmpeg安裝好之後,使用cd /usr/local/ffmpeg命令進入到ffmpeg目錄下,會看到ffmpeg的4個主要目錄。 bin include lib

原创 WebRTC源碼目錄結構

以下是對WebRTC入門學習課程的源碼目錄結構的整理,方便後續學習時進行查詢。 源碼對應的目錄結構 目錄 對應的功能 api WebRTC接口層,瀏覽器都是通過該接口調用WebRTC call 數據流的管理層,call代表同一

原创 WebRTC介紹

一、 WebRTC是什麼 WebRTC,名稱源自網頁即時通信(英語:Web Real-Time Communication)的縮寫,是一個支持網頁瀏覽器進行實時語音對話或視頻對話的API。它於2011年6月1日開源並在Google、Mozi

原创 FFmpeg常用命令合集

ffmpeg查詢命令 命令 註釋 -version 顯示版本號 -demuxers 顯示可用的demuxers -muxers 顯示可用的muxers -devices 顯示可用的設備 -codecs 顯示所有編

原创 編輯器之神-vim 常用命令

在這個蔚藍的星球上,流傳着兩大神器的傳說:據說Emacs是神的編輯器,vim是編輯器之神。 拷貝/粘貼/刪除 拷貝:yy/yw(yy:是拷貝整行,yw:拷貝一個詞) 粘貼:p 刪除:dd/dw(dd:刪除一行,dw:刪除一個詞)

原创 iOS 中gif圖的顯示

一、前言 iOS開發中,大部分時候我們顯示一張靜態圖就可以了,但是有的時候爲了UI表現更生動,我就有可能需要展示gif圖來達到效果了。 網上找了一下,顯示gif圖的框架找到了兩個。 SDWebImage YYImage 二、顯示本地g