非科班程序员和科班程序员的差距到底在哪里?

作者:黄小斜

文章来源:微信公众号【程序员黄小斜】

作为一名典型的非科班程序员,我在学习和工作一段时间之后,发现了自己跟科班程序员还是有很多的的区别,不管是思维上还是做事风格,以及对待问题的解决方式,都感觉有些差强人意。

今天我就给大家梳梳理一下,科班成为相对于非科班程序员,他们的优势到底在哪里?

第一点那就是算法能力。

为什么要强调这一条呢,大公司总是喜欢考算法,平时有些项目也有可能用到算法,总之算法就是衡量一个程序员的一把利器,作为非科班程序员,大部分时间,学习算法都只能靠自己,作为计算机领域的一门难题,没有老师指导,没有一些好的学习方式,那么你在算法上面的成长,可能也会很少。

对于算法问题,即使是科班的程序员往往都很难以去克服,更别说我们这些半路出家的程序员了,记得我当初连数据结构,都不知道是个啥,这种情况下去学习算法,真的就是扯淡,学会了数据结构之后,发现也只是学了皮毛,等真正接触一些面试算法题,才发现计算机的世界原来如此的博大精深。

除了算法之外,更要命的东西来了,就是计算机基础,传说中的四门专业课,我相信这几门课程也是横亘在科班程序员和非科班程序员之间的一道巨大鸿沟,科班程序员基本上在大学期间都有机会接触到这些基础课程,而非科班程序员几乎是无法接触到这些课程的。

一般来说,他们能够掌握一门语言,并且学会了如何做项目之后,就觉得自己已经学的很多了,很多非科班的程序员都不知道,对于程序员来说,这些作为根基的东西也是他们必须需要学习的,比如计算机网络,网络编程的基础,如果我们搞不懂计算机网络的话,你甚至连电脑上的ip配置都搞不清楚。

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

数据结构就不用说了,刚才我们在算法里已经提到了。还有一门很重要的课程就是计算机组成原理。你不知道计算机组成原理,你就不知道电脑到底是怎么启动的,更不知道CPU到底是如何运转的,如果你连这些都不知道,等以后你真正遇到这些问题时,再让你从头学起,岂不是天方夜谭?

想到这里,我不禁两行清泪,我的计算机基础其实也是靠自己恶补补回来的,虽然说现在也只是个半桶水,但是也已经算是非科班程序员中做的还算不错的了,即便如此,我还是经常在遇到实际问题时,因为对计算机基础掌握得不够好而走弯路。

当然了,非科班程序员也有自己的优势。

比如说,理解事情的能力和解决问题的能力,我觉得科班程序员,他们能够成为一个程序员,是一个非常正常的事情,他们按照自己的原有轨迹去做,毕竟这是他们比较熟悉的领域,并且能够把它们做好,非科班程序员就像是半路杀出个程咬金,可能你不知道他之前的积累是怎么样的,你只知道他现在可以通面试。

这里不得不提一点,就是非科班程序员的跨界能力,非科班程序员大多是自学成才,其实要跨界成为一个程序员,还是比较有挑战的,毕竟我们可以在他们身上看到更多的可能性,他们更加有变通的思维,至少在自学这个方面,他们更加有话语权。

所以非科班程序员往往更有自学能力,他们有很好的技术视野,知道如何去扩展自己的技术边界,毕竟他们知道如何很快的切换到另一项技术,或者是另一个领域。

对于非科班程序员来说,这种跨界的尝试会更加的轻松一些。

总结了以上这几点,我觉得科班程序员和非科班程序员并没有什么天壤之别,只不过大家开始的时候不一样。

大学的时候由于学校原因,我没有选择计算机专业,但是我在读研的时候,仍然选择了我当时想要选择的计算机专业,也有很多人是为了高薪进入互联网公司,也有很多人是因为自己的热爱而开始自学。

不管出于什么目的,不管是如何开始的,非科班程序员和科班程序员在未来的道路上都会逐渐的越走越近,最终他们之间可能没有太大的差距,我想他们各有各自的优势,也各有各自的缺陷,你说呢?

原文地址:https://blog.51cto.com/14156136/2447220

时间: 2024-10-18 09:15:16

非科班程序员和科班程序员的差距到底在哪里?的相关文章

同样是iOS程序员,6K与30K的差距到底在哪?为什么薪酬差异那么大?

前言: 有人看到这样的问题,第一感觉的答案就是"因为你是初级工程师,他是高级工程师呗~".这确实是一个很好的答案!不管什么样的职业都有一个从"初级"到"高级"的过程,没有哪个人能一步登天,生出来就是当架构师.CTO 之类的职位的.那么怎么样才能从初级走到高级呢?怎么样才能用更短的时间完成这个过渡的阶段呢?今天就来聊聊同样是程序猿,6K与30K的差距到底在哪! 作为一个开发者,有一个学习的氛围跟一个交流圈子特别重要,这是一个我的iOS交流群:638

程序员生存定律--程序人生的出口

