一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內(nèi)不再提示

程序員在大學里應該學習什么

工程師人生 ? 來源:工程師吳畏 ? 2019-01-04 08:44 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

首先我們得知道這問題的答案是個變量,他依賴于你的目標和天資能力,絕不唯一。當然大學的課程設置往往是唯一的,所以會有點矛盾。

這里最關鍵的東西是目標,大學學習只是達成最終目標高度的一個環(huán)節(jié),他應該為最終目標服務。

當然大學生很難清楚的知道自己的目標究竟在那里,但要總歸要大致知道自己的方向。

這個之所以關鍵是因為,這直接決定你應不應該學習某個東西。我是在做了很多年軟件后,才發(fā)現(xiàn)軟件和軟件的差別其實比馬和牛的差別還要大。

用流行的分類方法比如:前端開發(fā)、后端開發(fā)、.net開發(fā),Java開發(fā)等會讓人迷失焦點,

所以我一直覺得Barry W Boehm在《軟件成本估算:COCOMOII模型方法》里的分類方法對學習更有幫助。

在這個分類方法里軟件被分了三層:最底層是基礎結(jié)構(gòu)型(平臺)軟件的開發(fā);中間層次是開發(fā)工具、系統(tǒng)集成、中間件;最上層是終端用戶編程,也可以理解為一般應用的開發(fā)。

同時作者還補充了份數(shù)據(jù)說:在2005年95%的美國程序員是在做終端用戶編程。

這似乎把話題扯開了,但其實不是,關鍵要大致定位下自己的方向。因為對于目標是基礎結(jié)構(gòu)的程序員和目標是一般應用的程序員,他們要學習的東西差別很大。

Donald Knuth的《計算機程序設計藝術(shù)》不是沒用,但如果你花了2年把他啃了一遍回頭專門做應用開發(fā),那它真的用處不大。

至少和一個精通具體語言、框架、設計模式、面向?qū)ο?、UML的人比只是鉆研了《計算機程序設計藝術(shù)》的人反倒是在劣勢,雖然可能后者更花時間。

反過來講則是在算法密集型的工作里,那優(yōu)劣情形就會掉過來。

無疑的什么都精通最好,但人的時間是有限的,而軟件相關的知識是無限的,所以把學習聚焦在自己的目標上非常關鍵。

而目標是什么則要根據(jù)自己的實際情形來定。

假設說你真的感覺自己的能力挺好,就想做基礎結(jié)構(gòu)型的東西,去做MapReduce,去做操作系統(tǒng)等等,那首先要認識到的是干這個的人很少,競爭很激烈。

如果說在2005年美國只有5%的程序員是干這個的,那我估計今天在中國也頂多是這么個比例。

個人感覺,大學的計算機課程還真都是往這個方向培養(yǎng)人的,一旦真的走這個方向,那么大學的計算機課程還真用的上。需要好好學習,天天向上。

當然只上課也不行,把課上學的東西實踐起來也很關鍵(比如開源項目)。

這里麻煩的事情是,干這個的可能只有5%,很多人即使很努力也不一定擠的上去。

那么假設說一個人很現(xiàn)實,說:國內(nèi)排名靠前的幾所學校湊湊也就5%了,競爭太激烈,我不選這個目標方向,我還是95%里做做吧,那這個時候我應該學什么?

我個人認為主要要學好一些比較硬的,需要大塊時間學習的東西,而不要在花里胡哨的東西上多費時間。

硬的東西是指:

數(shù)據(jù)結(jié)構(gòu)和基本算法。

不管是不是做基礎結(jié)構(gòu)性軟件,基本的數(shù)據(jù)結(jié)構(gòu)和算法知識還是要有的。

很可能不太會有自己從頭寫數(shù)據(jù)結(jié)構(gòu)和算法的機會,但如果復雜度不知道怎么算,鏈表、紅黑樹、哈希表的差別都不知道,那就怎么都玄。

精通一門編程語言

