先说观点:在没学计算机专业之前,大家都是零基础。

计算机专业科班出身学编程确实有优势,但是这并不意味着非计算机专业就一定比科班出身的差,技术都是不断更新迭代的,能坚持学到最后的才是真正具有专业精神的人。

一、计算机专业学编程的优势在哪里?

1.1 计算机基础

计算机基础,传说中的四门专业课,相信这几门课程也是横亘在科班与非科班之间的一道巨大鸿沟,计算机专业出身基本上在大学期间都有机会接触到这些基础课程,而非计算机专业几乎是无法接触到这些课程的。

举个例子:不管你用的是Python,还是Java,你都要对操作系统有一定程度的了解,操作系统是你理解各种高级编程语言的基础,特别是后端编程,我们需要考虑内存管理,考虑并发编程,考虑网络编程等等,这些东西都必须跟操作系统打交道。

1.2 数据结构与算法

编程语言虽然该学,但是学习计算机算法和理论更重要,因为计算机语言和开发平台日新月异,但万变不离其宗的是那些算法和理论。

同样的功能,看实现的具体代码,新手写出来的可能与牛人高手写出来的差距是很大的,这就是算法思想在具体语言上的体现。

作为计算机专业来说,大学里就能接触到算法内容,还有专业老师指导算法成长;。而非科班出身大部分算法学习都只能靠自己。

二、如何提高编程能力,缩小差距?

2.1 计算机基础

纵观各个大厂面试的前两轮,基本上都会重点观察面试人的基础知识,如果前期基础不扎实,那么就很难进入后面的面试

(1)计算机网络

计算机网络是指将地理位置不同的具有独立功能的多台计算机及其外部设备,通过通信线路连接起来,在网络操作系统,网络管理软件及网络通信协议的管理和协调下,实现资源共享和信息传递的计算机系统。

重点学习物理层、数据链路层、网络层、传输层、应用层这些层次结构。要明白各个层次结构之间的关系,明白每个层都具有什么功能,拥有什么协议,重要的一些协议的内容以及作用。要能灵活的将各个层次联系起来。

(2)操作系统

操作系统(Operating System,OS):是指控制和管理整个计算机系统的硬件和软件资源,并合理地组织调度计算机的工作和资源的分配,以提供给用户和其他软件方便的接口和环境,它是计算机系统中最基本的系统软件。

(3)数据库

数据库(DataBase ,简称DB ):是长期储存在计算机内的、有组织的、可共享的数据集合。数据库中的数据按一定的数据模型组织、描述和储存,具有较小的冗余度、较高的数据独立性和易扩展性,并可为各种用户共享。

2.2 算法基础

广义:

  • 数据结构:一组数据的存储结构
  • 算法:操作数据的一组方法

狭义:

  • 指的是某些著名的数据结构和算法,如:队列、栈、堆、二分查找、动态规划等

数据结构和算法你能在任何计算机领域里看到,比如在编译原理中寄存器的分配会用到贪心,死代码检测与消除会用到图论里不可达的知识;操作系统进程、线程调度会用到多级队列和调度算法;组成原理中 Cache 的替换会用到 LRU、FIFO 等算法;开发必备的数据库也离不开 B+ 树、LSM 等数据结构和查找算法。

如果不学习算法,连什么时候用 Map(红黑树实现)、什么时候用 HashMap 都分不清。所以学习算法有助于我们根据应用场景选择最合适的数据结构。

2.3 常用数据结构与算法

工程师工作中必备的核心数据结构,包括链表、数组、栈、队列、堆、树、图、布隆过滤器、LRU Cache、散列表和并查集等。

最基础、最核心的算法,包括递归、排序算法、二分查找、哈希算法、搜索算法、字符串常见算法、贪心算法、分治算法、位运算、回溯算法和动态规划等。

三、各类编程语言学习路线

