基础课学习路线:高等数学->线性代数->概率论->离散数学
软件方向学习路线:C语言(面向过程)->数据结构->C++/JAVA(面向对象)->数据库->软件工程
硬件方向学习路线:C语言->汇编语言->数字电路/逻辑电路->计算机系统结构/计算机系统结构/计算机网络原理->编译原理->操作系统
学习软件方向和硬件方向需要学习的内容不同,你可以选择同时入手学习,不过这需要花更多的精力和实践,如果你单选择一个方向,可以告诉我,我介绍一些比较不错的参考资料给你研究。
其实怎么列举大致都差不多,个人感觉你只需要遵从三点:1、从自己的基础入手,考虑个人的接受能力由浅入深;2、考虑以后的就业对于应用性专业性高的课程多花时间;3、对于课程的顺序可结合学院的课程安排及你们专业课程老师建议;
主要还是看你以后的从事工作了。比如我是从事网络编程的,我数据库就基本没用过。一点最重要的是如果你是学软件的就请一定要把握基础C/C++/Java等。工作后你会发现基本真的很重要。
个人意见,顺序不重要,应根据你未来的目标,决定侧重学好哪些课程。