為什麼大部分高校還在只教C C Java,而不教更加強大的Rust Go Scala

時間 2021-05-07 06:13:38

1樓:楊旻睿Jessica

最簡單的原因是前三門語言有很穩定的市場需求,豐富的庫,成熟的人才體系。功利點說,後三者跟你的工資無關,但前三者可以決定你的薪水。後三者除了scala有比較穩定的需求(spark),其他兩個要麼是生產力低下(要是沒學過指標,怎麼理解rust的所有權機制?

到頭來還不是要去學前三樣?),要麼是根基太不牢固(別跟我說重劍無鋒,大巧不工這種話)。沒有需求作為動力,只有一廂情願的熱情,這事成不了。

還有就是前三者是遞進關係,不是並列關係。

2樓:Jin Photography

說起這個問題,C可以教,畢竟入門

但是畢業後,一部分同學肯定不會從事計算機類工作,而Excel處理資料在大部分行業是必不可少的,這個時候VBA優勢就出來了

為啥不教VB,又容易學以後又可以用

再者,別說VB,好多計算機專業的,連Office三件套都用得不熟練

3樓:麥文學

學校學的是方法而不是細節。

學會了用筷子, 吃魚吃花生吃飯都可以用筷子吃。

大魚小魚都可以用筷子吃。

河魚海魚都可以用筷子吃。

吃花生用筷子, 吃黃豆蠶豆四季豆也可以用筷子吃。

大學宿舍有哪些可以引起極度舒適的東西?

筷子夠古老了吧。

麥文學:C 菜鳥怎麼配置 GTK+3 VSCODE 及其他東西在 WINDOWS 10 下跑個 HELLO WORLD 視窗?

麥文學:發帖紀念一下: C++ 基於 WASAPI 的錄音程式終於弄好了

學方法的時候, 您不需要在乎用的是木頭筷子還是象牙筷子, 竹筷子還是銀筷子, 反正您用的是筷子。 學的是怎麼用筷子。

malloc一次性最大能申請多大記憶體空間?

麥文學:C 端序或尾序或位元組序(Endianness)的小練習麥文學:C 指標的小小實驗

學得越基礎, 就越能學到實際的東西。

4樓:avoidant

一句話:沒教材。

長說那就是:學校的課不是想開就開。一門課,要進培養計畫,那是學院裡各種力量鬥爭後妥協的結果。

乙個本科生四年各種課時之和是定死的,很難在總量上增加。總量上的微小調整都會造成教室、機房等資源的重新分配,會變成不同學院間的鬥爭。所以一般是用新課代替舊課,這也是改革呀,沒有大佬推動根本進行不下去的,原來的課件、題庫都得重新搞。

別說這些,就是你往機房電腦上裝個新的程式設計環境,沒有領導發話,你試試,恐怕機房的老師都會給你臉色看。

至於回答學校不教是因為老師不會的,那完全是站在學生角度想當然了。

我還從來沒有見過哪個老師因為不會就不帶某門課的。課安排給你,你不會也得會。

尤其是這種程式設計類課程,一通百通,又不難。只要有教材,再把自己的講授範圍嚴格限定在教材例題的範圍內,搞懂並不是一件難事。

只比學生早會12個小時的老師遍地都是。

5樓:熊大的表哥

C和C++已經很強大了,學會了這兩門語言,別的都沒有什麼問題,每門語言的知識點都差不多,只是語法不同而已,你學會了C和C++,學別的語言真的小菜一碟,相反,假如第一門學的是有gc機制的語言,可能連指標的概念都搞不清,也搞不清那些函式/類為什麼這樣封裝

6樓:蕭淇澳

先說是不是,首先,後者並不比前者強大,只是更靈活,或者說效率。第二,也不是沒學校教,很多校企合作辦學類的也是教這些的。例如我們當年不學python,但是有幾個校企合作專業是教的,我還溜進去聽過課。

再說為什麼,因為目的不一樣,大部分學校的目的不是為了對標企業,而是達到畢業要求(當然這個做法有待商榷)。軟體類專業的核心課程是組成原理,網路工程,作業系統這些,換言之,大學培訓的目的是讓你知道什麼是現代計算機,而不是怎麼寫程式。

7樓:

FP教不下去,大家都是從命令式語言入門,受命令式「毒害」太深。既沒什麼人能教FP,大部分學生也覺得FP難,學了對於找工作沒有幫助。如此惡性迴圈,要想「課改」太難。

