码迷,mamicode.com
首页 > 其他好文 > 详细

系统自学计算机科学之路

时间:2018-12-26 22:22:24      阅读:194      评论:0      收藏:0      [点我收藏+]

标签:shell   计算器   线性   targe   情况   shu   查找   日志   开发   

 

自学路线

 

科普读物:《计算机概论》、《IT简史》

 

两条并行线
编程语言(C/C++和Python)-----实用技术(流行的开发框架和工具)
数学基础(离散数学、高数、线性代数、概论统计)------专业基础理论(数据结构与算法、操作系统、计算机网络、计算机组成原理)

 

两条并行性之后就是深入钻研特定的技术领域:人工智能、图形图像、云计算、物联网等;
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

语言介绍
C 语言——结构化编程语言
Java/c++ ——面向对象的语言
Python——动态编程语言,应用广泛
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

学习之道
个人学习动机——决定自学好坏
方式、方法、策略;
了解学习理论
读物《学习之道》
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
读书之道

书的分类:
科普读物:感性成份多,了解术语和概念,建立全局观;
计算机专业教材:理性成份多,打好基础,培养学习后劲;
实践性读物:多少天xxx,零基础,xxx框架,xxx开发,培养特定开发技巧及对工具的使用
特定领域技术专著:复杂与抽象,深入挖掘规律与奥秘;

 

读书之法:
多遍阅读
断点续传
+++++++++++++++++++++++++++++++++++++++++++++++++++
专业知识具体路线
1、数学:
高等数学->线性代数->离散数学->概率论与数理统计;
推荐读物:《普林斯顿微积分读本》《离散数学机器应用》《线性代数及其应用》
MATLAB、EXCEL软件促进数学学习;

 

2、计算机科学

《计算机科学概论》:建立全局观;剥洋葱方式学习;
科普读物了解计算机科学:《人工智能》、《智能时代》;

 

3、数据结构与算法
针对特定问题,设计解决方案
算法的设计与评估
人工智能和大数据完全就是算法;

 

4、计算机组成原理

  看教材

5、操作系统
科普读物+专业书籍(C/Linux);
深入理解计算机系统(OS、计算机组成原理、计算机网络、编译原理);
掌握Linux Shell编程、完成教程作业、开发网络或多线程应用程序、使用工具完成相应实验;

 

6、计算机网络

(明白计算机如何连接,数据如何传递,网络软件系统如何构建)
前提要学:编程语言、数据结构与算法、操作系统
科普读物---专业教材;
然后使用特定编程语言/平台的网络库
动手写网络程序,工具抓包;
阅读科普书籍、理解分层架构;
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

核心基础课程
C/C++
数据结构
算法
计算机系统
计算机网络
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
其他课程
汇编语言
编译原理
计算机组成原理
离散数学/线性代数/高数/概率论与数理统计
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
开源项目\库\框架

网络

网络库ACE(重量级)、libevent(轻量级)、《UNIX网络编程》
socket原理;

数据库

开源Mysql
懂数据库的基本原理、熟练应用SQL语言、懂数据库的优化、存储过程;

日志操作
log4app日志库、多线程、日志重定向到网络、查找问题、记录程序运行情况;

管理后台
为程序提供一个web的管理界面,方便用户登录查看信息;

读取配置文件
方便配置一些项目;为程序提供灵活性;必须有读取配置文件的封装类;

内存池
所有进程都需要分配内存;分配和管理内存是很有挑战性的工作;
nedmalloc是开源的内存池库;跨平台的高性能多线程内存分配库;

缓存库
memcache,数据库开发时候特别有用

脚本
python功能很强大,推荐学;

不同的应用领域会用到不同的库;
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
练手的项目与应用
应用
C语音实现Ping程序
C语音实现文件类型统计程序
C语音实现多线程排序
编写万年历
制作计算器

项目
C++实现太阳系行星系统
C++开发Web服务框架
C++实现模拟银行排队
C++实现线程池
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

参考链接
如何自学计算机专业课程:https://www.jianshu.com/p/72512b2fcab9

系统自学计算机科学之路

标签:shell   计算器   线性   targe   情况   shu   查找   日志   开发   

原文地址:https://www.cnblogs.com/grooovvve/p/10181963.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!