程序员的人生出口 很多人非常想知道自己的未来是什么样子的,迫切到一定程度甚至会找算命先生.如果并不是想得到一个精确结果,这事儿其实并没有想的那么难.程序员的人生看起来五花八门,可以是Windows系,可以是Android系,可以是iPhone系等等,但如果为之做点抽象,那就会发现人生出口的类别其实不多,接下来我们就结合例子来看看程序员的人生中最可能的几个出口.这些出口里有大部分人的未来景象. 1 成就超一流高手 袁峰先生是<Windows图形编程>一书的作者,也是一位纯粹的程序员.从袁峰先生公

漫谈程序员系列:程序员该不该考虑初创公司

IT 这个行业,最不缺的就是机会,追逐机会的,有各种各样的小公司,也有各种种样的程序员. 博客之星评选,点击投我一票,谢谢.投过了也可以点哦,每天都可以投投一票. 创业公司 每一个出来创业的人,心中都充满了希望和梦想,而且认为自己眼光独到,手段高超,一定能够逐浪潮头. 可是,创业成功的概率到底有多大?十分之一,还是百分之一? 熙熙攘攘的创业大军,在互联网的江湖里闯荡,有成为传奇的,也有成为炮灰的.传奇者的传奇鼓舞着后来的创业者,创业者已经做好了准备,所谓艰难险阻,不过如此尔: 只要我们找到合适的

漫谈程序员系列:程序员的生活就这样吗

我当了快十年程序员了,终于老得可以来谈谈程序员的生活是什么样子了. 或许陈奕迅的<十年>中的一段歌词,可以表示很多程序员和软件开发之间的感情纠葛: " 十年之前 我不认识你 你不属于我 我们还是一样 陪在一个陌生人左右 走过渐渐熟悉的街头 十年之后 我们是朋友 还可以问候 只是那种温柔 再也找不到拥抱的理由 情人最后难免沦为朋友 怀抱既然不能逗留 何不在离开的时候 一边享受 一边泪流 " 这首歌的词作者是林夕,香港才子.林夕的歌词写得真不错,我还因为这个在 13 年时买了他

白虎大厅程序架设中国的程序员培训是不是有问题?

中国技术开放日的出海团对日本进行了为期一周的访问.白虎大厅程序架设(h5.hxforum.com)企鹅2952777280 源码出售 房卡出售 后台架设笔者随行了头两天,参加 Slush Asia 大会,并访问了 Gungho 和 Deloitte 两家企业.虽然已经在日本生活了四年,但这样的体验却甚少,对中日两国的技术力有不少思考. 不知从什么时候起,我凡是听到中国人在日本人的面前提起 " 程序员 " 三字,从头皮到脚跟都要发麻.中国企业培训出来的程序员,和日企培训出来的 "

漫谈程序员系列:程序员零门槛?

六个小故事,一一来看. 博主从技术支持转做开发 2005年3月份我决定辞去技术支持工作,转行做软件开发.大学时我曾经学习过PASCAL这种编程语言,但和程控交换机打了几年交道之后,PASCAL早已灰飞烟灭,渣都找不到了,而且我孤陋寡闻,也没听说哪个软件公司用PASCAL做开发.于是呢,我决定学习C语言,花了一个星期,走马观花式学习了由Brian W. Kernighan和Dennis M. Ritchie合著的<The C Programming Language>(译作<C程序设计语言

【黑马程序员】————初识程序

C程序结构 1) C程序的结构:由函数组成 任何一个C语言程序都是由一个或者多个程序段(小程序)构成的,每个程序段都有自己的功能,我们一般称这些程序段为“函数”. 所以,可以说C语言程序是由函数构成的. 2)  函数的基本概念 函数名:一个程序中由无数个函数组成,每个函数都有自己的名称 调用(执行)函数:根据函数名就可以调用对应的函数,执行相应的功能 3) C程序的入口 C程序的入口是一个名字叫做main的函数,简称main函数 不管整个程序中有多少个函数,都是先执行main函数 程序开发过程

关于程序员如何减少程序Bug的若干建议

毫无疑问,程序员是善于思考问题的一族.一个程序的编写都是通过:思考.设计.编写.调试.测试以及运行这些基本的阶段. 但大部分程序员都有一个问题就是不太愿意测试自己的代码.他们草草的调式完成以后就认为工作结束,测试那是测试人员的工作. 按照理论上,如果代码存在问题,那么测试人员和最终的用户肯定可以发现这些 BUG ,而等待哪个时候再返回来查找问题到底错在什么地方确实代价不小,其代价有: 1. 影响了程序员自己的声誉 2. 影响了产品的质量 3. 影响了客户的信任度 4. 这个时候再 DEBUG 难

第1次作业:这是一个不想当程序员的未来程序员

前言:这是一个不想当程序员的未来程序员对于计算机专业的某某看法.... 1.结缘计算机 问题1.1:你为什么选择计算机专业?你认为你的条件如何?和这些博主比呢? 对于这个问题,其实计算机专业并不是我的第一志愿,而是第三志愿,我第一二志愿分别是会计和金融,不过现在看来其实我的兴趣也不在这几个方面,有句话说得好,三分靠高考,七分靠志愿.志愿填的好,将来烦恼会少很多.经过两年的学习,我发现当初我就不应该考虑就业前景而填报专业,而是应该结合自己的兴趣爱好来,即使这份兴趣爱好所对应的专业将来并不好找到工作