如果精通一門編程語言,再去學(xué)習(xí)其他編程語言是不是很容易?
網(wǎng)友解答: 從開始入行做編程前前后后經(jīng)歷了差不多有5種左右的主流的編程語言,留下最深印象的還是第一門編程語言,后面編程語言基本上按照套路走了,遠(yuǎn)沒有第一次學(xué)習(xí)編程的拿著興趣勁,第一次安裝
從開始入行做編程前前后后經(jīng)歷了差不多有5種左右的主流的編程語言,留下最深印象的還是第一門編程語言,后面編程語言基本上按照套路走了,遠(yuǎn)沒有第一次學(xué)習(xí)編程的拿著興趣勁,第一次安裝完linux系統(tǒng)在上面寫完第一行hello world,當(dāng)天興奮的都沒睡好覺,好像擁有了全世界,后來慢慢在linux上面寫一些簡(jiǎn)單的C語言程序,學(xué)到函數(shù)的時(shí)候覺得能看懂C語言所有代碼了,于是借著興奮勁頭去圖書館弄了一本linux內(nèi)核源碼解析,帶著興趣勁真還咬牙搞了100多頁,后來實(shí)在看出下去了,才知道人外有人天外有天,學(xué)會(huì)了基本的語法距離真的高手還差的遠(yuǎn)。
后來隨著學(xué)習(xí)C語言的深入,特別是學(xué)習(xí)到指針,然后切入到鏈表的學(xué)習(xí)更是一頭霧水,中間還賭氣放棄了一周的時(shí)間,后來覺得這么做實(shí)在對(duì)不起自己又開始拿起來死磕了,徹底的明白還是在網(wǎng)上找到了西電林銳博士的C/C++算是系統(tǒng)掌握了,后邊再遇到指針基本上都是一路趟過,倒不是這本書有多神效,可能在某個(gè)階段看到其中一個(gè)細(xì)節(jié)點(diǎn)就把之前缺失的東西給補(bǔ)全了,當(dāng)然要能達(dá)成這種效果,需要堅(jiān)持不懈的努力。
技術(shù)部有個(gè)同事,在公司呆了也有幾年的時(shí)間了,崗位也換了幾個(gè)了,最后下定決心想玩技術(shù),開始半年的時(shí)間幾乎什么都不開竅,有多少次機(jī)會(huì)想換掉,后來還是心軟再給次機(jī)會(huì),有一天在搞代碼的時(shí)候突然做了很多讓人很意外的事情,好像明白了很多東西,現(xiàn)在慢慢也能獨(dú)立做一些功能模塊了,再次驗(yàn)證一個(gè)道理一個(gè)人即使看著很笨只要持之以恒的做一件事,早晚會(huì)有開竅的一天。其實(shí)這個(gè)和學(xué)習(xí)第一門編程語言是一樣的道理,只要堅(jiān)持下來學(xué)會(huì)了后邊切換到別的編程語言是水到渠成的事情。
說到精通編程語言這是一件極其難做到的事情,基本上編程語言能達(dá)到熟練做項(xiàng)目的程度就夠了,而且再去切入到第二種編程語言的時(shí)候即使很難也會(huì)覺得比第一次開始學(xué)習(xí)要簡(jiǎn)單許多,接觸到的第二種編程語言是C++,當(dāng)然C++的語法學(xué)習(xí)是在學(xué)校中完成的,在企業(yè)真正開始做C++項(xiàng)目上來就傻眼了,這些泛型編程類的東西在學(xué)校壓根就沒接觸過,只好老老實(shí)實(shí)的把基礎(chǔ)再次拿出來研究去看,即使這樣學(xué)起來也比之前要快很多,畢竟已經(jīng)有C語言做鋪墊了,差異在語法細(xì)節(jié)以及面向?qū)ο缶幊趟枷肷?,過渡期只用了很短時(shí)間,就跟上大部隊(duì)了。
用第三種編程語言做項(xiàng)目,用的是Java語言,有了C++做鋪墊學(xué)起來基本上沒有多少障礙,基本上不到一個(gè)月的時(shí)間就能跟著做項(xiàng)目了,當(dāng)然一種編程語言不是能隨隨便便就能搞透徹,這都需要時(shí)間的磨練,只不過入門相對(duì)容易點(diǎn)罷了,因?yàn)槿魏我环N編程都有其內(nèi)在的東西。編程學(xué)到一定程度,編程語言就是工具般的存在,核心東西就是編程思想和算法設(shè)計(jì)思想。但懂了一種編程語言之后學(xué)別的會(huì)快很多這是事實(shí)。
希望能夠幫到你。
網(wǎng)友解答:首先菜農(nóng)在這里說明會(huì)近20種編程語言(據(jù)說目前發(fā)布的有600多種編程語言),但它們都跑不過C語言的影子,其他語言只要對(duì)比和C語言的不同即可,若再學(xué)一種語言,只要再對(duì)比所學(xué)過語言之間的不同或細(xì)微變化即可。
如各種需要都會(huì)遵守最基本的語句:
if,if else,while,do while,for,switch case…………
雖然不提倡goto語句,但在匯編語言里jmp指令會(huì)不處不在。
實(shí)際上任何語言必須滿足匯編語言的需要,即編譯后的匯編必須正確運(yùn)行。
故一切相對(duì)于匯編的高級(jí)語言,差距和書寫習(xí)慣不會(huì)太大。
下圖是很久以前,在PIC單片機(jī)上,由于當(dāng)時(shí)很難找到一個(gè)C語言編譯器,就自己動(dòng)手用“宏匯編”編寫了“類C”的宏語言(如下圖所示)。它也包含了全部的基本語句(if,if else,while,do while,for,switch case…………) ,并且之間可以任意嵌套無窮級(jí)。
像菜農(nóng)自己也曾做過“編程語言”(還用x86的宏匯編做過“HCC”語言),學(xué)多少語言都不是問題,因?yàn)閷W(xué)習(xí)新語言,只是找新語言與其他語言的不同即可。
菜農(nóng)認(rèn)為目前所有的編程語言的switch case語句都不太完美。
因?yàn)樵谇度胧筋I(lǐng)域,一個(gè)switch case可能就是一個(gè)完整的運(yùn)行過程,那么要經(jīng)歷初始化過程(如InitCase),所有滿足case條件的應(yīng)該有一個(gè)歸口(如ExecCase,可以不需要此歸口),而不像現(xiàn)在大家都完成后到一個(gè)歸口。
菜農(nóng)認(rèn)為:
不管你會(huì)多少種編程語言,也不管你精通哪個(gè)編程語言。
只要你不會(huì)或不知道匯編語言,就是一種缺憾!
因?yàn)槟悴恢栏呒?jí)語言編譯后(匯編語言)是如何具體運(yùn)行的,基本語句是如何執(zhí)行的。
當(dāng)然你也不必會(huì)或知道匯編語言,也敢自稱編程高手!只要你敢保證沒人拍磚!
如果你“精通”(網(wǎng)絡(luò)名言:說“精通”的人一定是菜鳥)了一種編程語言,其他編程語言的入門門檻肯定會(huì)降低許多。