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

现在很多非计算机专业的人也会编程,而且也能做出很好的软件,那么大神们可以说一下计算机专业的优势到底在哪里?

楼上只说对了一部分,C语言和汇编虽然是优势,但是其实只在底层开发的时候才能显示出来,比如新型手机及其操作系统的开发。实际工作中,绝大多数软件项目是顶层应用型开发项目,基本不涉及C编程和汇编。那么在这样的项目里,计算机相关专业的学生有什么优势呢?

最大的优势是扎实的基础知识和多面手特性。

    基础知识方面,包括数据结构和算法、关系代数等等。这些课程非计算机专业的很少学,但是对于软件开发来说有时是很关键的。比如现在比较热门的手机应用app开发,很多程序做的很漂亮,但是很耗电很占资源,那么可以从数据结构和算法上对其进行程序流程和内存数据方面的优化,如果没学过这东西,根本就无从下手,有的干脆就不做这一优化了。再比如一个网站项目,后台连接数据库之后发现数据处理时间比较长,学过关系代数的就可以尝试检查sql语句的结构,对其进行优化,提高数据读取效率。

    多面手,是说计算机相关专业的学生几乎所有的基础课和专业课都是跟计算机相关的,在各个方面都有涉猎,可以在一个项目中担任多个角色。还以一个网站项目为例,除了管理和沟通角色之外,其他的成员角色可以分为架构设计师、界面设计师、前台和后台程序员、数据库开发和管理人员、测试人员等。一个计算机专业毕业的学生可以担任除了架构设计师和界面设计师之外的其他任何角色。因为其中涉及到的前端网页技术、后台脚本技术、数据库技术、测试技术等等这些web应用技术都是计算机专业要学的基础课或专业课。

其实,计算机专业的学生还有一个优势是很重要的,也是很多用人单位看重的,就是经验。很多计算机专业的学生在大学阶段就从事过至少1到2个比较系统的项目开发了,对于写代码涉及到的编码规范、文档等都有比较好的认识了。而一些其他专业的学生,虽然大学时可能也做过项目,但是对于编码、文档等的要求都不高,甚至没被要求过。


当然,以上说的,是指大学真真正正好好上了的学生,混日子的人肯定是没有我说的这些优势了。这两种人在面试的时候,说上几句就能分的出来。

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2016-03-21
计算机专业的学生、非计算机专业的学生都在多多少少的接触着计算机。那么计算机专业的学生的优势比非计算机专业的学生的优势在哪呢?也许很难看出来。尤其是一些浮躁的计算机专业的学生,或是在一些外行人眼力,认为计算机专业的人总是不如非计算机专业的人。比如说:有的人认为计算机专业的人在平面设计软件方面不如广告专业的,在网络方面不如通信专业的(当然,我们学校没有通信专业),......这些都是些事实。为什么这么说,因为我认为平面设计就不是给计算机专业的人开设的课程范围,而网络也不单单是学习计算机的事情。有了上面的内容,那么下面我就向大家阐述我对计算机专业学生所学知识的一个认识。

