• <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>
            隨筆 - 60  文章 - 5  trackbacks - 0
            <2011年10月>
            2526272829301
            2345678
            9101112131415
            16171819202122
            23242526272829
            303112345

            常用鏈接

            留言簿(2)

            隨筆分類(42)

            隨筆檔案(60)

            文章檔案(2)

            我收藏的博客

            搜索

            •  

            最新評論

            閱讀排行榜

            評論排行榜

            原文地址:http://www.cprogramming.com/whyc.html

            為什么學習C

            Why Learn C?

            現在大家在用的計算機語言的數量多得可怕。從高級語言(比如VB)到低級語言,有非常多的選擇(Perl,Ruby和Python語言,對于很多任務的實現都是不錯的選擇)。Java已經成為了一些項目非常受歡迎的語言,某種程度上也是因為它擁有大量的API和虛擬機機制提供了比較好的安全性。(內存垃圾收集器也是一個非常不錯的功能,可以使得程序員更有效率。)
            There are an awful lot of programming languages available right now -- everything from the extremely high level (such as Visual Basic) to the low level power of assembly, and a good variety of specialized options in between (Perl, Ruby, and Python are good choices for many tasks). Java has also become quite the hot programming language for some tasks, in part because of its large API and in part because the virtual machine provides some elements of security. (Garbage collection is another nice feature and can make programmers much more efficient.)
            然而,學習c語言編程,也有很多很好的理由。第一,歷史悠久:C語言已有30多年的歷史了(譯者注:到現在已有近40年了),能找到大量的有效的源代碼。這也意味著有很多可以學習的例子,也有很多是可以直接拿來用的代碼。而且,語言的很多問題都已經說明的很清楚--它可以更好的理解,并且你可以找到很多很不錯的教程。另外,對于C,你可以獲得很多你能理解的看法和見解。
            Nevertheless, there are some good reasons to learn to program in C. First, age has its advantages: C has been around for 30 years, and there is a ton of source code available. This means there's a lot to learn from, and a lot to use. Moreover, many of the issues with the language have been clearly elucidated -- it's well understood, and you can find a lot of tutorials available. Plus, with C, you get lots of strong opinions mixed with insights that you can understand.

            由于歷史的原因,C做為Unix的一個系統編程語言,C已經成為了一門通用的編程語言。有時候用C語言來表達一些編程上的想法,大部分人都會感覺到比較舒服。
            As a result of its age and its use as the language of system programming for Unix, C has become something of the lingua franca of programming. C is a great language for expressing common ideas in programming in a way that most people are comfortable with. Moreover, a lot of the principles used in C -- for instance, argc and argv for command line parameters, as well as loop constructs and variable types -- will show up in a lot of other languages you learn so you'll be able to talk to people even if they don't know C in a way that's common to both of you.

            第三,C是比較接近機器語言。
            Third, C is reasonably close to the machine. When you're working with pointers, bytes, and individual bits, things like optimization techniques start to make a lot more sense. There's also utility in knowing exactly how something works underneath the hood -- this helps a great deal when something you're trying to do in a higher level language seems way slower than expected, or just doesn't work at all. You also tend to get a better picture of advanced topics like exactly how networking works. A higher level language will make it a little bit simpler, but it'll be harder to understand what's going on, and when things stop working, it's much better to know exactly what's going on so you can fix it. Additionally, if you like computer science as a discipline, or just like knowing how things work learning the details of the system is great fun.

            實際上,很多有趣的編程都可以用C來做--比如,系統軟件和數據管理系統(Berkeley DB)。如果你想寫一個比較復雜的web程序,C也是一個很不錯的選擇。如果你想寫一個非常好的,快的,C也是很好的選擇。你可以用C來寫整個操作系統,想用Java來做這個事情是非常難的,對于腳本語言來說是幾乎不可能的。而且C是一門非常簡潔精煉的語言,它使得非常有趣的編程看起來更優雅,你的編程之旅將會有一個很好的開始。
            In fact, a lot of fun programming is done in C -- for instance, system software and data managers such as Berkeley DB. If you want to be able to do more than write a simple web app, C is a great language. If you want to write a great, fast game, C is again a great choice. You can write an entire OS in C. It'll be much harder to do so in Java, and nearly impossible in a scripting language. And the language, being succinct as C is, will probably make your fun program more elegant looking to boot.


            我對于這篇文章所談的話題,想補充幾點。
            1、學好C,可以幫助理解其他語言中的一些概念。
            比如Java中的引用的概念,如果理解了C語言中的指針的概念,就能很好的理解“引用”這個概念了,而不理解指針的概念想把引用的概念理解的很透徹,是比較難的。

            2、學會了C語言,再學習其他語言會感覺到更輕松。
            Object-C,Java,C++等等很多高級語言的語法都與C是相似的。學會了C后,基本上只要花上一周的時間了解一下其他語言的特性,就基本上可以看懂其他語言的源代碼了。

            3、從現實角度來考慮,學好C,找到一份好工作的可能性也是大大增強,特別是對于剛畢業的大學生,或工作經驗比較少的程序員。現在需要有C語言基礎,擅長于C語言的,工作崗位也是比較多。比如拿現在非常流行的iPhone,iPad等設備的應用程序,開發語言就是Objective-C語言。Objective-C是蘋果Mac OS X、iOS平臺的開發語言,Objective-C是基于C語言的,增加面向對象的相關特性。你可以認為Objective-C就是另一個版本的C++,也就是采用了與C++不同的語法,但也實現了面向對象。你有了C語言的基礎,再學Objective,難度就不大了。
            你可以到那些招聘網站去看看,查查iPhone相關的開發工程師的要求,是不是很多都要求有C/C++的基礎和經驗。
            還有一些系統開發和底層比較相關的,很多都是需要用C語言開發的。拿信息安全行業來講,很多安全產品都是用C語言來開發的。還有游戲行業很多都是用C或C++。

            還有一點,很多初學者認為學習C很難。其實我想說的是難并不是計算機語言的問題,難的是因為你用計算機解問題的思維還沒建立起來。因為你進入的是一個新的領域,以前沒有接觸過計算機編程,對于怎么用計算機來解決現實中的問題的這種思維你還沒有建立起來,畢竟用計算機解題的思維,和用數學解題的思維還是有些不一樣的,所以你會覺得學習C語言很難。
            如果你在學習C語言的同時,再進行一些程序員的思維訓練,我覺得情況就會大有改善。
            posted on 2011-10-20 17:07 黃劍父 閱讀(2618) 評論(1)  編輯 收藏 引用 所屬分類: 編程學院

            FeedBack:
            # re: 為什么學習C 2011-10-21 18:22 Glueless full lace wigs for black women
            雖然現在jave,php等很火,但是c是所有語言的根本,一定要學好,贊同  回復  更多評論
              
            精品无码久久久久久国产| 久久久久精品国产亚洲AV无码| 久久棈精品久久久久久噜噜| 丰满少妇人妻久久久久久 | 亚洲国产成人久久综合区| 一本综合久久国产二区| 久久综合精品国产二区无码| 久久99免费视频| 狠狠色丁香久久婷婷综合蜜芽五月| 亚洲AV日韩AV天堂久久| 久久精品成人免费观看97| 亚洲AV乱码久久精品蜜桃| 久久高清一级毛片| 国产V综合V亚洲欧美久久| 一本一道久久a久久精品综合| 久久久久久午夜成人影院| 亚洲国产小视频精品久久久三级| 久久久免费精品re6| 怡红院日本一道日本久久| 欧美亚洲国产精品久久高清| 久久777国产线看观看精品| 97香蕉久久夜色精品国产| 国产亚洲美女精品久久久| 成人综合伊人五月婷久久| 久久精品aⅴ无码中文字字幕不卡| 亚洲午夜久久久精品影院 | 一本一道久久精品综合 | 91久久精品视频| 国产亚洲精久久久久久无码77777| 久久亚洲国产成人精品无码区| 久久99国产综合精品免费| 日韩乱码人妻无码中文字幕久久| 伊人色综合久久天天人守人婷| 国产精品免费久久久久久久久| 欧美久久精品一级c片片| 久久久久无码精品国产不卡| 久久久av波多野一区二区| 国产∨亚洲V天堂无码久久久| 高清免费久久午夜精品| 久久久久久狠狠丁香| 伊人色综合久久天天|