计算机专业怎么学编程计算机什么专业学编程
編程基礎的知識主要有五個部分:
- 數據結構
- 算法
- 計算機網絡
- 學習一門編程語言
- 操作系統
一、數據結構怎么學?
打好C語言基礎是在為學數據結構做準備,C語言學得差不多了,就可以開始學習數據結構。
數據概念
細分為以下這五個方面
- 數據
- 數據項
- 數據元素
- 數據對象
- 數據類型
數據:
數據是信息的載體,是描述客觀事物的符號,是計算機中可以操作的對象,是能被計算機識別,并輸入給計算機處理的符號集合。數據不僅僅包括整形、實型等數值類型,還包括字符及聲音、圖像、視頻等非數值類型
數據項:
構成數據元素不可分割的最小單位
數據元素:
1.是數據的基本單位,在計算機程序中通常作為一個整體考慮而處理
2.也被稱為元素,或稱為記錄,結點或頂點。
3.一個數據元素可由若干個數據項組
數據對象:
是性質相同的數據元素的集合,是數據的一個子集
列如:
整數數據對象是集合N={-1,0,1,23,4..}
人員表也可看做一個數據結構
它們四個之間的關系 數據>=數據對象>數據元素>=數據項
對 C 語言還不太熟練的時候,學習數據結構時可以找一本經典的數據結構書,看完一個數據結構后用 C 語言將其實現。開始時的實現肯定會有困難,那么請 google 下會有很多優秀的數據結構源碼的。
小白輕松入門c語言13天 :C語言基礎教程【源碼,筆記,軟件,案例全,初學者最值得收藏】
C語言數據結構 :C語言數據結構 培養架構師思維
二、算法怎么學?
一.入門系列
推薦理由:通過圖片,打比方等通俗易懂的方法講述算法的書籍讓你能達到懂一些基礎算法,線性表,堆棧,隊列,樹,圖,DP算法,背包問題等,不要求會實現,但是看過以下這些書對于之后實現算法打下堅實的思維基礎。
1.1《啊哈!算法 啊哈磊》
1.2《算法圖解》
1.3《妙趣橫生的算法(C語言實現 第2版)》
1.4《趣學算法》
1.5《大話數據結構》
二.進階系列
推薦理由:在基本入門算法書的調教和領悟下,漸漸懂得一些基礎算法是什么,現在就是進階系列可以參閱,力薦《算法導論》《編程原本》,經典款不解釋,當然這些書最好是在入門后再看合適,還有王曉東那本算法書也很不錯,有幾個版本,可以挑選看還附有課后答案。
2.1《算法導論英文版第三版》
2.1《算法導論中文版》
2.2《算法 (第4版)》
2.3《數據結構與算法 Java版》
2.4《Algorithms算法概論中文版》
2.5《算法心得-高效算法的奧秘(原書第2版)》
三.算法題系列
推薦理由:一些題海講解具體的算法思想應用在題目上是怎么求解的,想刷題的可以看看結合各大OJ+leetCode一起學習。多刷題總不會錯。
3.1《挑戰程序設計競賽(第2版)》
3.2《算法藝術與信息學競賽(清華大學出版社)》
3.3《算法謎題》
3.4《編程高手箴言》
四.實用工作系列
推薦理由:在面試和工作中經常要用到的算法講解,以及一些過來人工程師的心血總結,建議在面試前翻看,提升思維廣度,外加一些實操。
4.10《算法與數據結構-實用算法基礎教程》
4.1《編程之法 面試和算法心得》
4.2《程序員代碼面試指南 IT名企算法與數據結構題目最優解 》
4.3《算法Ⅰ-Ⅳ(C++ 實現)–基礎、數據結構、排序和搜索(第三版)》
4.4《程序員實用算法》
4.5《編程珠璣(第2版)》
五.算法奇門遁甲系列
推薦理由:包括一些可能在圖形學,游戲設計,數據挖掘方面的算法書,偏冷門,乃大佬可以賞讀的系列書籍
5.1《matlab數學建模算法》
5.2《常用數據挖掘算法總結及ython實現》
5.3《機器學習十大算法》
5.4《計算機程序設計藝術 The Art o Comuter rogramming 第2卷(第3版)》
5.5《算法百科 Encycloeia o Algorithms》
總結:例如對于平衡樹,可能你跟著書本的代碼實現之后,過陣子你就忘記,不過這不要緊,雖然你忘記了,但是如果你之前用代碼實現過,理解過,那么當你再次看到的時候,會很快就記起來,很快就知道思路,而且你的抽象能力等等會在不知不覺中提升起來。之后再學習紅黑樹啊,什么數據結構啊,都會學的很快。
https://visualgo.net/en 可視化學習網站
https://algs4.cs.princeton.edu/home/ 算法官網
三、計算機網絡怎么學?
書籍入門可參考以下:
如果你是非計算機專業的小白,對于計算機網絡一竅不懂,連最基本的HTTP都沒聽過,那我建議你先去看看《網絡是怎樣連接的》。
網絡是怎樣連接的
這本書會從總體為你講清楚計算機發送請求的整個過程!
圖片收集網絡
四、學一門編程語言
推薦java和python,java怎么學都不會錯,想在學習時間上短點選python。
java相關:
|
學習教程 |
第1階企業級開發—Java基礎+javawe |
第1階段配套資料https://pan.baidu.com/s/1Jz1SLGSfd_Fa2wzIjNPKyA |
|
1 |
java零基礎入門到精通24天 |
https://www.bilibili.com/video/BV18J411W7cE/ |
|
2選一 |
30天精通JavaWeb(IDEA版) |
https://www.bilibili.com/video/BV1qv4y1o79t |
|
2選一 |
超系統的JavaWeb快速入門(27天-eclipse版) |
https://www.bilibili.com/video/BV1mE411h7Co |
|
學習教程 |
第2階企業級開發—基礎框架 |
第2階段配套資料https://pan.baidu.com/s/1fQL9MDMp0xBU-C2BsikfQw |
|
1 |
Maven從基礎到高級應用 |
https://www.bilibili.com/video/BV1Ah411S7ZE |
|
2 |
Spring高級之注解驅動開發詳解 |
https://www.bilibili.com/video/BV1hE411o7w7 |
|
3 |
SSM框架Spring+SpringMVC+MyBatis全覆蓋_SSM整合 |
https://www.bilibili.com/video/BV1WZ4y1P7Bp |
|
4 |
版本控制Git |
https://www.bilibili.com/video/BV1MU4y1Y7h5 |
|
5 |
springboot全套 |
https://www.bilibili.com/video/BV1Lq4y1J77x |
|
6 |
全面學習Mybatis插件之Mybatis-Plus |
https://www.bilibili.com/video/BV1rE41197jR |
|
學習教程 |
第3階段企業級開發—微服務框架 |
第3階段配套資料https://pan.baidu.com/s/1hs_I2G9ANpYIpFFniatlCQ |
|
1 |
ELK高級搜索 |
https://www.bilibili.com/video/BV1Nt4y1m7qL |
|
2 |
mongodb基礎到進階 |
https://www.bilibili.com/video/BV1bJ411x7mq |
|
3 |
rabbitMQ |
https://www.bilibili.com/video/BV15k4y1k7Ep |
|
4 |
Redis入門到精通 |
https://www.bilibili.com/video/BV1CJ411m7Gc |
|
5 |
分布式開發框架Dubbo |
https://www.bilibili.com/video/BV1VE411q7dX |
|
6 |
分布式開發框架Zookeeper |
https://www.bilibili.com/video/BV1M741137qY |
|
7 |
全面解剖RocketMQ和項目實戰 |
https://www.bilibili.com/video/BV1L4411y7mn |
|
8 |
容器化技術Docker精講 |
https://www.bilibili.com/video/BV1CJ411T7BK |
|
9 |
微服務開發框架SpringCloud |
https://www.bilibili.com/video/BV1eE41187Ug |
|
學習順序 |
第4階企業級開發—項目實戰 |
第4階段配套資料https://pan.baidu.com/s/1XiJMkEfaEWqk6GeFJzKsiA |
|
1 |
傳智健康項目 |
https://www.bilibili.com/video/BV1Bo4y117zV |
|
2 |
黑馬程序員iHRM 人力資源管理系統 |
https://www.bilibili.com/video/BV18A411L7UX |
|
3 |
Java項目《萬信金融》企業級開發實戰 |
https://www.bilibili.com/video/BV1Ub4y1f7rk |
|
4 |
好客租房項目 |
https://www.bilibili.com/video/BV1sZ4y1F7PD |
|
5 |
品優購V1.3.1項目實戰 |
https://www.bilibili.com/video/BV1mi4y1L7Ht |
|
6 |
Java大型分布式微服務閃聚支付項目 |
https://www.bilibili.com/video/BV17v411V79c/ |
|
7 |
Java集信達短信平臺實戰 |
https://www.bilibili.com/video/BV1Jb4y1d7GY |
|
學習教程 |
第5階工作后進階提升—選學-【JDK8-15新特性】 |
第5階段配套資料https://pan.baidu.com/s/1Jz1SLGSfd_Fa2wzIjNPKyA |
|
1 |
JavaJDK新特性詳解8-13合集 |
https://www.bilibili.com/video/BV1zJ411R7uQ |
|
2 |
jdk14新特性 |
https://www.bilibili.com/video/BV1qp4y1C7iu |
|
3 |
jdk15新特性 |
https://www.bilibili.com/video/BV1Ei4y1P7yX |
|
4 |
java設計模式(圖解+框架源碼分析+實戰) |
https://www.bilibili.com/video/BV1Np4y1z7BU |
|
5 |
Netty網絡編程 |
https://www.bilibili.com/video/BV1py4y1E7oA |
|
6 |
并發編程 |
https://www.bilibili.com/video/BV16J411h7Rd |
|
7 |
解密JVM |
https://www.bilibili.com/video/BV1yE411Z7AP |
|
8 |
數據結構與算法 |
https://www.bilibili.com/video/BV1iJ411E7xW |
|
9 |
4天oracle輕松入門 |
https://www.bilibili.com/video/BV1KJ411h7NH |
|
10 |
MySQL高級教程 |
https://www.bilibili.com/video/BV1zJ411M7TB |
|
11 |
Elastic-Job分布式任務調度-服務中間件 |
https://www.bilibili.com/video/BV1cE411h7e2 |
|
12 |
Java報表數據可視化教程 |
https://www.bilibili.com/video/BV1eA41157va |
|
13 |
Java日志熱門框架 |
https://www.bilibili.com/video/BV1iJ411H74S |
|
14 |
Java在線支付(微信+支付寶) |
https://www.bilibili.com/video/BV1LU4y1h736 |
|
15 |
Jenkins教程 |
https://www.bilibili.com/video/BV1kJ411p7mV |
|
16 |
lucene視頻教程 |
https://www.bilibili.com/video/BV1eJ411q7nw |
|
17 |
Spring Security Oauth2.0認證授權專題 |
https://www.bilibili.com/video/BV1VE411h7aL |
|
18 |
安全框架Spring Security深入淺出 |
https://www.bilibili.com/video/BV1fE411i7jt |
|
19 |
黑馬程序員Solr從基礎到項目實戰 |
https://www.bilibili.com/video/BV1dh411Q7Qu |
|
20 |
全面講解百度地圖原理與應用 |
https://www.bilibili.com/video/BV1Wa4y1e7AK |
|
21 |
數據層全棧方案 SpringData 高級應用 |
https://www.bilibili.com/video/BV1RE41167Pk |
|
22 |
微服務架構的分布式事務應用及解決方案 |
https://www.bilibili.com/video/BV1GJ411m73n |
|
23 |
微服務架構的分布式事務控制及解決方案 |
https://www.bilibili.com/video/BV1Q4411y7ip |
|
24 |
模板引擎VelocityTools深度使用 |
https://www.bilibili.com/video/BV1hK4y1G7Np/ |
|
25 |
由淺入深掌握Shiro權限框架 |
https://www.bilibili.com/video/BV1j54y1t7jM |
|
26 |
Java-nginx分布式框架 |
https://www.bilibili.com/video/BV1ov41187bq |
|
27 |
最新工作流引擎Activiti7基礎與進階 |
https://www.bilibili.com/video/BV1H54y167gf |
python相關:python web 開發+爬蟲 階段學習和時間分配
|
合理分配時間 |
學習階段 |
學習教程 |
|
40個小時 |
第一階段:Python基礎--從入門到精通 |
https://www.bilibili.com/video/BV18J411W7cE |
|
70個小時 |
第二階段:Python進階--Web核心技術 |
https://www.bilibili.com/video/BV19441137xy |
|
5個小時 |
Python的mysql數據庫精講,要仔細研讀呦 |
https://www.bilibili.com/video/BV1vi4y137PN |
|
3小時 |
第三階段:Python數據采集 |
https://www.bilibili.com/video/BV1464y1c7Eq |
|
4.2小時 |
Python爬蟲基礎,快速入門Scrapy爬蟲框架 |
https://www.bilibili.com/video/BV1jx411b7E3 |
|
82個小時 |
第四階段:Python企業實戰項目 |
https://www.bilibili.com/video/BV1nf4y1k7G3 |
五、怎么學操作系統?
操作系統的核心,就是由下面這些東西構成的:
- 管理程序運行:線程管理、進程管理
- 管理內存資源:內存管理
- 管理硬盤資源:文件系統
- 管理網卡資源:網絡協議棧
- 管理輸入輸出:中斷管理、同步與異步
- 為應用程序提供接口:系統調用
轉csdn:一名教師的建議:
想學操作系統的同學,推薦以下教材供選擇:
概念和理論:《現代操作系統》、《操作系統概念》
基于Unix:《Unix操作系統設計》
基于Linux:《深入理解Linux內核》
基于Windows:《深入解析Windows操作系統》
操作系統設計:《操作系統設計與實現》
源代碼分析:《Linux內核源代碼情景分析》
相關教程:
最后共勉一句人生感悟:不要因為怕傷害別人就把會讓自己為難的事情應承下來,很多時候該說就得說,該拒絕就得果斷拒絕。自己忙的不可開交的時候,就不要答應到處救火;觸碰底線的時候,就該果斷指出;沒法回應的感情就該早些把話說清。扭捏最終只會導致傷人傷己,說出來反而會更好,學會拒絕是必修課。
持續輸出驚喜文章,喜歡可以關注三寶喲
總結
以上是生活随笔為你收集整理的计算机专业怎么学编程计算机什么专业学编程的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 恢复数据软件读取不到手机内存卡恢复数据软
- 下一篇: 网络推广怎么做如何推广电脑