我所涉獵的技術并不多事扭,但是也不少捎稚,依我看,技術確實在趨向一個詞求橄,那就是內(nèi)卷今野。技術已經(jīng)不再是單純的創(chuàng)造力工具,而是淪為瓜分市場的武器罐农,哪里有競爭条霜,哪里就有內(nèi)卷,技術也是一種競爭啃匿,更不用說傳說中的鄙視鏈蛔外。
我想大多數(shù)人都是一樣蛆楞,人云亦云而已,他們并不是真的用過那些技術夹厌,深刻的思索過背后的原因豹爹,只是聽過別人說,或者一種直觀的感覺去判斷矛纹,哪種技術好臂聋,那種技術不好,排斥某種技術或南,狂熱于某種技術孩等。
當然我也是,我尤其不喜歡java采够,因為每次當我搜索什么解決辦法的時候肄方,冒出來的答案Java都會來插上一腳,在我搜之前蹬癌,內(nèi)心其實已經(jīng)有了一個模糊的答案权她,所以這算是出現(xiàn)了意料之外的答案,因此我憤恨逝薪,這個哪里都要冒一頭的人隅要,像個熱心急躁的小伙子,哪里都想試試董济;還有一種情況步清,也是我討厭Java的原因,就是Java好像被什么組織給支配了虏肾,到處都是培訓班廓啊,視頻教程,框架教程询微,點進去看崖瞭,無非就是那幾個培訓機構出的狂巢,講的冗長乏味撑毛,全是稀碎的東西,我立馬關掉唧领。我不需要誰教我從頭寫hello藻雌,world,只是想要一種解決問題的辦法斩个,他們做不到胯杭,只是自顧自的講那些講了千百遍的內(nèi)容,所以我討厭受啥。
技術市場又多大點地盤做个,其實并不多鸽心,現(xiàn)在分的已經(jīng)很細了,個個領域都有合適的解決方案居暖,但是并不是每個人都能解決個個領域的問題顽频,于是又出現(xiàn)了一個問題,技術能解決問題太闺,但是人解決不了糯景。所以世面上的那些教程,只是說這個工具該怎么用省骂,而不教問題該怎么解決蟀淮,這工具該怎么使用,還需要人教嗎钞澳?說明書怠惶,就是最好的教程。那些教程轧粟,屬于無用功甚疟,各種名詞描述的天花亂墜,他們已經(jīng)偏離了技術的主旨逃延,不在聚焦于解決問題览妖,而是聚焦于如何獲取流量,賺更多的錢揽祥。這點他們確實是很成功的讽膏,因為再倔強的顧客也經(jīng)不住千篇一律的菜單,還是會下單的拄丰。
我不信任別人寫的東西府树,又或者我覺得別人寫的東西不好,不適合我料按,想要改造奄侠,于是我會動手,自己去實現(xiàn)载矿,這是我的內(nèi)部驅(qū)動力垄潮,也是我搞技術的原因,因為能夠創(chuàng)造闷盔,能夠改變弯洗。
我之前學操作系統(tǒng),只是走馬觀花逢勾,大學課堂也只是在恍惚間度過牡整,沒學到什么東西,又好像學到了什么溺拱,那是什么呢逃贝?一種視野谣辞,知道存在。然后在工作的過程中沐扳,遇到問題了潦闲,基于之前的視野,然后去尋找這種存在意義迫皱,和為什么歉闰,這是一種往復,更是一種學習方式卓起,因為我是基于體驗的學習方式和敬,如果讓我空想,很難明白其中的緣由戏阅,只有去探索和體驗昼弟,才能獲得知識。其他的像網(wǎng)絡原理奕筐,計算機組成原理舱痘,算法等等,都是這樣的感覺离赫,學的時候留一個坑洞芭逝,到了用的時候,再去補上渊胸,用的越多旬盯,填的越滿。
所以我不明白那些空談理論的教程有什么用翎猛,估計連空洞都不會留下胖翰,畢竟誰也不會記住教室后排窗臺灑下的陽光和旁邊的朋友。
技術是有一個從上而下的結(jié)構的切厘,這個結(jié)構當中萨咳,越向上越遠離硬件,越向下越接近真相疫稿,所以在我的意識里培他,真相是被埋藏在最底下的,因此我常常溯源而克,想要找的一個問題的終極答案靶壮,有的時候能找到怔毛,有的時候找不到员萍,因此也不得不感嘆,知識的匱乏是限制個人發(fā)展的枷鎖拣度。硬件上有操作系統(tǒng)碎绎,負責調(diào)度硬件的各種資源螃壤,這個操作系統(tǒng)又因為硬件的不同而不同,因為不同的硬件對于資源的操作需要使用不同的指令筋帖,所以操作系統(tǒng)這里需要解決的問題是適配各種硬件和資源調(diào)度的問題奸晴,操作系統(tǒng)上有各種軟件,有圖形化的日麸,也有非圖形化的寄啼,負責計算的,負責存儲的代箭,總體來說墩划,計算機就是這兩種功能,計算和存儲嗡综,計算人們不能輕易計算的結(jié)果乙帮,然后把計算結(jié)果展示出來,如果想要下次不計算极景,那就要把計算結(jié)果存儲下來察净,這就是存儲的意義。到了軟件層面盼樟,花活就更多了氢卡,有虛擬機,可以讓一個代碼的軟件在各個操作系統(tǒng)中運行晨缴,因為虛擬機負責翻譯代碼把結(jié)果進行統(tǒng)一處理异吻,所以這個虛擬機在一些層面也扮演著操作系統(tǒng)的角色。除了虛擬機喜庞,還有編譯器诀浪,這個就厲害了,這個會把代碼編譯成可運行文件延都,然后也可以在各個操作系統(tǒng)中運行雷猪,他和虛擬機的區(qū)別就是,目標系統(tǒng)不需要編譯器晰房,但是會需要虛擬機求摇。還有一種軟件,是虛擬化技術所催生出來的軟件殊者,這類軟件利用硬件的虛擬化技術与境,可以虛擬化一個系統(tǒng)出來,現(xiàn)在的云技術猖吴,就是以此為基石的摔刁,當然也可以在虛擬的操作系統(tǒng)里再虛擬操作系統(tǒng),這種操作是沒有意義的海蔽,除了證明這東西很有趣共屈,沒啥意義绑谣,因為每次虛擬都會使用資源,這些資源都是由最終的硬件提供的拗引,不可能超出這個硬件的限制借宵,只會造成無端的資源浪費。
軟件最重要的指標是什么矾削?在我看來是性能壤玫,單位時間里所能做的事情,當然事情的正確度同樣重要『呖現(xiàn)在的技術垦细,是一層接著一層網(wǎng)上嵌套的,一方面肯定是為了節(jié)省開發(fā)的時間挡逼,另一方面則是為了具象悠就,更加接近人類的思考習慣邀窃,所以才有面向?qū)ο笙没嫦蚯忻媲四兀嫦蜻^程這些東西,具象出來的東西越簡單虱疏,說明下面埋藏的細節(jié)越多惹骂,這種簡單會讓人懶惰,同樣還會讓程序員思維固化做瞪,不求嘗試其他的更好的解決辦法对粪。最重要的問題,每嵌套一層装蓬,都面臨著性能的損耗著拭,因為每多一層調(diào)用,就會多這一層調(diào)用的性能使用牍帚,所以層級越高儡遮,性能就會越差。
現(xiàn)在框架真的是太多了暗赶,也太簡單了鄙币,這讓很多人認為程序開發(fā)就是那么簡單的事情,這確實有好處蹂随,快速的開發(fā)出來十嘿,解決問題不好嗎?當然是好事岳锁,只不過绩衷,這里面埋藏著很多問題,如果不深入研究,遇到問題會無法解決唇聘,因為很多程序框架版姑,一開始都是為了解決特定問題而產(chǎn)生的柱搜,并不是普遍適用的迟郎,所以換個問題,可能不會有那么高的解決效率聪蘸。
所以宪肖,在我看來,技術實際面臨的時候如何更好的解決問題健爬,這個更好控乾,是個很坑的詞,因為評判的依據(jù)不定娜遵,有短時間能解決問題的蜕衡,可以稱作更好,有使用更少資源的设拟,也可以稱作更好慨仿,還有人,更熟悉某個技術纳胧,也可以稱為更好镰吆。因此在解決問題之前,最好先弄清楚問題跑慕,然后再選用適于自己的技術万皿,才是更好的選擇。
關于技術生涯核行,其實是沒有盡頭的牢硅,因為技術層出不窮,硬件資源現(xiàn)在也是越來越便宜了芝雪,所以上層技術真實日新月異唤衫,俗話說的卷,就是這樣绵脯,我能做的佳励,我要做的更好,我不能做的蛆挫,我要嘗試去做赃承,好像每個技術都想把所有領域都霸占,那這樣悴侵,其他技術的意義何在呢瞧剖?我不明白,是不是因為向下發(fā)展到了盡頭,所以只能向上掙扎抓于。