具體是那個可以根據(jù)實際情形來選。但這里強調(diào)的是語言,不是IDE和框架??梢酝ㄋ桌斫鉃槊總€關鍵字背后的含義要整清楚。

這里的陷阱是學一堆語言,但那個都不精。

精讀一個有點規(guī)模的開源項目(至少要超過2萬行)

要找那種規(guī)模不太大,又比較有名的項目,一定要精讀,爭取每行都懂。

累積一定的代碼量

不算IDE幫助生成的,爭取也在2萬行之上。

面向?qū)ο蠛驮O計模式

這點最好配合著下一點一起做。

從頭考察一下某個框架

考察某個框架的內(nèi)存機制、線程機制等。

整個學習過程中最常見的陷阱是學會操作一堆IDE和框架的使用,但實際上這事兒價值不大,程序員的價值符合反木桶原理,啥都知道一點的,大多時候不如某個上精通的。

同時除非很特別的公司,大一點的公司并不期望畢業(yè)生過來就能干活。

有上面的基礎后,再突擊下,應該可以面對大部分公司的筆試和面試。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 程序員
    +關注

    關注

    4

    文章

    954

    瀏覽量

    30413
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    程序設計與數(shù)據(jù)結(jié)構(gòu)

    的地址)出發(fā),采用推導的方式,深入淺出的分析了廣大C程序員學習和開發(fā)中遇到的難點。 2. 從方法論的高度對C語言在數(shù)據(jù)結(jié)構(gòu)和算法方面的應用進行了深入講解和闡述。 3. 講解了絕大多數(shù)C程序員開發(fā)
    發(fā)表于 05-13 16:45

    如何在 樹莓派 上編寫和運行 C 語言程序?

    ,一本很好的書是BrianKernighan和DennisRitchie所著的《TheCProgrammingLanguage》。這本書對經(jīng)驗豐富的程序員和想學習C語
    的頭像 發(fā)表于 03-25 09:28 ?570次閱讀
    如何在 樹莓派 上編寫和運行 C 語言<b class='flag-5'>程序</b>?

    阿里云升級通義靈碼AI程序員,全面上線

    近日,阿里云宣布其備受矚目的通義靈碼AI程序員已正式全面上線,為開發(fā)者帶來更為強大和便捷的編程輔助工具。 此次上線的通義靈碼AI程序員,功能上實現(xiàn)了全面升級。現(xiàn)在,它支持VS Code
    的頭像 發(fā)表于 01-09 11:16 ?715次閱讀

    TMS320C6000程序員指南

    電子發(fā)燒友網(wǎng)站提供《TMS320C6000程序員指南.pdf》資料免費下載
    發(fā)表于 12-24 17:19 ?0次下載
    TMS320C6000<b class='flag-5'>程序員</b>指南

    TMS320C55x DSP CPU程序員參考補充

    電子發(fā)燒友網(wǎng)站提供《TMS320C55x DSP CPU程序員參考補充.pdf》資料免費下載
    發(fā)表于 12-21 11:36 ?3次下載
    TMS320C55x DSP CPU<b class='flag-5'>程序員</b>參考補充

    學習硬件的第一節(jié)課:學習讀懂原理圖

    學習硬件的第一節(jié)課:學習讀懂原理圖 讀懂原理圖對嵌入式軟件工程師和程序員尤為重要。深入細節(jié)之前請注意,對所有的嵌入式設計人員來說、能懂得硬件工程師創(chuàng)建和使用的來描述其硬件設計的原理圖
    的頭像 發(fā)表于 12-16 16:04 ?2412次閱讀
    <b class='flag-5'>學習</b>硬件的第一節(jié)課:<b class='flag-5'>學習</b>讀懂原理圖

    ub933驅(qū)動程序是基于I2c編寫的,請問驅(qū)動程序應該放在內(nèi)核drivers目錄下的哪個子目錄?

    ub933驅(qū)動程序是基于I2c編寫的,請問驅(qū)動程序應該放在內(nèi)核drivers目錄下的哪個子目錄,驅(qū)動注冊時應該使用什么函數(shù)?
    發(fā)表于 12-13 06:03

    UCD3138A64/UCD3138128程序員手冊

    電子發(fā)燒友網(wǎng)站提供《UCD3138A64/UCD3138128程序員手冊.pdf》資料免費下載
    發(fā)表于 12-09 14:42 ?0次下載
    UCD3138A64/UCD3138128<b class='flag-5'>程序員</b>手冊

    機械革命發(fā)布CODE AI程序員

    近日,英特爾新質(zhì)生產(chǎn)力技術(shù)生態(tài)大會在成都舉行,機械革命作為重要參展商帶來了多款明星產(chǎn)品引爆全場!其中更是AI PC軟件生態(tài)產(chǎn)品發(fā)布分論壇上,Intel、智譜、機械革命三方聯(lián)合發(fā)布了專為程序員設計的CODE AI程序員本,成為本
    的頭像 發(fā)表于 11-30 10:34 ?1108次閱讀

    Linux驅(qū)動程序程序員指南

    電子發(fā)燒友網(wǎng)站提供《Linux驅(qū)動程序程序員指南.pdf》資料免費下載
    發(fā)表于 11-22 15:53 ?0次下載
    Linux驅(qū)動<b class='flag-5'>程序</b><b class='flag-5'>程序員</b>指南

    AI編程工具會不會搶程序員飯碗

    AI編程工具可輔助編程,減少手動編碼,提升效率,對程序員有積極影響也有挑戰(zhàn)。程序員需深化技能、拓寬知識應對。長遠看,AI與人類程序員將共生共榮。
    的頭像 發(fā)表于 11-08 10:17 ?533次閱讀

    軟通動力子公司鴻湖萬聯(lián)助陣鴻蒙1024程序員節(jié)成功舉辦

    10月24日,武漢、成都、深圳等地政府指導下,鴻蒙生態(tài)服務公司舉辦了一場面向廣大開發(fā)者的盛會——鴻蒙1024程序員節(jié)暨鴻蒙原生應用交流會。軟通動力子公司鴻湖萬聯(lián)作為開源鴻蒙生態(tài)的重要參與者和貢獻者
    的頭像 發(fā)表于 10-29 15:49 ?753次閱讀
    軟通動力子公司鴻湖萬聯(lián)助陣鴻蒙1024<b class='flag-5'>程序員</b>節(jié)成功舉辦

    第五屆長沙·中國1024程序員節(jié)開幕

    據(jù)官方媒體報道,10月24日;? 第五屆長沙·中國1024程序員節(jié)湖南湘江新區(qū)開幕;本次中國1024程序員節(jié)以“智能應用新生態(tài)”為主題。設置有岳麓對話、技術(shù)英雄會、主題峰會及賽事、展覽等活動,一場
    的頭像 發(fā)表于 10-25 15:42 ?498次閱讀

    90后程序員的職業(yè)成長漫談

    開始,逐步了解公司的業(yè)務、文化,以及學習如何成為一名合格的職場人;19-21年,我開始負責一塊完整的業(yè)務,并逐漸成長為小組負責人; 2022年開始負責整個部門的架構(gòu),并且開始參與一些公司核心項目的設計與落地。 這一路走來經(jīng)歷的挫折與收獲
    的頭像 發(fā)表于 10-15 15:24 ?550次閱讀
    90后<b class='flag-5'>程序員</b>的職業(yè)成長漫談

    AI入門之深度學習:基本概念篇

    1、什么是深度學習 1.1、機器學習 ?? ? 圖1:計算機有效工作的常用方法:程序員編寫規(guī)則(程序),計算機遵循這些規(guī)則將輸入數(shù)據(jù)轉(zhuǎn)換為適當?shù)拇鸢?。這一方法被稱為符號主義人工智能,適
    的頭像 發(fā)表于 08-08 11:24 ?2431次閱讀
    AI入門之深度<b class='flag-5'>學習</b>:基本概念篇