• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            前些天同事問我會不會Python, 我猶豫了一下:不會。

            實際上我曾經學習過這個語言,當時還用它寫了些小工具, 可現在我對這個語言的印象只剩下它那特殊的縮進格式了。

            由此思考怎樣才算會一門語言?我想每個程序員都接觸過多門語言 , 那么究竟怎樣才算會這門語言了呢?
             
            會一門語言, 當需要它時, 應該能很快用該語言解決某個問題, 這個是最基本的。
            如果深入一點, 真正會一門語言, 我覺得需要滿足以下幾點:
            a. 有超過一年的實踐經驗
            b. 理解語言背后的機制, 最好閱讀過該語言標準庫的部分源碼
            c. 在最近一年里還經常使用它

            盡管我工作后只跳過一次槽,接觸的東西也比較有限, 但是細想一下, 也接觸過不少語言:
            Masm: 有段時間玩破解, 研究了下
            C/C++: 工組中一直用
            Objective-C:有段時間想搞跨平臺的界面庫,研究過這個語言
            C#: Win8  Metro下應用程序拿它做界面
            VB:剛工作的2年,用它開發過發證系統和一些小工具
            Java,JSP, HTML, JS: 學得都不深入,當時邊學邊用, 單獨做一個B/S架構的電話會議系統
            Python: 自學的, 但是后來沒怎么用
            au3:當時學得還挺深入, 看了不少語言標準庫的源碼,用它寫過一套自動測試框架

            發現自己除了函數式語言(Lisp, F#, Erlang, Haskell等), 其他的編程范型語言都有接觸, 當然函數式編程思想其實也有接觸,因為C++模板元編程也有函數式編程的影子。

            但是如果按照上面會一門語言的標準, 發現自己算的上"會"的語言只有一門C++, 其他語言多則使用近2年,少則使用過3個月, 大部分是用完之后就扔了, 只有C++是在工作中持續使用的。

            為什么我要定義上面的條件才算會一門語言?

            因為學習一門語言的語法其實很容易, 大部分語言語法可以一個月內掌握, 如果從C++轉到C#, 學習語言的基本語法部分甚至只需一兩天。學習一門語言最費時的部分是語言的框架和庫的學習, 這些部分沒有對該語言一兩年的編程實踐是很難深入的。比如C#語法本身是很簡單的 ,但是建立在該語言之上的各種框架和庫卻非常龐大和復雜, 比如你要成為WPF或是WCF的專家, 夠你研究三五年了。很多時候我們所謂的"會"某個語言可能只是會用這個語言寫些"hello word"式的入門程序, 根本就不理解背后的機制,如果真正懂一門語言,這門語言應該對你的編程風格(思想)產生影響。另外編程是項實踐活動,需要一直使用才不會生疏, 我們發現一門語言如果一年沒有使用, 對該語言的印象就僅剩語法部分了,如果連續3年沒有使用,就僅剩該語言的名字了。很多開發人員轉管理一兩年后想轉回寫代碼, 發現很難再回去了, 沒有敲代碼的感覺了。

            所以如果你已經會了一門語言, 并且想一直會這門語言, 請在工作持續使用。如果沒有機會使用, 自己給自己創造機會。

            作為一名C++程序員, 應該掌握哪些語言?

            個人覺得C++程序員除了C++之外, 最好再深入掌握一門腳本語言, 一來作為輔助工具,二來可以理解動態語言的一些特性。具體什么腳本語言看自己選擇了。一般入如果是游戲程序員, 當然首選Lua,因為它基本上是游戲的內定腳本語言。隨著Html5的流行,本來僅僅是瀏覽器使用的JS現在也是越來越受歡迎了。JS本身不支持面向對象,但是現在已經比較成熟的JS面向對象解決方案了。盡管隨著V8 的成功, Node.js興起, JS庫也越來越強大,但也僅限于服務端, 如果JS作為客戶端工具語言就不適合了。Python和Perl都是不錯的腳本語言, 如果你不是寫專業的文本處理腳本, 個人推薦學習Python, 因為它簡單易學, 格式清晰,面向對象,最重要的是它有強大的庫支持(包括GUI), 另外Python與C++ 交互也已經有很成熟的解決方案。

            如果你有精力,可以再學一門函數式編程語言 , 據說它會顛覆你的編程思想。

            簡單總結下, 語言不在多,在精。經常使用你覺得有價值的語言。深入掌握一門腳本。
            posted on 2013-08-17 19:32 Richard Wei 閱讀(4278) 評論(2)  編輯 收藏 引用 所屬分類: 編程感悟

            FeedBack:
            # re: 怎樣才算會一門編程語言
            2013-08-19 11:41 | tb
            看來以后還要加倍努力啊  回復  更多評論
              
            # re: 怎樣才算會一門編程語言
            2013-09-22 16:12 | 大島小柚子
            網上一個更加流行的觀點是,所謂精通一門語言,就是能夠為它寫編譯器。
              回復  更多評論
              
            久久永久免费人妻精品下载| 久久一区二区三区免费| 亚洲日本va中文字幕久久| 亚洲精品国产美女久久久| 国产综合久久久久| 国产精品无码久久四虎| 久久婷婷是五月综合色狠狠| 国产成人精品久久免费动漫| 伊人久久大香线蕉综合5g| 亚洲精品乱码久久久久久蜜桃图片| 久久国产精品久久| 狠狠色丁香久久婷婷综合_中| 国产午夜免费高清久久影院| 久久九色综合九色99伊人| 久久av无码专区亚洲av桃花岛| 久久久受www免费人成| 99精品国产在热久久无毒不卡 | 亚洲狠狠婷婷综合久久久久| 青青草原综合久久| 国内精品伊人久久久久av一坑| 久久久国产亚洲精品| 久久这里有精品视频| 99久久婷婷国产综合精品草原| 久久久久人妻一区二区三区vr| 久久婷婷人人澡人人爽人人爱| 久久99精品九九九久久婷婷| 久久久精品2019免费观看| 久久天天躁夜夜躁狠狠躁2022 | 国产精品岛国久久久久| 久久综合久久美利坚合众国| 久久久久亚洲AV无码去区首| 久久se精品一区二区影院| 9999国产精品欧美久久久久久 | 久久久精品午夜免费不卡| 久久ww精品w免费人成| 婷婷久久久亚洲欧洲日产国码AV| 久久99热这里只频精品6| 亚洲人成电影网站久久| 欧美色综合久久久久久| 性做久久久久久久久| 久久午夜夜伦鲁鲁片免费无码影视|