2022年全新Java学习路线图,含源码+笔记,另附在职提升课_黑马程序员官方的博客-CSDN博客_java学习完整路线图简洁版本Java学习路线:Java SE基础–>Java Web–>Maven–>Git–>SSM框架 -->MybatisPlus–>Spring Boot–>传智健康【医疗行业】–> Spring Cloud–>Dubbo–>Zookeeper–>RabbitMQ–>RocketMQ–>Docker–>Redis -->MongoDB–>搜索技术Elasticsearch–>SaaSiHRM【企业服.https://blog.csdn.net/itcast_cn/article/details/1223044192022年前端学习路线图:课程、源码、笔记,技术栈_黑马程序员官方的博客-CSDN博客_前端技术路线图前端学习路线图概览:HTML+CSS-->移动web->JavaScript基础-->Web APIs->数据交互&异步编程-->Node.js-->Vue2+Vue3-->React核心技术-->微信小程序https://blog.csdn.net/itcast_cn/article/details/1223659452022年Python+大数据学习路线图,源码笔记,最优学习资源_黑马程序员官方的博客-CSDN博客任何学习过程都需要一个科学合理的学习路线,才能够有条不紊的完成我们的学习目标。Python+大数据所需学习的内容纷繁复杂,难度较大,所以今天特别为大家整理了一个全面的Python+大数据学习路线图,帮大家理清思路,攻破难关!文章目录前言第一阶段 大数据开发入门1.大数据数据开发基础MySQL8.0从入门到精通第二阶段 大数据核心基础2022版大数据Hadoop入门教程第三阶段 千亿级数仓技术数据离线数据仓库,企业级在线教育项目实战(Hive数仓项目完整流程)第四阶段 PB内存计算1.pythohttps://blog.csdn.net/itcast_cn/article/details/122306552软件测试功能到自动化学习路线图,2022年最新版技术栈_黑马程序员官方的博客-CSDN博客2022年全新版软件测试技术栈,零基础入行必备、高质量免费在线课程+笔记+讲义分享。适合零基础,功能测试、即将面试回顾知识点的各位伙伴。文章目录前言第一阶段、功能测试1.软件测试入门到精通2.Linux系统2天快速入门3. 软件测试MySQL数据库知识精讲+项目实战第二阶段、Python编程10天玩转Python软件测试第三阶段 UI自动化1. 软件测试web自动化测试精讲与实战2.零基础入门移动自动化——Appium框架3. 轻松教你使用Appium进行IOS真机自动化测试第四阶段 接口自动化接口测.https://blog.csdn.net/itcast_cn/article/details/1224735982022年人工智能学习路线图,清楚明确_黑马程序员官方的博客-CSDN博客_人工智能学习路线图众所周知,人工智能时代已经融入到我们的生活的当中,不论是图像识别还是语音识别的相关产品已经开始落地,就连国家都将人工智能设为了国家战略级发展规划,人工智能开发将会是是未来技术研究的前沿。下面特别给大家整理了人工智能的学习路线,希望大家都能有清楚的学习方向。文章目录第一阶段 人工智能开发入门1. 人工智能之python编程零基础入门2、4天快速入门Python数据挖掘第二阶段 机器学习核心技术第三阶段 NLP自然语言处理技术第四阶段 CV计算机视觉技术1.AI-OpenCV图像处理10小时零基础入门2https://blog.csdn.net/itcast_cn/article/details/122882407

想了解更多内容的小伙伴,可以关注黑马程序员社区及对应学科专栏,每日更新最新学习资源、附课程笔记、技术栈, 你想要的这里都有!