雖然命令式仍然是CS其他課程程式設計所使用的主流正規化,但是FP依然是CS裡面不可或缺的一塊。我相信乙個學過FP的人,起碼對於「遞迴」這個概念的理解比只會命令式程式設計的人要深刻得多。

p.s. 自從貴清Haskell關門大吉以後,我估計國內已經沒有開Haskell的學校了吧?

8樓:Capablanca

Go這種語言是非常多設計缺陷的,適合用來取代php成為一種易學易用提高生產力的工具,但是不適合用來作系統性教學。

Scala過度複雜化了標準庫,不適合引導初學者學習重點。

Rust對於初學者來說太難了,沒有必要過早的把某些複雜的概念帶到初學者面前,一樣會讓新手抓不住重點。

我依然認為c和lisp這樣的語言較適合入門程式設計教學的語言。lisp是抽象化了底層實現專注於程式設計思想,c是專注於解釋程式設計和底層執行之間的關係,用兩個學期教會學生兩個語言,可以為學生之後的程式設計學習打乙個好的基礎。

9樓:時一

目前國內普遍大學教育的目的還是為了使在校學生在畢業的時候,可以有比較好的乙個就業的機會.所以一般會增加一些目前招聘比較火的一些崗位技能.

任何程式語言都是程式設計師的工具,工具分種類,在不同的環境下使用不同的工具可以提高生產效率.

如果學有餘力,嘗試去自學一些更先進的工具,可以讓自己在解決問題的時候比別人擁有更多的思考方向.

10樓:reinno

難道不應該推薦SICP的scheme麼。

先學習c的經驗是讓我感受到各種沒有道理,C和Go都是非常實用主義的語言,各種妥協和特例。從學習者的角度很難提煉昇華其中理論性的部分。這和大學程式設計教育的目的我覺得並不是完全一致的,畢竟學習的是程式設計而不是計算機原理或者直接就上工了。

先理解細節再在之上構築整體,還是先理解大體在深入細節是兩條不同的路徑,也未必非要從前面那條來走。

最後,容我隆重推薦面向8歲以上兒童的scala教育專案kojo...逃

11樓:燃趣

我覺得可能有以下幾個原因

教學需要

因為高校要教的電腦科學這門學科,你需要學的是程式設計思想和對程式設計這件事的理解。而不是新語音對工作和程式設計中帶來的便捷性,給個語法糖,感覺甜甜的,為啥不知道。

雖然學校學的工作我也沒怎麼用,所以考慮下面還有一種可能。

教學資源

因為題主提到的幾種語言都是很有年頭的了,教學資源豐富,每年老師也不用換講義什麼的,不然每齣乙個新語音學校老師新學乙個,結合第一點來看沒什麼必要,不如選擇經典的教學。

畢竟校招考的也都是演算法,你學個新語言也許面試可以加分,但是筆試不過也沒有機會。安心學習就好。

12樓:編碼那些事

1、學校傳統所致,大部分老師都是學C語言或Basic語言出身的,對於一種新語言,學習成本代價較大,且要講好一門新語言,還需要專案背景,這是乙個難點。

所以這些因素導致了,畢業生們所學的東西與實際工程應用嚴重脫節,就拿C語言來說,多少年了,現在大部分還在用著老版本的譚老師的教材,學完了,也許只記得黑乎乎的控制台程式了,裡面只能出個Hello world,讓你寫個帶視窗的程式,也許就無能為力。

13樓:

從題主顯擺時尚語言名稱和斷言RustGo可以代替C/C++看像是計算機專業低年級學生。在學完各種專業課程後,一般不會問這種問題了。高校選擇基礎程式語言要滿足計算機專業教學體系需要。

C/C++是後續資料結構,演算法,計算機體系結構,作業系統,編譯原理,計算機網路等各個課程中使用的工具。即使Rust/Go真能代替C/C++,估計沒有老師能用Rust/Go做所有專業課的練習。

歷史上出現過很多流行一時的語言,還在不斷出現新的語言。計算機專業學生在學會C/C++掌握計算機程式語言基本原理和技術後,其他語言可以選修和自修很快掌握。

14樓:沈華

Linux是用C語言寫的,如果不會C語言,我覺得作業系統課程學起來吃力。

微控制器有時候得用C來寫。

用函式式程式設計描述資料結構、編譯原理的課本,很難找到。函式式程式設計國內會的真不多。

15樓:位元流

