說(shuō)到計(jì)算機(jī)專業(yè)的小伙伴,提到課程大家都基本上都有一個(gè)念頭,課程開(kāi)的太多了,根本就聽(tīng)不懂,或者似乎能聽(tīng)懂點(diǎn),也是似是而非,到底哪些是重點(diǎn),那些是可以只是了解下就行。因?yàn)楦鶕?jù)目前的大學(xué)開(kāi)設(shè)的課程所有課程都能搞的很好,幾乎很難,所以還是要抽調(diào)出重點(diǎn),識(shí)別出如何進(jìn)行學(xué)習(xí)。
那么最該學(xué)的是哪三門課程?
計(jì)算機(jī)組成原理,一門編程語(yǔ)言,數(shù)據(jù)結(jié)構(gòu)與算法
為啥要學(xué)好這三門課程?
一.計(jì)算機(jī)組成原理,放在第一位,很多人覺(jué)得很老套,其實(shí)再牛的程序也在運(yùn)行在計(jì)算機(jī)上,計(jì)算機(jī)的工作的原理吃透是第一位的,其實(shí)很多寫(xiě)了很多年代碼的程序員都覺(jué)得現(xiàn)在的學(xué)生要學(xué)習(xí)編程還是要把計(jì)算機(jī)的組成原理搞明白,理解計(jì)算機(jī)如何存儲(chǔ),為啥內(nèi)存大了運(yùn)行起來(lái)更加順暢,CPU原理是什么,內(nèi)部的原理是啥,其實(shí)越是到了大型程序的最好,決定因子還是cpu和內(nèi)存的問(wèn)題,舉個(gè)簡(jiǎn)單的例子,有些程序的執(zhí)行效率不高,其實(shí)隱含的意思就是你的程序太占用cpu的資源了,還有經(jīng)常說(shuō)你的程序太吃內(nèi)存了,因?yàn)楝F(xiàn)代的計(jì)算機(jī),無(wú)論多牛內(nèi)存也是有限制的,不停的吞噬內(nèi)存,不停的內(nèi)存泄露就會(huì)造成系統(tǒng)運(yùn)行起來(lái),變得慢悠悠的,大家可能覺(jué)得有些機(jī)器長(zhǎng)時(shí)間不關(guān)機(jī),機(jī)器運(yùn)行的越來(lái)越慢,等全部關(guān)機(jī)重啟一次之后情況會(huì)變好多,因?yàn)橹貑⒁馕赌愕某绦騼?nèi)存全部清零,從頭開(kāi)始了,開(kāi)機(jī)了內(nèi)存處于一個(gè)比較理想的狀態(tài),當(dāng)然變慢還有硬件的部分的原因,在這里還是說(shuō)出來(lái),了解計(jì)算機(jī)組成原理的重要性。
二.學(xué)一門自己比較喜歡的編程語(yǔ)言,在這里不想討論哪種語(yǔ)言孰好孰壞,小編建議學(xué)習(xí)c/c++/java其中的一種,這也是目前大學(xué)校園開(kāi)課比較多的語(yǔ)言,C語(yǔ)言幾乎是所有語(yǔ)言的鼻祖,也是大學(xué)開(kāi)設(shè)課程最多的語(yǔ)言,特別是老譚的C語(yǔ)言程序設(shè)計(jì)印刷量都破紀(jì)錄了,其實(shí)在這不提倡用老譚的學(xué)習(xí)編程,當(dāng)然是如果為了考級(jí)用的話,也就另當(dāng)別論了。C語(yǔ)言學(xué)習(xí)的難點(diǎn)在指針這塊因?yàn)橹羔樀拇嬖趯?dǎo)致不安全性,也導(dǎo)致在指針管理上面難度大了許多,在內(nèi)存管理都加大了難度,但是一旦學(xué)好了,用起來(lái)方便許多,有志于架構(gòu)師方向的還是建議學(xué)好C,
(1). C++ 幾乎是面向?qū)ο笳Z(yǔ)言里面,語(yǔ)法規(guī)定最繁瑣的語(yǔ)種,學(xué)起來(lái)的難度在這三種語(yǔ)言里面也是最大的,但是是很多技術(shù)大牛的最愛(ài),泛型編程玩嗨了,覺(jué)得特有意思,而且目前很多的比較牛的軟件底層實(shí)現(xiàn)很多都是基于C++的,大家常見(jiàn)的安卓的底層框架,以及瀏覽器的內(nèi)核框架支架基本上是用c++搭建的,因?yàn)樵谛屎涂蚣茉O(shè)計(jì)上C++正好是一個(gè)平衡語(yǔ)言。
(2). java是目前國(guó)內(nèi)就業(yè)范圍最廣的語(yǔ)言,也是學(xué)的最多的語(yǔ)種,就業(yè)范圍也是變得無(wú)處不在。java是一種學(xué)起來(lái)容易,很難成為頂級(jí)高手的語(yǔ)言,學(xué)過(guò)java框架的小伙伴,都覺(jué)得java的一些開(kāi)源代碼框架寫(xiě)的很棒,但是要達(dá)到那種級(jí)別不是靠年限或者精力能設(shè)計(jì)出來(lái)的,真需要點(diǎn)悟性在其中了。想盡快的就業(yè),學(xué)習(xí)java是一個(gè)不錯(cuò)的選擇。
三. 數(shù)據(jù)結(jié)構(gòu)和算法,為什么單獨(dú)要單獨(dú)拿出來(lái)說(shuō)說(shuō),因?yàn)楹芏嗳硕加X(jué)得學(xué)習(xí)編程需要邏輯思維,其實(shí)邏輯思維更多是在算法上面體現(xiàn),基本的算法,其實(shí)就是數(shù)據(jù)結(jié)構(gòu)里面,鏈表,表,二叉樹(shù)等的刪除,插入算法,大型的復(fù)雜的算法也是在這個(gè)基礎(chǔ)上進(jìn)行延伸,擴(kuò)展。成為一個(gè)合格的程序員,數(shù)據(jù)結(jié)構(gòu)是必須要掌握的,里面是邏輯思維的集中體現(xiàn),同時(shí)建議剛開(kāi)始學(xué)的小伙伴,先把數(shù)據(jù)結(jié)構(gòu)基本算法搞定就可以,沒(méi)必要刻意為了學(xué)習(xí)算法而去學(xué)。
一度教育榮老師:大學(xué)里的課程開(kāi)的太多了,根本就聽(tīng)不懂,或者似乎能聽(tīng)懂點(diǎn),也是似是而非,到底哪些是重點(diǎn),那些是可以只是了解下就行。大學(xué)時(shí)光,學(xué)點(diǎn)東西才是硬道理,荒廢了,豈不可惜,如果沒(méi)有學(xué)好的,可以實(shí)習(xí)期間出來(lái)參加培訓(xùn),時(shí)機(jī)是比較好的