03.07 有人說學了C語言,兩天就能把Java學會,再過兩個星期就可以找工作了,是真的嗎?

趙彬衫


每種語言都有自己的特點和時代背景,由於機緣吧,寫了幾年c/cpp, 目前主要用java, 自己也寫web前端

個人認為如果c/cpp掌握的夠好對你日後學習其他語言來說確實有非常大的幫助,可以讓你很快的上手,但這樣講其實有些片面

1. 語言是工具,背後的廣泛的相關知識才是你成為大牛的基礎

之所以c/cpp會讓你很快上手其他語言,是其比較“低級”,想要成為大牛你需要掌握非常多的語言外的知識,例如操作系統的內存管理機制,文件系統與緩存機制,進程管理等等

所以與其說c/cpp起了作用,不如說是你在進階的過程中積累了無比珍貴的基礎知識

2. c/cpp的調試比較痛苦,但這鍛鍊了你的分析能力

做過unix/linux或者嵌入式開發的同學都懂,調試一個問題真的很崩潰,一個segment fault會讓你直接抓狂,可以說一個大牛是調試出來的!

廁所手機碼字有點費勁,就不多說了,總結一下吧

c/cpp會讓你很快上手其他語言,但前提是你有足夠的理解和沉澱並建立起了自己的知識體系,只會個helloworld那還是白費!

計算機語言和人類需要都是溝通工具而已,核心是你的溝通邏輯還有閱歷


京東愛撿漏


我是一個經歷過Java誕生和看著他繁榮的人。

我對C語言很熟,對於16 位DOS下的編程,我可以透過C語言看到彙編的語句。但我可以明確告訴你,懂C語言對學習Java很有幫助,但有鴻溝!有一道坎就是 面向對象編程。

我想他說的學了C語言,兩天學會Java。說的應該是C++,他們兩很像,幾乎是親兄弟。從C++過渡到Java沒難度。

但要說兩週能找工作,還真是有點託大。這就像有人說,我兩天就學會圍棋,兩週後可以參加比賽一樣。說法沒錯,但結果可以預見。


gzluke


作為一個做過十幾年代碼的老司機,學習編程如果真的這麼簡單就不會導致現在各大公司還在喊著招不到人的情況了,雖然編程領域裡面有觸類旁通的說法,但這個說法只是針對於對於一種編程已經掌握到一定程度了,不是簡單的學過或者做過就可以輕鬆的轉向別的編程語言了,換句話來講如果一種編程語言學的馬馬虎虎,也不要指望第二種編程語言能好到什麼程度,編程語言不在於多,而在於精,只要在一個方向做到極致,找到編程的感覺,再切入新的編程語言的確會快很多。

正常來講如果已經掌握一種或者多種編程語言再去學習新的編程語言,就那筆者的經驗來講差不多十天左右就能開始跟著做項目,為什麼會有這種判斷不在於編程語言本身有多簡單,主要來講編程語言只是一種工具而已,真正關切到編程核心的東西是編程思想,不同的編程語言編程思想是想通的,所以切換到新的編程語言只是切換的編程語言的語法,編程思想還是哪些,所以從心理上就存在優越感,有了底氣學習起來自然就快了許多,其實很多編程語言雖然具體不完全的一致,但指導思想基本上一致,所以學習了基本的語法之後直接開始上手做東西就可以了,當然在做的過程中如果遇到不懂的直接查資料,郵局不太好聽話,叫現編現買,其實有些只是語法細節不一樣而已。

不同的編程語言之間切換的前提是編程思想已經掌握,所以樓上所說的學了C語言,兩天就能把java學會這種論斷起碼不是業內人士的歸納,即使有了編程思想也不可能兩天的時間就能搞定一門新的編程語言,不符合編程語言的規律,學了一種編程語言和學明白一種編程語言是完全兩種不同的概念,現在還有人喊著掌握多少種編程語言才顯得多厲害,真正厲害的是編程思想和算法,這兩個核心搞定了才叫真正懂編程。

希望能幫到你。


大學生編程指南


先說說我自己的背景。03年開始接觸html,之後vb.delphi.c.c++.至於後面大學教的java已經壓根沒有學了,學過一段時間彙編(彙編沒有作品)那時候都跟同學一起寢室打魔獸了。大學畢業後,一些簡單的程序,vb6.0可視化編程也只用代碼來寫完,而不需要添加控件,改控件名這類繁瑣的事情,可移植性就高了很多,直接文本或者email直接發送對方,複製到編譯器裡就OK。