计算机专业学生的学习范围其实我认为有硬件和软件两个部分(网络一会儿说)。
硬件,那就是设计芯片,主要就是微机原理这种类型的课程,当然我对硬件一点都不了解,所以我不想多谈。但是要说明一点,会组装电脑的不叫搞硬件的,只是一种装卸工人。别把硬件设计这种伟大的工作与装卸工这种工作划等号(并没有鄙视组装电脑的人,只是说组装电脑并非计算机专业学习的内容,计算机专业的人,人人应该都会)。
软件,当然就是软件开发。软件开发并不是人们想的那么简单,学门语言就可以搞定的事情,软件开发涉及到的领域非常的广泛(由于我的能力有限,所以我谈的比较浅,希望大家见谅)。在软件开发当中,有很多步骤,每一步都不能缺少,非常严格。比如,系统分析、软件设计、编码、测试、文档......很多。其中系统分析尤其重要,系统分析员不但是一个技术高手,而且是一个管理方面的高手,因为要跟人交谈。我有一个网友,他们要开发什么什么系统,都是自己内部使用,这个网友告我说他们经常开会,因为这套系统的原因,无从下手。甚至聊过以后知道,连可行性分析都没有,就去开发系统了。我认为那里没有一个好的系统分析员。我小姑有个朋友,从在北京请了一个硕士毕业生,太原月薪给他3万让他开发一个软件,据说3个月了连头绪都还没有。系统分析,我没有做过,但是这方面的书我接触过一些,自己不懂,不敢给大家瞎唬谈。软件设计我认识对软件的整体的一个设计,当然软件设计有概要设计和详细设计。同样,我没有从事过正经的软件开发,因此这个也不敢和大家随便的谈。编码,在学校里编码的必然的,就不用说别的了,C和数据结构是必学的,所以编码这部分是必然要接触的,我也就这部分接触的比较多,所以说说这部分吧~!我会说说计算机专业应该学好的课程。
首先,我认为是C语言。很多人认为C已经过时了,认为现在.net、C#很流行。其实不是,C语言非常流行,而且C语言是世界上所有程序员用来交流最方便的一种语言,而且计算机的核心课程——数据结构,多半也是用C描述的(当然,也有C++或JAVA的)。可能你会说,C语言只能在DOS下用用,在Windows一统PC的时代有什么用啊?让我说,那只是自己学的不够。我以前也有这样的认为,可是后来知道了,跟自己想的完全相反。学习了C语言后,只要学习一下WIN32提供的APIs就可以开发Windows下的应用程序了,不管是GUI的,还是Console的。WIN32的APIs都是由C定义的,难道能说C不重要没吗?想必大家也知道,linux是由C写的(当然有一部分是由汇编写的,我没有通读过linux的源代码,但是我也拜读过linus的linux 0.11-0.95的源代码)。Windows、Unix等都是有C写的,难道说C不重要吗?现在C语言中可以直接嵌入汇编,用起来更是方便。C语言的重要性不言而喻了吧?
第二,我认为是汇编语言!当然如果你认为8086/8088过时了,这个我认为我是不会反对的。因为这个芯片确实我认为是过时了,无论是它的应用领域或是它的芯片技术都是过时的。因为8086/8088除了上课外估计很少用了吧?要学cpu我认为就从80386学,因为它已经是成熟的32位cpu,而且实模式和保护模式已经相当成熟了。不过8086/8088中最基本的汇编语言是不过时的。为什么要学汇编语言呢?大家知道任何软件开发出来都是要经过调试的,软件是不可能一次性的开发成功的啊!调试,就要使用汇编。以前,在拜读梁肇新先生(豪杰的CEO兼首席程序员)的书,里面提到了他们公司开发豪杰大眼睛(图片浏览软件)时出现了错误,结果通过调试发现是微软提供的API的问题,如果不懂汇编,不懂调试是解决不了这种问题的呀。而且汇编的运行速度非常的快。为什么呢?因为我是听人说的?如果我是听人说的,我就不在这里给大家吹了,那是我自己在学习的过程中发现的。用Win32汇编写一个程序,反汇编它,你就可以发现反汇编的代码与你用Win32汇编写的几乎是一一对应的。而用C写的就不是了,C的主函数是main或是WinMain,它们被系统shell调用后,通过CreateProcess运行后,要经过C RUNTIME和得到STARTUP CODE后才进入main或WinMain的。这样来看,它的运行速度当然不如汇编快。汇编在很多时候都非常有用的。本回答被提问者采纳
第2个回答  2013-08-01
这个,首先计算机不只是编程,它有很多的方向,比如网络的,硬件的,软件的。。
其实复杂软件的算法大多是学数学专业的人设计的。
计算机科学与技术这个专业在本科阶段的学习没有针对某个方向,学习的范围比较广,是为以后的学习打基础,到了硕士就很有针对性了。
软件工程这个专业是专门学软件开发的。
第3个回答  2013-08-01
有基础一点 了解一点吧
第4个回答  2024-03-18
1)自动化程度高,处理能力强。
计算机把处理信息的过程表示为由许多指令按一定次序组成的程序。计算机具备预先存储程序并按存储的程序自动执行而不需要人工干预的能力,因而自动化程度高。
(2)运算速度快,处理能力强。
由于计算机采用高速电子器件,因此计算机能以极高的速度工作。现在普通的微机每秒可执行几十万条指令,而巨型机则可达每秒几十亿次甚至几百亿次。随着科技发展,此速度仍在提高。
(3)具有很高的计算精确度。
在科学的研究和工程设计中,对计算的结果精确度有很高的要求。一般的计算工具只能达到几位数字,而计算机对数据处理结果精确度可达到十几位、几十位有效数字,根据需要甚至可达到任意的精度。由于计算机采用二进制表示数据,因此其精确度主要取决于计算机的字长,字越长,有效位数越多,精确度也越高。
(4)具有存储容量大的记忆功能。
计算机的存储器具有存储、记忆大量信息的功能,这使计算机有了“记忆”的能力。目前计算机的存储量已高达千兆乃至更高数量级的容量,并仍在提高,其具有“记忆”功能是与传统计算机的一个重要区别。
(5)具有逻辑判断功能。
计算机不进具有基本的算术能力,还具有逻辑判断能力,这使计算机能进行诸如资料分类、情报检索等具有逻辑加工性质的工作。这种能力是计算机处理逻辑推理的前提。
此外,微机还有体积小、重量轻、耗电少、功能强、使用灵活、维护方便、可靠性高、易掌握、价格便宜等等。