博客
关于我
写了很久,这是一份最适合/贴切普通大众/科班/非科班的『学习路线』
阅读量:270 次
发布时间:2019-03-01

本文共 1938 字,大约阅读时间需要 6 分钟。

学习路线:适合普通大众的大学生入门开发方向

说实话,我一直不太喜欢写学习路线这种文章。大家知道我的文章风格,我更喜欢写真实经历,供大家参考。然而,最近好多人问我学习路线,而且很多大一大二的学生说自己很迷茫,看到我之前的文章后很受启发,觉得自己也能行。所以,我决定写一篇适合普通大众的学习路线,从大一入学那一刻开始入门说起。虽然这篇文章不一定适合你,但或许能给没有明确目标的人带来一些学习方向。


一、入门语言:选择一门热门语言

学习编程的第一件事,就是选择一门语言。能选择的语言太多了,于是我决定推荐几门热门且入门友好的语言:C语言、Python、Java。

1. 语言选择

学习编程的第一件事,选择一门语言。C语言、Python、Java都是不错的选择。你可以根据自己的兴趣或学校课程来选择。很多人会纠结于选择哪一门语言,其实无论你选哪一门,后续学习其他语言都是非常容易的。

如果你是科班学生,学校通常会开设C语言或Java。即使你不是科班,C语言仍然是一个不错的选择,因为它是很多编程竞赛的基础语言。

2. 学习资源

  • C语言:推荐书籍《C语言程序设计》(谭浩强写的),适合入门学习。进阶可以看《C与指针》。视频推荐:B站搜索“郝斌 C语言自学教程”。
  • Java:推荐书籍《Java核心卷1》,入门可以看。视频推荐:B站搜索“尚学堂 Java300集”。
  • Python:推荐书籍《Python编程:从入门到实践》。视频推荐:B站搜索“小甲鱼 Python入门”。

开发工具:C语言用Codeblocks或VS6,Java用IntelliJ IDEA,Python用PyCharm。

3. 学习目标

不要追求完美,90%理解代码就可以了,具体怎么写可以慢慢来。


二、数据结构与算法

大学第一学期,你入门某种语言后,就应该开始学习数据结构与算法了。对于非科班学生来说,这也是建议的学习顺序。我的文章主要写数据结构与算法,秋招也是靠这方面的知识拿到offer的。

1. 数据结构基础

  • 时间复杂度、空间复杂度
  • 链表、队列、栈
  • 树(二叉树、AVL树、红黑树等)
  • 图(深度优先搜索、广度优先搜索、最短路径、最小生成树等)

如果你是科班学生,第一学年可以学完这些内容。非科班的同学也可以逐步学习。

2. 算法学习

算法是编程中最重要的核心知识。下面是一些算法思想的学习建议:

  • 递归、贪心、回溯、动态规划、枚举等
  • 十大排序算法(如快速排序、归并排序等)
  • 字典序搜索(如KMP算法)

推荐书籍:《阿哈算法》、《算法设计与分析基础》。

3. 维持学习

算法的学习需要不断积累,刷题是关键。推荐每天刷1-2道题,或者每周3-4道题。可以去LeetCode刷题,或者参加学校的编程比赛。


三、深入学习一门语言

在大二或大三时,你可以选择一门语言深入学习。常见的选择有C++、Java、Python、Go。如果你想从事后端开发,C++、Java和Go是大多数公司的选择。

1. 选择方向

  • 如果你想从事游戏开发,选择C++。
  • 如果你想从事Web开发或大厂(如阿里巴巴、腾讯),选择Java或Python。
  • 如果你想从事云计算或网络开发,选择Go。

2. Java学习路线

如果你选择Java,以下是深入学习的方向:

  • 集合模块:HashSet、TreeMap、ArrayList等。
  • 多线程:synchronize、volatile、线程池。
  • 文件流:inputStream、outputStream等。
  • 虚拟机:GC(垃圾回收机制)是重点。
  • 其他:反射、注解、异常等。

3. JavaWeb入门

学完上述内容后,可以开始学习JavaWeb。推荐学习MySQL、HTML/CSS、JavaScript、Tomcat、Servlet/JSP。然后学习三大框架:Spring、SpringMVC、Mybatis。


四、计算机基础

计算机基础是立体的,不能忽视。以下是需要学习的核心课程:

  • 计算机网络:OSI模型、TCP/IP协议、HTTP等。
  • 操作系统:进程、线程、内存管理等。
  • 数据库:SQL语句、关系型数据库设计。
  • 汇编与编译原理:了解计算机是如何执行程序的。
  • 推荐书籍:《计算机网络自顶向下》、《深入理解计算机操作系统》、《汇编语言》。


    五、总结

    对于大学生来说,上述内容是前两年最核心的学习方向。这些知识虽然看起来枯燥,但一旦掌握了,你会发现其他学习变得异常容易。

    最后,我想强调的是,这篇文章不是让你成为大神的,而是给处于大学迷茫的你一个方向。无论你是否是科班学生,只要你愿意努力,你一定能行。


    推荐阅读

    如果你想了解更多工具和书籍,可以关注我的公众号「苦逼的码农」。回复「福利」可以获取精选电子书。

    转载地址:http://fsux.baihongyu.com/

    你可能感兴趣的文章
    Node.js安装及环境配置之Windows篇
    查看>>
    Node.js安装和入门 - 2行代码让你能够启动一个Server
    查看>>
    node.js安装方法
    查看>>
    Node.js官网无法正常访问时安装NodeJS的方法
    查看>>
    node.js模块、包
    查看>>
    node.js的express框架用法(一)
    查看>>
    Node.js的交互式解释器(REPL)
    查看>>
    Node.js的循环与异步问题
    查看>>
    Node.js高级编程:用Javascript构建可伸缩应用(1)1.1 介绍和安装-安装Node
    查看>>
    nodejs + socket.io 同时使用http 和 https
    查看>>
    NodeJS @kubernetes/client-node连接到kubernetes集群的方法
    查看>>
    NodeJS API简介
    查看>>
    Nodejs express 获取url参数,post参数的三种方式
    查看>>
    nodejs http小爬虫
    查看>>
    nodejs libararies
    查看>>
    nodejs npm常用命令
    查看>>
    nodejs npm常用命令
    查看>>
    Nodejs process.nextTick() 使用详解
    查看>>
    NodeJS yarn 或 npm如何切换淘宝或国外镜像源
    查看>>
    nodejs 中间件理解
    查看>>