接著再說說這個問題吧。其實換一種語言是非常方便的,但是前提是你要理解語言。初學者會發現,學了一本書,壓根只會幾個函數,幾個條件語句,幾個循環語句,沒辦法實現製作程序什麼的,然後百度幾個源文件,自己改改,就裝大神了。

然後玩了段時間,換個語言,又是繼續這樣。直到最後,碌碌無為。

我記得我玩編程那會,國內基礎資料很多,大多重複,真正遇到一些問題就沒什麼資料了,比如delphi,很多問題百度根本沒有答案,只能發email給谷歌,等待回信。後來認識了個國外的大神,因為地域差異,每次都是一倆天才能回覆,週期比較長。

08年提交一份百度空間的漏洞代碼,可以使空間癱瘓,後來給了個紀念日和獎狀,我就聽從父母安排去經商了。也就沒有玩編程了。但是後來像天天消除這類手機遊戲,編個手機程序自動消除,還編寫了幾個手機程序就再也沒有作品了。直到前段時間編寫了一個給家裡孩子學算數的程序。

說這麼多是,編程就是一種思維,而不是語言。你看我幾年沒玩,真正又想編的時候又能快速上門。首先要知道自己想編什麼程序,構思一個框架,然後逐步完成,在完成的過程中,對內的簡單通常大家都會。對外的先是查相對接口的函數,參數。比如最早的外掛,你都不知道怎麼去讀取,修改鎖定內存地址,你又怎麼能實現呢。至於語言來說,只是換個環境,換個說法,其實還是差不多意思的,所以才有精通一種需要,再學習其他語言就很快速。比如你叫王五,小名鐵蛋。那麼王五是你,鐵蛋也是你。c世界裡,你是王五。java世界裡,你是鐵蛋。叫法不一樣而已,但是你還是你。

總得來說,編程,是一種思想。就像蓋房子一樣。語言就是材料。你要什麼房屋結構的,就要什麼材料。

如果有用,給我點個贊,謝謝,手機打這麼多字真的很累的


紀善生


有人說?這個人是誰?吹牛不打草稿,這也太誇張了吧。對於沒有接觸過Java的人來說,兩天能夠把Java的軟件JDK安裝好、環境變量配置好就已經很不錯了。2天后能夠按照例子把helloworld程序從頭到尾操作運行一遍已經很好了。怎麼創建文件、怎麼編譯、怎麼運行等。

有C語言基礎學習Java是容易一些,畢竟有許多相同之處,不過C語言是面向過程的,而Java是面向對象,用法上有很大的不同,Java和C++更相似一些。

學習Java要有足夠的興趣和耐心,堅持不懈的努力,至少要學習兩三個月左右吧,若要精通掌握估計要半年左右。學習Java要腳踏實地動手練習,敲代碼,多做項目,這些都是需要時間積累的,沒有經過一定的時間訓練,只掌握一點皮毛根本做不出東西來。

學習編程一定要多做項目,有了一定項目基礎之後找工作更容易一些,如果簡歷上沒有項目經歷,估計連面試的機會都沒有。

學技術要多實踐少吹牛,不要以為自己能夠運行helloworld程序就吹自己學會了Java,有些人就是這樣,吹牛特別厲害,真正幹活時就迷茫了。

以上是本人的觀點,希望我的回答對你有所幫助,想了解更多知識,請關注本頭條號,謝謝~


技術閒聊


我先談談自己的一些體會吧。開始學習的是DOS下的編程,入門是BASIC,十分輕鬆,然後用QB寫程序,因為可以編譯成EXE文件。在大量的解決問題中,遇到問題就要查資料,當時還上不起互聯網,所以查資料的方法就是看報紙雜誌,再將看到的方法加以創造性地運用,這樣悟出了很多技巧,比如編寫遊戲時採用直接讀寫內存比其他語句輸出快得多,如果調用匯編語言讀取鍵盤輸入可很好解決鍵盤掃描中的中文輸入問題等等,這樣就可以編出別人很難編的程序,並且運用速度也比別人快。有了這些基礎後,再學其它DOS下的編程語言都很輕鬆。後來應聘到一工廠做程序猿,用的是一種新的語言,一邊看書一邊操作,三天就能用了,遇到問題需要某種功能時就查書,因為工廠是做數據庫管理所以很快就能根據部門要求寫程序了。編程入門容易,但要編好就難,算法不好有時雖然能實現有關功能,但效率完全不同,比如根據數據庫編寫一個有權限管理的菜單,算法不好的要等很長時間,而好的時瞬間出來了,所以優秀的程序員能創造性設計算法提高效率。有了QB等多種語言的基礎,後來才去學習C/C++,也比較快入門了,轉向Windows後是用ⅤB寫程序效率高了很多,為了考軟件設計師看了下Java,發現基本的東西僅僅是格式上的區別,做題主要看對算法的理解而不是語言,最後在沒有VB選項時且不怎麼用Java時也算考過了。

