<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          程序員到底為什么要掌握數(shù)據(jù)結(jié)構(gòu)與算法?

          共 1063字,需瀏覽 3分鐘

           ·

          2021-04-28 21:21

          當(dāng)代程序員,也就是我們,其實(shí)是非常幸運(yùn)的,為什么?因?yàn)榍叭耍?/span>也就是那些大牛已經(jīng)為你鋪好路了。
          大牛鋪路導(dǎo)致的后果就是整個(gè)計(jì)算機(jī)系統(tǒng)像這個(gè)漢堡包一樣是分層的:
          越是上層越抽象,用起來也就越方便。

          大牛們是怎么鋪路的

          最開始的計(jì)算機(jī)只是一堆 CPU 與內(nèi)存等硬件,要讓這群大爺工作需要直接匯編編寫機(jī)器指令。
          這也太麻煩了吧,因此那些大牛鼓搗出一個(gè)叫做高級(jí)語言的東西,現(xiàn)在方便多了,但程序不能只運(yùn)行在一種架構(gòu)上吧,為了讓程序可以不加改動(dòng)的到處運(yùn)行標(biāo)準(zhǔn)庫出現(xiàn)了,標(biāo)準(zhǔn)庫對(duì)上層屏蔽了底層差異。
          現(xiàn)在問題解決了吧,但是別著急,還沒完呢!
          程序使用的數(shù)據(jù)結(jié)構(gòu)和算法太復(fù)雜了,每次都要重頭開始寫一個(gè)二叉樹可不是一件有意思的事,怎么辦呢?
          大牛們都已經(jīng)替你想好啦,直接把這些數(shù)據(jù)結(jié)構(gòu)和算法以庫的形式集成到語言中,就像 C++ 的 STL,Java的容器,想使用數(shù)據(jù)結(jié)構(gòu)嗎?簡(jiǎn)單的很,你只需要知道數(shù)據(jù)結(jié)構(gòu)和算法的名字就足夠了,剩下的查查接口文檔,夠方便吧。
          這些都是小意思,還有更牛的,像搭建一個(gè)網(wǎng)站、編寫一個(gè)App,其實(shí)這些寫的代碼大同小異,為什么要一遍遍重復(fù)造輪子呢?程序員的時(shí)間可是很寶貴的,怎么辦?大牛們依然很貼心的為你想好了,于是框架應(yīng)運(yùn)而生。
          想搭建一個(gè)網(wǎng)站簡(jiǎn)直不要太容易,簡(jiǎn)單幾行代碼,一個(gè)功能完備的web server就跑起來了,現(xiàn)在還有誰說編程難嗎?什么都給你想好了。

          我們呢?
          大牛鋪好了路,于是這樣一幕就出現(xiàn)了:
          大牛們提供的技術(shù)使用起來就像搭積木一樣容易!只要你的需求不超過積木的表達(dá)能力那么就可以愉快的用下去,根本就不用關(guān)心下一層是如何實(shí)現(xiàn)的。這就是框架本身的目的以及優(yōu)勢(shì),用起來很容易,這也是為什么很多人對(duì)此趨之若鶩的原因。
          但是這樣也有壞處,那就長(zhǎng)此以往你會(huì)被鎖死在這一層。

          怎么辦?
          一旦依賴的這層技術(shù)不能滿足需求,你就會(huì)驚訝的發(fā)現(xiàn)自己根本沒有學(xué)會(huì)編程,這時(shí)你才能意識(shí)到各種底層技術(shù)以及數(shù)據(jù)結(jié)構(gòu)算法的重要性,本質(zhì)上這些才是計(jì)算機(jī)科學(xué)的核心,這些核心技術(shù)賦予你層級(jí)躍遷的能力,這樣你就不會(huì)被鎖死在某一層中了,當(dāng)這一層不能滿足你要求是你可以自己造出新的一層,這其實(shí)就是大家眼中那些大牛在做的事情。

          如果ArrayList是個(gè)人……


          Java序列化的這三個(gè)坑千萬要小心


          Java自學(xué)方法和路線,我萬字推薦你這樣學(xué)

          瀏覽 42
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  中文字幕日韩在线观看视频 | 男女激情毛片 | 另类专区亚洲 | 青青草大香蕉人人噜视频免费 | 波多野结衣视频在线 |