回覆列表
  • 1 # 暗黑程式設計師

    C程式設計師大部分都是做偏系統底層開發的,如果評判的標準是越偏底層越優秀,那麼曾經那些做過組合語言的程式設計師,是不是更優秀呢?

    所以,以程式語言的擅長領域來區分程式設計師的優劣,肯定是不推薦的。

    優秀程式設計師的判斷標準

    優秀程式設計師,什麼樣的標準是大家公認的。

    我之前聽說過很多程式設計師稱Linux之父是大神,在很多領域大神都是對最優秀那一批人的一種尊稱,所以Linus是被大家所熟知的一位最優秀的程式設計師。

    Linus是憑藉什麼能力得到大家的認可的呢?

    有兩點,一是目前最流行的linux系統的創造者,二是最流行的程式碼管理工具git的創造者。這兩項成就,鑄就了Linus在IT界的神話。

    所以不難看出,評判一個程式設計師是否優秀可以暫時的定義為,該程式設計師是否有拿得出手的開源專案。

    在Linux系統之前,已經存在了很多計算機科研者,Linux系統也是站在前者的肩膀上發展起來的,那麼之前的那一批人是否可以稱為優秀呢,很顯然,他們也很優秀。

    所以,我們對優秀程式設計師進行修正一下,對IT界有突出貢獻的人,我們都可以稱之為優秀的程式設計師

    我們都知道,還有一幫人在人們眼中很神祕,技術也很強大,大家也都很崇拜,那就是計算機黑客們,他們做的事情或許不夠光明,對IT界也沒有多少正面的貢獻,但是我們仍然稱他們是優秀的程式設計師

    總結

    根據優秀程式設計師的判定標準來看,最優秀的程式設計師,不是C程式設計師,而是彙編程式設計師,懂彙編的這幫人更偏底層,更早研究計算機,對IT界貢獻最大

  • 2 # 趙萬能

    其實也不能這麼說,c最牛的地方是高效率的執行和記憶體超靈活使用。但是由於c不是一個面向物件的語言,相對更適合流程性應用的過程開發。c也普遍被應用在前段的嵌入式開發中。

    c可以直接訪問硬體,一些作業系統會開發環境都是用c寫的。從前的WPS就是用c寫的,但是也沒感覺我是執行效率就高多少,只是WPS的確比ms office更節省安裝儲存空間。

    不過理論上系統開銷小很多是一定的。

    c的劣勢

    寫c的認你通常會比一些高階語言的更嚴謹。編譯的時候很多東西你如果沒考慮和很多異常處理以及防止被利用的安全問題,也許就很容易被別有用的人利用。這個也是通訊底層程式設計師的一點體會。

    你硬體更新的時候也許要進行大改版。必經為了節省系統開銷,很多東西都做到了極致。但是當硬體架構無法滿足的時候,c基本上太多東西都要重新做。

    希望回答對你有幫助。

  • 3 # 程式設計師阿照

    哪有最優秀的程式設計師,C語言程式設計師被很多人覺得優秀是因為,他們大都是做底層開發的,對作業系統、編譯原理等非常熟悉,所以這種基礎深厚的人給其他人的感覺就是很厲害。相反,對於寫前端的,他們不一定對作業系統等有很深入的瞭解,當然說到這裡有人反駁我,但是請大家想想,一個寫java web的需要看底層CPU是怎麼傳送指令的嗎。所以,給人的感覺似乎是用其他語言的人有點浮於表面。

    但是任何領域開發者都有其他領域的開發者所不具備的素質,寫前端的對於業務邏輯、面向物件、人機互動、使用者建模這些東西的理解是底層開發者望塵莫及的,底層開發者對於CPU指令、作業系統原理、硬體結構等的理解也是前端開發者比不上的。

    所以沒有最優秀的程式設計師,計算機領域這麼多,分支無限,每一領域都有神一樣的人物。而我們所要保持的態度,不是爭個高低,欲尋求一種超強語言秒殺天下,而是要在自己喜歡的領域內儘可能變得傑出。沒有人是最強的,用C語言的人再強也比不過Dennis Ritchie,永遠保持謙卑的心,才能消除技術前進道路上的瓶頸,不然就會迷失在自己的世界裡,整天覺得自己很厲害,而其實在其他人眼裡就是一個小丑(不是說題主哈,舉個例子而已)。

    如果覺得自己前端水平突破天際了,就去找個專業的前端工程師聊個天,就會覺得“我靠,怎麼那些名詞我都沒聽過,我的程式碼怎麼毫無邏輯可言”

    如果覺得自己底層水平突破天際了,就去找個專業的底層工程師聊個天,或者去發郵件跟Linus說Linux這裡不行那裡不行,保證Linus瞬間讓你清醒。Linus對於技術問題可是毫不顧忌對方的面子和心理承受能力。

    所以適時的被打擊一下,才能不斷進步。當然也不能這樣:“啊,我簡直就是個渣,還是回家賣紅薯去吧。”

    綜上:努力去做自己喜歡的領域裡水平超高的程式設計師吧~技術是沒有頂峰的,只可能比別人超前一塊。

  • 4 # 我是憨批亀

    學無止境,其實哪有最優秀的程式設計師,只是技術不斷提升而已。C語言程式設計師被很多人覺得優秀是因為,他們大都是做底層開發的,對作業系統、編譯原理等非常熟悉,所以這種基礎深厚的人給其他人的感覺就是很厲害。相反,對於寫前端的,他們不一定對作業系統等有很深入的瞭解,當然說到這裡有人反駁我,但是請大家想想,一個寫java web的需要看底層CPU是怎麼傳送指令的嗎。所以,給人的感覺似乎是用其他語言的人有點浮於表面。

    但是任何領域開發者都有其他領域的開發者所不具備的素質,寫前端的對於業務邏輯、面向物件、人機互動、使用者建模這些東西的理解是底層開發者望塵莫及的,底層開發者對於CPU指令、作業系統原理、硬體結構等的理解也是前端開發者比不上的。

    所以沒有最優秀的程式設計師,計算機領域這麼多,分支無限,每一領域都有神一樣的人物。而我們所要保持的態度,不是爭個高低,欲尋求一種超強語言秒殺天下,而是要在自己喜歡的領域內儘可能變得傑出。沒有人是最強的,用C語言的人再強也比不過丹尼斯·裡齊(C語言之父),永遠保持謙卑的心,才能消除技術前進道路上的瓶頸,不然就會迷失在自己的世界裡,整天覺得自己很厲害。只有不斷學習,不斷提成自己,才是最重要的。

  • 5 # 100只喵的日常

    在任何比喻都有缺陷的情況下,做一個比喻,這個比喻可能會誤導人。c語言就像降龍十八掌,至剛至猛,威力無窮。c++就像九陰真經一樣,強調“虛勝實,不足勝有餘”。彙編就只能是易筋經了。stl就是獨孤九劍,至於哪個語言是葵花寶典呢?我還沒想出。

  • 6 # 首席程式碼執行官

    有道理。

    一般而言,開發軟體最困難的是底層,也就是核心或者是引擎之類的,比如作業系統核心,瀏覽器核心,資料庫引擎等,考慮效率問題,這些所謂的底層絕大多數都是C語言開發的。所以人們會有一個固有思維,最優秀的程式設計師是C程式設計師。最困難的開發任務是C語言開發的,那麼最優秀的程式設計師大部分是C程式設計師。因果關係成立嗎?好像也是有一些因果關係的。

    但是細想,也不盡然。各種語言都有優秀的程式設計師。比如大資料hadoop核心主要就是java語言開發的,你能說開發它的程式設計師不優秀?Apache基金會中那麼多java專案,都是非常複雜和優秀的,開發它們的程式設計師不優秀嗎?

  • 7 # 1bit愛學習

    因為,他們大多數都會接觸過或者使用過C語言。

    周圍十多年開發經驗的人,由於專案需求,個人愛好,基本上都接觸過了很多語言。

  • 8 # 楊米易

    因為是最接近底層硬體,C語言僅次於彙編的存在。微控制器,ATM等超低硬體配置無法執行其他高階語言編寫的程式(幾K或者幾兆的儲存和執行記憶體),其次就是執行穩定,只要不斷電可能幾年都在穩定執行。這是C語言優秀之處,對硬體要求不高且能最大程度的利用硬體資源,且執行效率僅次於彙編。為了能在極端惡劣的硬體環境下執行,那對程式設計師的要求就極高。C語言程式基本都是優秀的程式設計師,但優秀的程式設計師未必是C語言程式。

  • 中秋節和大豐收的關聯?
  • 繼承父兄基業的孫權憑啥能夠與白手起家的曹、劉相提並論?