所以,語言的遷移是比較簡單的,當你必須用某種語言來工作時,你會很快適應,但要用得好則要靠算法或者說技巧的積累,再加上創造性,因為編程本身是創造性工作,靈活創新十分重要,否則有些功能就編不出來,有些問題也會拿不出好的方案來。

最後編程是青春飯,必須儘早積累經驗,編程是十分需要創造性的工作,不僅要青春還要IQ,會編程的人很多,但編得好的很少。


新熱機發明者曾祥雲


從業Java十來年的老司機我來說說我的看法。精通C或者C++只能加速你學習,幾天學會Java並找到工作不現實。Java語法只是基礎,只會Java語法想找到工作幾乎不可能。

Java的強大離不開生態的支持,因此那些生態框架你還的學。比如Spring、MyBatis、Hibernate等。

Java主要方向還是Web,而Web開發前端知識你還是需要學習,Javascripts以及它的框架或者組件、html/html5、jsp、css等。

最後我就拿我前段時間招人的要求,需要Java基礎紮實、能熟練運用Spring、MyBatis、jQuery。這裡有個隱含的條件那就是JSP、html、Javascripts和css必須會,不要求很精通,但是要會用。看看這個條件裡除了Java基礎,你還需要學習那麼多?幾天不可能學完。

我的觀點並不是說Java比C好,每種語言都有自己的優劣。我一直覺得語言沒有高低之分,學語言的人有高低之分。


從零跟我學Java


說的不對。不是兩天就夠了,而是根本不用學。

但前提不是學會c語言,是要玩的比較熟。

用c的人開始用java時會驚歎,這東西太方便了,什麼庫都有。c語言裡任何的數據結構都要靠自己寫。還得顧及內存的洩露。

所以單指語言層面,會c的人,完全不用學習,就可以掌握java。當然,有一個前提,得明白麵向對象思想。

其實反過來不行。這裡反對此說法的人應該都是沒真正用過c的人。不過話說起來,會c了,學什麼語言都差不多,都不用怎麼學。再說了,編程語言本來就不用學,都是一樣的。object c稍微有些不同。重要的是不是學會,而是要用好它不容易。


會意而忘食


這種說法絕對是門外漢的說法,學會一門編程語言對於一個智力正常的人來說不是難事,但是你要真正把它用好是很難的,幾乎所有人都會說話寫字,難道所有人都能成為作家。編程語法並不難,難得是背後的原理和邏輯,就像當初我學習譚浩強的C語言,覺得計算機語言就是幹這個 做些乘法表格之類的,還不如我心算快呢。當你學了linux編程以後你才明白當初為什麼要去練習譚浩強的課後題。可是你只有課後題的水平是找不到工作的,不過沒有課後題的基礎也學不了linux編程。所以只會計算機語言的語法是沒有什麼用的,你不懂網絡基礎,操作系統原理,學那個還不如打王者榮耀


哈登龍


“學會”是一個很搞的詞,在職場上,“會”是最容易讓人跌跟頭的。

什麼叫會?你剛開始學車,教練教你用離合、剎車、油門、方向盤,就這幾樣東西的使用基本一個下午就“會”了,但你真的會開車了麼?敢上路麼?上了路不會撞人麼?

如果C語言學得很精通,用兩天時間可以大致瞭解Java的要領,但至少也要經過一兩個像樣的項目,才能進入開發領域。至於是不是可以找工作,還取決於很多因素,僅僅掌握一兩門程序語言是遠遠不夠的。就算你只是去做普通的coding,別人也是張口就問你有多少行代碼量,即使精通C語言,轉向Java也不是兩星期就可以輕易辦到的事。

對編程來說,某種語言只是一個工具,這沒錯,但你不能小瞧這個工具。汽車也只是個工具,但初學者肯定幹不了賽車手的活,別說賽車手了,剛學會開車你出租車也開不了吧。編程語言跟這不是一個道理嗎?

不要再輕易相信那些“包會”的傳聞了,這多半在某些類型的廣告中出現。無論什麼職業,要幹好都不是容易的事情,需要從基礎學起,一點一點去積累,3、5天或者一兩週就可速成的事兒,不管有沒有基礎,基本都是靠不住的。


分享到:


相關文章: