久久久久久久视色,久久电影免费精品,中文亚洲欧美乱码在线观看,在线免费播放AV片

<center id="vfaef"><input id="vfaef"><table id="vfaef"></table></input></center>

    <p id="vfaef"><kbd id="vfaef"></kbd></p>

    
    
    <pre id="vfaef"><u id="vfaef"></u></pre>

      <thead id="vfaef"><input id="vfaef"></input></thead>

    1. 站長資訊網(wǎng)
      最全最豐富的資訊網(wǎng)站

      Linux背后的思想

        1.Linus Torvalds

        Linus Torvalds兩次改變了技術(shù),第一次是Linux內(nèi)核,它幫助互聯(lián)網(wǎng)的發(fā)展;第二次是Git,全球開發(fā)者使用的源代碼管理系統(tǒng)。在一次TED的采訪中,Torvalds以極其開放的態(tài)度討論了他獨特的工作方式和性格特點。Torvalds說:“我不是一個空想家,我是一名工程師,我非常樂意跟夢想家在一起,他們行走四方,仰望蒼穹,看著滿天星辰說,“我想到那兒去。”但我是低頭看路的那種人,我只想填好眼前這個坑,不讓自己掉進去,這就是我。”

        2.關(guān)于開源

        Linus Torvalds說:

        Linux并不是一個合作的產(chǎn)物,它是我一系列項目中的一個,純粹出于自己當時的需要,部分原因是我需要得到結(jié)果,但更重要的原因是我享受編程。這段旅程的終點,在25年后的今天(2016),我們?nèi)晕催_到。當年我只是想做一個完全屬于自己的項目,我壓根就沒想過開源這件事。但在那之后,隨著項目越來越大, 你會開始想讓別人知道。感覺就像“哇,快來看看我的成果!”

        成千上萬的人想?yún)⑴c進來(Linux內(nèi)核項目),但很多時候,我成為了那個斷點,我無法讓自己跨出那一步,同上千人合作。

        因此Git是我的第二個大項目,它存在的意義就是維護我的第一個大項目。事實上這就是我的工作方式。我編程并不是為了…,我編程是因為好玩,但我也想做一些有意義的事情,因此我設(shè)計每一個程序僅僅是因為我自己需要。

        而我喜歡開源軟件的一點就是,它能讓形形色色的人在一起合作。我們不必相互喜歡,有時候我們甚至互相討厭。是真的,我們經(jīng)常吵得不可開交。

        科學(xué)界的開源顯然是一種回歸,科學(xué)最初是開源的。但之后變得越來越封閉,只存在那些昂貴的科學(xué)期刊上。開源讓科學(xué)回歸了,我們有了arXiv和開放期刊。

        小編有話說:

        Linux并不是選擇了開源,只是因為開源恰好是Linux需要的。就如Linus Torvalds所說:“純粹出于自己當時的需要。”

        Linus Torvalds是睿智的,做好自己能控制的。

        開源不僅僅代表源代碼的開放,開源更是一種工作方式,一種教育方式。因為有了開源,我們多了一種更好的合作共贏的工作方式;因為有了開源,讓更多從業(yè)者和學(xué)生能夠?qū)W習(xí)到更好的技術(shù)。

        3.代碼的品味

        Linus Torvalds說:

        有時候你可以換個角度看問題,重寫代碼,排除特例,完美覆蓋所有情況,這就是好的代碼。同時也很簡單,這是最基本的原則。細節(jié)非常重要。對我來說,我愿意與之共事的人,必須有好的品位。

        采訪中Linus Torvalds對比了以下2個函數(shù):

      Linux背后的思想
      Linux背后的思想

        小編有話說:

        大牛們總是對自己嚴格要求,不僅僅是要實現(xiàn)功能,并且要優(yōu)雅的實現(xiàn)。下面我們來看看采訪中Linus Torvalds對比的兩段代碼:

        1.不怎么漂亮的代碼

      Linux背后的思想

        上面的代碼,需要區(qū)分要移除的成員是否為鏈表的頭一個成員。需要單獨處理特例情況(要移除的成員為鏈表的頭一個成員)。這個函數(shù)比較好理解,這里小編就不做更多的解釋了,如有疑問,請?zhí)砑有【幬⑿沤涣鳌?/p>

        2. 好的代碼

      Linux背后的思想

        這個代碼完全不需要單獨處理特例情況,程序整體更加整潔、優(yōu)雅。其實現(xiàn)原理為:指針變量indirect保存的是鏈表成員結(jié)構(gòu)體中的next成員的地址(head指針也可這樣看),如下圖所示:

      Linux背后的思想

        所以變量*indirect就相當于是前一個鏈表成員的next成員(相對于要移除的成員來說)。當找到要移除的成員后,進行如下操作即可:

        *indirect = entry->next;

        本文整理自Linus的一次TED分享,詳情查看原視頻:

        https://mp.weixin.qq.com/s/qWz_8avqdWi3tVLRz5In8Q

      特別提醒:本網(wǎng)內(nèi)容轉(zhuǎn)載自其他媒體,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點。其原創(chuàng)性以及文中陳述文字和內(nèi)容未經(jīng)本站證實,對本文以及其中全部或者部分內(nèi)容、文字的真實性、完整性、及時性本站不作任何保證或承諾,并請自行核實相關(guān)內(nèi)容。本站不承擔此類作品侵權(quán)行為的直接責任及連帶責任。如若本網(wǎng)有任何內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系我們,本站將會在24小時內(nèi)處理完畢。

      贊(0)
      分享到: 更多 (0)
      網(wǎng)站地圖   滬ICP備18035694號-2    滬公網(wǎng)安備31011702889846號