-
1 # VeryGame
-
2 # 常明航標任工
分享自己個人的使用感受,任何一種語言,其實語法,用法都非常簡單,c語言語法更少,我認為關鍵的在於一個寫程式人的演算法,一個程式的健壯度。我是武俠迷,我的理解是不管什麼樣的神兵利器,在沒有高深內力的人手裡是發揮不出威力的,真正的高手無招勝有招,手中無劍,拿什麼都是劍。所以我認為任何的語言,軟體都是工具,並不是學習的核心,是實現的過程,真正要去深入探索學習的是程式的演算法,這個是魂,有內到外,有外有內才能渾然一體,無懈可擊。一個自學c語言10年不入門的門外漢的感悟,請參考
-
3 # 流年誤了誰
語言只是工具,是實現結果的一種手段,而非最終的目的。在明確目的的前提下,選擇適合自己的或者合適的工具是一種有效的方法!沒有絕對的必要性和選擇性,完全可以根據自己愛好去做!
-
4 # 大學生程式設計指南
作為從事嵌入式軟體開發十幾年的程式設計師,來嘗試著回答這個問題,嵌入式開發最基本的程式語言當屬於C語言了,這門程式語言最大的特點是靈活高效,現在大學開設相關的程式設計課程已經非常多樣化了,在十幾年前的大學幾乎大家接觸到第一門程式語言都是C語言,所以C語言在國內還是有著非常深厚的土壤,在當時C語言幾乎被當成萬能語言來使用,但是在一些場景上的確不是C語言擅長的,特別是一些應用需求變化比較大的場景,再後來隨著程式設計行業的演變,越來越多的高階程式語言開始走上歷史舞臺了,翻看程式語言的歷史很多程式語言其實已經誕生了很多年了,只不過在誕生的時候並沒有引起很多人的重視,就是還沒有等到風口出現。
C語言從特性上講更加適合底層開發。這點已經在很多龐大的工程上得到體現,最直接就是作業系統,參與這個巨大工程的主要程式語言就是C語言和彙編,當然彙編只是出現在一些特殊的場景,絕大部分還是C語言完成,之所以選擇C語言也和歷史背景有一定的關係,首先在作業系統誕生的年代可以使用的程式語言相對比較好,而且作業系統對於效能的要求極高於是C語言就成了最佳的選擇,由於其具備很強的靈活性所以很多功能充分利用C語言靈活的特性就能得以實現。
C語言由於太過靈活在實際程式設計過程中需要一定的經驗積累,才能真正意義上切入到專案中去。C語言在初學過程中整體看起來也就是幾個重要的語法點,但是在實際運營的過程中只是簡單一個宏的應用本身就是包含著太多的學問,所以C語言的學習只是單純的研究習題很難真正掌握真諦,現在開源社群的程式碼基本上都能拿到,可以找到一些關於C語言去實現的程式碼,一點點去研究,如果能看懂高手寫的程式碼這事情就能成一半了,先能看懂別人寫的優秀程式碼,然後再去思考模仿,最後才是真正意義上的創新,所以一個具備獨立工作能力加上有一定創新能力的軟體工程師起碼需要3年以上的時間,大部分人需要5年的時間達到這種級別,也就是企業在用人的時候在簡歷上寫到的高階軟體工程師的級別。
C語言是否真的過時了。老生常談的一個話題,現在的C語言在市場絕對數量的崗位非常多,但是和高階語言相比比例上已經失調,這點其實和國內這些年在大力發展網際網路行業有一定的關係,網際網路企業開發主要開發內容是應用和後端伺服器,這裡面主要涉及的程式語言有java,php,python,C++較多,C語言相關少了許多,現在的C語言已經退居幕後了,在系統底層維護以及在特殊的場景用的比較多,像華為的通訊裝置裡面大部分程式語言還是C語言,但是隨著硬體效能的提升在某些場景下已經從C語言換成C++了,兩者在效能上的差異已經變得微乎其微了,在某些對於效能要求比較高的場景,依然還是首選的程式語言。
回覆列表
首先我要告訴大家的是:第一,學習無捷徑!對於學習程式設計而言,你現在的付出將來都是有回報的。但是,學習C語言也需要方法。
1) 分清主次
學習C語言最忌諱的就是不分主次,這是絕大多數學習C語言的同學都會犯的錯誤!我們剛開始學習的時候只需要將那些最重要的、最核心的學會就已經很好了!先將最精髓的東西提煉出來,再將整個C語言學一遍,從全域性上把握C語言。對於那些次要的,有需要再學,沒有需要也可以不學。
2) 一定要多上機,多“敲”程式碼
程式設計是一門實踐性的學科,絕對不是理論。如果不動手“敲”程式碼的話,永遠都學不會程式設計。很多問題只有在“敲程式碼”的時候才能發現,才會有更加深刻的體會、領悟和理解。而不是靠死記硬背書中的注意點,那樣真的很痛苦。我在學習程式設計的時候從來都不會刻意記憶什麼注意點,這些知識點都是在不停“敲程式碼”的過程中,自然而然地融入我的身體中的。
你們一定要記住一句話:“程式是寫出來的,不是看書看出來的!”
3) 要“敲程式碼”,必學盲打
盲打是學習程式設計最基本的技能。就算你C語言學得很好,達到了“思想在鍵盤上飛舞”的境界,但是如果你不會盲打,那你想“飛”也“飛”不起來!所以,不會盲打會非常影響你的學習效率。
4) 要學會記筆記
程式設計需要不斷地積累。我們一定要學會模仿別人優秀的程式碼、優秀的演算法,然後將它記下來。一定要站在巨人的肩膀上學習。但是我們的記憶能力是有限的,時間長了難免會遺忘,所以一定要學會記筆記。一有心得、體會、感悟就寫下來,這些都是很珍貴的。
我們在記筆記的時候,如果眼前沒有計算機則可以先寫在紙上,但事後一定要將它整理成電子版。整理成電子版看起來會很方便、舒適,還可以隨意地增添和刪改,儲存時間也長。