我覺得像本科階段學啥語言都行,當然我覺得C是我最喜歡的乙個語言之一。

學習思想才是最重要的,學會如何去運用才是最重要的誠然語言之間有差別,就像中文英文一樣,不管學哪一門語言。

我們學好了一門另外的也會融會貫通,每個語言在某些方面都有它的長處。

就像Github上的wenyanlang對吧,你不能說沒用啊,比起其他語言它的長處很明顯啊,還能學一波古文。

爸爸媽媽再也不用擔心我的語文,文科生也能程式設計。

16樓:丁哥開講

說幾個點吧:

程式語言作為乙個工具,好用即可。

老師們自然要選自己順手的程式語言。

高校學習偏重於理論描述。

理論描述注重的是邏輯推理。

每種語言的邏輯推理部分是相同的。

所以,對高校教學來講,選何種語言真的不重要。

17樓:據說他姓feng

計算機本科應該較兩門(剔除組合語言):

1、C/C++

2、Lisp類

因為缺少了2,中國絕大部分畢業生對程式設計的理解十分狹義。

18樓:白質

首先,老師他也得會這幾門語言啊。

其次,Rust你不會c++的話,他教本科生是不是有點太難了。Go和scala具有代表性嗎。本科教的程式語言重要的是入門和程式設計思維,不是教你怎麼去做乙個專案。

19樓:彈弓小攻

真的覺得Rust、Go這些強大?其實都是差不多的,每種語言在特定領域都挺強。教學關鍵是教會你電腦科學思維和在軟體開發過程中解決問題的能力……

20樓:quadrum

你對強大有什麼誤解嗎。我寫後端用spring全家桶一套工具鏈要啥有啥,用go能行嗎,資料庫驅動找都費勁,類似jpa抽象介面也沒有,關鍵是個個元件都還是自己拼裝的,有沒有衝突還得自己測試,沒開發呢先把自己累死了。

21樓:

現在學校都開設有資料科學與大資料技術這個專業,對應的也開始教大資料處理工具的課程,比如spark,hadoop。scala也加入了教學中

22樓:北南

是MIT吧,以前程式設計課用scheme,都弄的大家哭爹喊娘的。

後來被逼無奈,改到了python。mit的孩子們也這麼傻嗎?難道非要老師手把手教if else?

我覺得也不能全怪scheme,主要是後面資料結構,演算法,作業系統等等課程設計和編排的太次,例子全是命令式的。。。。

23樓:天南海北

因為她們不會

就像樓下說的大學老師不在企業工作,所以他們學的知識都比較老舊接觸的東西也是企業好幾年前用到的。

所以想要學到新知識你可以去大公司實習那大公司實習也不是很容易不是每個人都有機會

所以那你可以去買網課自學研究,也可以參加培訓班學習,總之要學學到先進的知識還是需要付出一定代價

最後祝你好運,需要學習資料也可以找我呦免費分享哈

為什麼大部分70,80後對大部分藝考生持有偏見?

Meazza 我認為一方面是認為藝考是上大學的捷徑,另一方面也算是嫉妒或者心理不平衡吧!三大 中傳 浙傳等這些學校的學生確實算是藝考方面的天之驕子,但也有不少普通學校甚至是工科強的學校弄藝術專業的,某種意義上確實算是捷徑吧!還有就是藝考生學習上相對比較自由,而且藝考完後拿到合格證基本上就進入大學了而...

為什麼大部分人不滿現狀,卻依舊還在生活在現狀裡面不求改變

動動嘴皮子最簡單的,而且發洩不滿都是對著別人發洩,乙個是把原因都推到周圍人或者現實身上,二個是顯得自己命苦可憐讓對方同情。 遊雲 不滿意很簡單,因為它只是乙個念頭,比你張開嘴說出 不滿意 這三個字還簡單。改變很難,因為它是持之以恆的行為,你能努力哪怕一天都都很難。 徐悅揚 不滿有兩種,一種是這山望著...

為什麼大部分人都嫌貧愛富?

紅燒番茄 人們喜歡說嫌貧愛富,但其實刻在人們基因裡的是嫌弱愛強。這樣的現象很普遍只要你細心觀察。比如學校裡乙個差生跟乙個優生發生了爭吵打架或者其他事情,其實是優生在搞事情,但大家第一時間會主觀的本能傾向於相信優生而比較忽略差生,特別是這個差生平時就給人的印象很差。當然遇到好的老師們能對事不對人的處理...