關(guān)于寫技術(shù)博客的初衷卖陵,我想說幾句哈
在我的博客里會(huì)有一些,IT技術(shù)側(cè)的基礎(chǔ)知識(shí)张峰,大都算不上很深入很底層的東西泪蔫,當(dāng)然了,能一篇文章說清楚的東西喘批,大概率涉及不到太深度底層的知識(shí)撩荣。
這篇文相當(dāng)于是前言铣揉,會(huì)解釋以下兩個(gè)問題:
- 我為什么寫這些很基礎(chǔ)的東西,目的是什么餐曹?
- 知識(shí)總量太大逛拱,哪些點(diǎn)是我會(huì)拿出來寫的?
首先台猴,我不是為了做知識(shí)筆記或者說什么梳理朽合。所以打比方說,Android的消息機(jī)制大概是怎樣的饱狂?Android的View事件分發(fā)機(jī)制是怎樣的曹步?渲染機(jī)制是怎樣的?線程池的基本用法休讳?等等等等讲婚,這些相對(duì)基礎(chǔ)的知識(shí),市面上的相關(guān)書籍或者網(wǎng)上的博客能搜到非常多俊柔,這也是一個(gè)高級(jí)開發(fā)技術(shù)成長道路上必知必會(huì)的東西筹麸,我再重新寫一遍沒意義,估計(jì)也沒有別的博客寫得好婆咸。
但是比如說子線程能不能展示toast竹捉?它和looper有啥關(guān)系,涉及到NMS里怎樣的機(jī)制尚骄? Looper掛起以及喚醒涉及到的內(nèi)核態(tài)的線程調(diào)度是怎樣的? view的渲染具體到SurfaceFlinger服務(wù)里做了怎樣的事情侵续?再深入可以聊下Ashem匿名共享內(nèi)存的東西倔丈? 這些都是可以從上面的基礎(chǔ)知識(shí)往深度擴(kuò)展來的,但是把下面這些問題弄明白的開發(fā)状蜗,數(shù)量應(yīng)該是相對(duì)少一些的需五。
但是,有些知識(shí)點(diǎn)轧坎,很經(jīng)典很基礎(chǔ)宏邮,網(wǎng)上大部分的文章沒有講清楚(后面會(huì)舉例)。
國內(nèi)網(wǎng)站的很多博客目前存在幾個(gè)問題:
-
還沒真的弄明白的情況下缸血,就照搬照抄其他博主的文章蜜氨。
抄沒有問題,但是最好在真正理解吸收以后捎泻,再抄比較好飒炎。
-
不同博客平臺(tái)用爬蟲互爬數(shù)據(jù),原樣照抄連圖床都不處理笆豁,配圖掛了也不管郎汪。
這導(dǎo)致一個(gè)問題百度出來(國內(nèi)大部分工程師還是用百度赤赊,我也經(jīng)常用),會(huì)有幾十篇相關(guān)的文章解析煞赢,咋一看信息量很足抛计,實(shí)則千篇一律,錯(cuò)別字都是一樣的照筑。
-
沒有把點(diǎn)子講明白爷辱,有的甚至講錯(cuò)了,也被別人抄了幾十份朦肘。
比如雙緩沖和垂直同步饭弓,這么簡單的概念,大部分文章卻沒能講清楚媒抠。ThreadLocal也是如此弟断。比如關(guān)于客戶端緩存方案,我看很多候選人的簡歷上寫著“三級(jí)緩存”趴生,大家自己思考一下阀趴,網(wǎng)絡(luò)這層能不能算作緩存,不知道哪個(gè)人說了這個(gè)“三級(jí)緩存”(估計(jì)是借鑒了操作系統(tǒng) 磁盤/ram/高速緩存 的三級(jí)緩存概念)苍匆,后面看的人就跟著叫“三級(jí)緩存”刘急。
說實(shí)話,工程師面試浸踩,考察的重點(diǎn)之一就是解決問題的能力叔汁。肯定不會(huì)因?yàn)槟阏f"三級(jí)"就比“二級(jí)緩存”更厲害检碗,更加分据块,這是不可能的。所以在學(xué)習(xí)的時(shí)候一定要有自己的思考和思辨的過程折剃,不要人云亦云另假。
-
一些博客行文方式更像是做記錄,不像在做分享怕犁。
打個(gè)比方边篮,代碼細(xì)節(jié),大多數(shù)情況下是為了“證偽”奏甫。很多博客戈轿,標(biāo)題寫著“深入解析”,然后進(jìn)來一句話不說開始暴力貼代碼扶檐,如果是為了做筆記凶杖,這個(gè)無可厚非,但是做筆記可以在本地文檔做款筑,發(fā)布到網(wǎng)上一是給搜索引擎增添負(fù)擔(dān)智蝠,二是降低其他工程師的搜索效率腾么。
怎樣才算是好的技術(shù)分析,我的理解是杈湾,要盡可能的消除平臺(tái)差異性解虱,將具體的平臺(tái)細(xì)節(jié)脫敏,把原理流程抽象出來漆撞。比如你說一個(gè)Android的知識(shí)殴泰,要盡可能讓沒有這方面基礎(chǔ)的新人或者甚至是iOS的開發(fā)能聽得懂,能做到這一點(diǎn)浮驳,應(yīng)該至少是及格了悍汛。
總結(jié)
所以綜上所述,網(wǎng)上書上現(xiàn)成的基礎(chǔ)知識(shí)文章我大概率不會(huì)去寫了(除非真有人想看我重新寫一遍??)(上面文字里挖的坑至会,都會(huì)填上的)
然后我寫這些博客的目的是离咐,希望能用盡可能友好不炫技的方式,把一些目前其他博客都沒能講清楚的東西講清楚奉件。(回答了第一個(gè)問題) 而且宵蛀,我會(huì)把那些雖然基礎(chǔ),但是很經(jīng)典很重要县貌,但是很容易理解錯(cuò)的知識(shí)拿出來寫术陶。(回答了第二個(gè)問題)。
最后煤痕,我一直是一個(gè)很自謙梧宫,一直抱有空杯心態(tài)的人。技術(shù)水平也極為有限杭攻,難免會(huì)說錯(cuò)理解錯(cuò)祟敛,也希望發(fā)現(xiàn)我行文紕漏的同行們能不吝賜教,通過私下聯(lián)系或者評(píng)論的方式指出我的問題兆解,以免我誤人子弟。