计算机科班与非科班学编程有什么差距?相关推荐

  1. 不论你是大众,科班和非科班,我这边整理很久,总结出的学习路线,还不快卷起来

    很多人对自我的学习路线没有清楚的定位,鉴于此,我就来写一篇适合普通大众的学习路线,就从大一入学那一刻开始入门说起,虽然不一定适合你,但或许能给没有明确目标的人带来一些学习的方向,那么这篇文章,我就觉得 ...

  2. Java后端学习路线(适合科班、非科班和已工作的仔)

    前言 今天看到一篇关于后端学习的硬核博文,感觉原博主说的很详细,涉及面很广,很适合正准备提升自己的小伙伴,故转载此文,与大家共勉,原作者用一个完整的电商系统作为切入点,带着大家看看,我们需要学些啥,原 ...

  3. 编程需要学计算机基础嘛,非计算机专业学编程需要什么基础?

    "学编程需要什么基础?"这是困扰许多初学者的问题. 想学习编程的时候,有各种担心,担心完全没有接触过,不清楚能不能学会? 还担心用了一段时间学习,发现完全没学到什么?还担心学习的时 ...

  4. 30岁学计算机晚吗,年龄是学编程的障碍之一?30岁学还来得及吗?

    30岁学编程还来得及吗?相信不少想学编程的人都会想问这个问题,因为其中不少是出于爱好或是转行的原因想学习编程.但年龄的原因,导致很多人迟迟不敢行动.因此,今天就来给大家说一说这个问题. 其实来不来得及 ...

  5. 计算机科班与非科班概述

    这些理论课是考研的重点,但对于开发而言,有用的只有数据结构的实现部分,操作系统的部分内容,数据库的应用, 计算机网络网络层及其以下的东西,应该属于网络工程师的范畴,程序员需要重点掌握的,一般也就传输层 ...

  6. 计算机入门基础知识!学编程从认识计算机开始!

    以前帮学弟学妹们总结的计算机入门基础资料,我觉得算是很好的科普入门资料了. 目录 1.1.1    计算机的发展史 1946年ENIAC在宾夕法尼亚大学被制作,数字积分式计算机 冯诺依曼体系: 计算机 ...

  7. 科班和非科班都适用的 Java 学习路线

    很多面试官在基础考察的时候都是直接是根据书来问,因为这些面试官也是从学生时代过来的,而他们可能和你看的是同一本书.也就是如果你和面试官的知识体系结构一样的话,面试官问出来的问题,你自然可以回答得很好. ...

  8. 计算机非科班工作后如何爬出技术的绝望之谷,走向开悟之路

    emm,几个月没写博客了,究其原因,还是觉得自己太菜了吧. 我从17年底开始写博客,最初只是为了记录一下自己技术生涯的一些学习细节,将某些知识,以文章的形式记录下来,内容比较随意,主要是方便以后自己回 ...

  9. 如何看待培训机构出来的非科班程序员

    看着身边的同学和朋友的情况,有感而发,打算从各方面角度说一说这件事. 近几年,互联网创业潮让IT技术人员的需求大大增加,各类IT培训机构风生水起,办得如火如荼.大多培训机构都是以保底工资nk,年薪轻松 ...

最新文章

  1. 第五课.高斯判别分析
  2. 为打击网络喷子 Instagram禁评论攻击
  3. CSS3动画属性之Transition
  4. 除了盖泡面,kindle还可以帮你提高科研效率
  5. Linux-Vim使用技巧
  6. PWN-PRACTICE-BUUCTF-19
  7. VMware虚拟化/云计算
  8. xmrig 捐赠修改_四名学生如何通过CommuniGift更改在线捐赠
  9. centos7 关闭防火墙的指令_CentOS7服务器安装Ansys 19.2过程
  10. Redis基础(一)——NoSQL
  11. Spring Boot中日志框架的使用——Logback
  12. Java中使用KCP协议
  13. sftp日志文件定时下载到本地文件 python 3
  14. linux 装gcc组件,linux下安装redis组件报错-gcc报错
  15. Stack Overflow 2017 开发者调查报告(程序员必看)
  16. Java模拟http上传文件请求(HttpURLConnection,HttpClient4.4,RestTemplate)
  17. mhdd测试硬盘软件,mhdd硬盘检测工具
  18. hd4600黑苹果html5死机,HD4600终于可以不花屏了,写下心得。
  19. 在论文中加入(制作)目录方法
  20. 【商品架构day2】一个商品的领域模型长什么样子 - 淘宝十多年前的认知

热门文章

  1. 6.6晴 今天我生日
  2. DXF文件怎么转换成DWG格式?手把手教你学会这几种转换方法
  3. 山东科技大学计算机牛人,山东科技大学有什么牛人?
  4. 一元三次方程求解 -- 二分查找
  5. 宝可梦朱紫太晶化效果小记
  6. Linux C/C++ 学习路线(已拿腾讯、百度 offer)
  7. JVM垃圾回收器(Hotspot)
  8. 银行股从“宽货币”到“宽信用”的传导 中富金石老师建议“持股过年”
  9. sphinx语音识别(1)-基本介绍
  10. 网络相关面试题(持续更新)