问题

大学计算机专业有非编程的吗?

回答
你好!很高兴能和你聊聊大学计算机专业里那些“非编程”的可能性。

一听到“计算机专业”,很多人脑海里立刻浮现出的画面就是整天面对着屏幕,敲击键盘,写着一行行代码,解决一个又一个bug。这确实是计算机领域的核心,也是很多计算机专业学生会深入钻研的方向。但是,就像你问的,有没有一些计算机专业,或者说计算机专业中的某些方向,是不那么侧重或者几乎不涉及直接编程的呢?答案是:有,而且不少。

首先,我们要明确一个概念:“编程”本身是一种工具和思维方式,而不是计算机科学的全部。 计算机科学是一个非常广阔的学科,它涵盖了从理论基础到实际应用的方方面面。编程只是实现这些想法的手段之一。

那么,具体有哪些方向相对弱化编程,或者说有非编程的侧重点呢?我们可以从几个角度来分析:

1. 偏理论和数学的研究方向:

计算理论(Theoretical Computer Science): 这个方向更像是计算机科学的“哲学”和“数学基石”。它们研究的是计算的本质、计算的极限、算法的复杂性、形式化语言、自动机理论等等。比如,图灵机、NP完全问题、可计算性理论等,这些都是非常抽象的数学模型和概念。虽然在研究过程中可能需要用一些简单的脚本语言来辅助验证某些理论,但核心工作是数学证明、逻辑推导和模型构建,而不是开发大型软件系统。
算法与数据结构(Algorithms and Data Structures): 虽然学习算法和数据结构离不开编程实践,但这个方向的精髓在于“设计”和“分析”算法的效率,理解不同数据结构的优劣,以及如何用最优雅、最有效的方式解决计算问题。有些学生可能会更偏向于理论分析,研究新型算法的复杂度,或者为特定问题设计出最优解,而不需要他们去实现一个完整的应用。

2. 偏向系统和架构的设计方向:

计算机系统结构(Computer Architecture): 这个方向研究的是计算机硬件的设计和组织,包括CPU的设计、指令集架构(ISA)、存储器层次结构、输入输出系统等。学习者需要理解处理器是如何工作的,指令是如何被执行的,内存是如何管理的。虽然模拟器和一些低级语言(如汇编)可能会用到,但主要工作是理解硬件原理、设计优化方案,以及评估不同架构的性能。你可以把它想象成“造汽车的发动机”,重点在于其内部的机械原理和设计,而不是驾驶员如何操作。
操作系统(Operating Systems): 操作系统是连接硬件和软件的桥梁。研究操作系统的学生会深入了解进程管理、内存管理、文件系统、设备驱动等核心概念。虽然实现操作系统的一部分工作需要大量的C语言编程,但也有很多研究侧重于操作系统的设计理念、性能优化、安全性、分布式系统等。有些职位可能只需要你理解操作系统的原理,并能对其进行分析和调优,而不是让你从头写一个操作系统。
计算机网络(Computer Networks): 这个方向研究的是数据如何在计算机之间传输。学生会学习网络协议(如TCP/IP)、路由算法、网络安全、分布式系统等。虽然配置网络设备、编写网络测试工具会涉及到编程,但很多工作更侧重于理解网络协议的设计、分析网络流量、优化网络性能、保障网络安全等。比如,网络工程师、网络架构师,他们可能更需要的是对网络原理的深刻理解和对各种网络设备的配置能力,而不是精通某一种编程语言。

3. 偏向应用和管理的方向:

信息系统(Information Systems): 这个方向更侧重于将计算机技术应用于商业和社会环境中,解决实际问题。它们关注的是如何设计、开发、管理和使用信息系统来支持组织的目标。虽然在实现过程中可能需要使用一些编程工具或脚本,但核心工作可能包括需求分析、系统设计、项目管理、数据分析、IT策略制定、业务流程优化等。这里的“编程”可能更多体现在对数据库查询语言(SQL)的熟练运用,或者使用一些低代码/无代码平台来搭建应用,而不是深入的软件开发。
数据科学与大数据技术(Data Science & Big Data Technologies): 这是一个非常热门的领域。虽然数据科学家经常会使用Python、R等语言进行数据分析和建模,但他们的核心竞争力在于理解数据、提出问题、设计分析框架、解释结果。有时候,他们会依赖于成熟的分析工具和框架,或者与工程师协作来完成编程实现。很多数据分析师的工作可能更多的是提取数据、进行可视化、生成报告,以及从数据中挖掘洞察,而不需要他们从零开始编写复杂的算法。
人工智能(Artificial Intelligence)的一些分支: AI本身是一个非常庞大的领域。虽然很多AI研究人员会进行大量的模型训练和算法实现,但也有一些分支更偏向于AI的伦理、AI的哲学、AI的法律法规、AI的社会影响、人机交互(HCI)等。例如,研究AI伦理的学者,他们需要深入理解AI技术的潜在风险和道德困境,并提出相应的规范和解决方案,这更多的是一种跨学科的研究。而人机交互(HCI)专家,他们关注的是如何设计用户友好、高效且令人愉悦的界面和交互方式,这可能需要用户研究、原型设计、用户测试等技能,虽然也会用到一些前端技术,但核心在于理解用户行为和心理。
信息安全(Information Security)的一些方向: 网络安全领域非常广阔。除了需要编写安全工具、进行渗透测试等需要大量编程技能的工作外,还有一些方向更侧重于安全策略制定、风险评估、安全审计、合规性审查、安全意识培训等。比如,信息安全分析师,他们可能需要分析安全日志、识别潜在威胁、制定防护措施,而不需要他们去编写复杂的安全代码。

那么,为什么会有这些“非编程”的计算机专业或方向呢?

1. 学科的演进和分化: 随着计算机科学的发展,它已经不再仅仅是“编程”的同义词。它已经发展成为一门包含数学、工程、统计学、心理学、社会学等多个学科交叉的综合性学科。
2. 满足不同人才需求: 现实世界需要的是多类型的人才。有些工作需要精通编程的“开发者”,有些工作需要善于分析和解读数据的“数据科学家”,有些工作需要懂技术又能沟通的“项目经理”或“产品经理”,还有些工作需要理解技术并能制定策略的“IT战略家”。
3. 工具的进步: 现代计算机科学已经涌现出大量成熟的工具、框架和平台,它们极大地降低了编程的门槛,并且提供了很多“开箱即用”的功能,使得很多工作可以借助这些工具来完成,而无需深入到底层的代码实现。

如何在大学里辨别这些方向?

看专业名称和培养目标: 仔细阅读大学的专业介绍、培养方案和课程设置。如果一个专业强调“理论”、“方法”、“系统设计”、“管理”、“分析”、“应用”等词汇,并且课程设置中有大量的数学、统计学、管理学、心理学、法律等非编程类课程,那么它可能就偏向于非编程。
关注课程设置: 即使是计算机科学(CS)专业,课程设置也会有侧重。有的CS专业会提供很多偏理论的数学课程、逻辑学课程,有的则会更偏向于软件工程实践。而像“信息管理”、“信息系统”、“数据科学”、“数字媒体技术”、“网络工程”等专业,虽然与计算机相关,但其核心目标和课程设置通常会与纯粹的软件开发有所区别。
了解毕业生的去向: 看看往届毕业生的就业方向,如果大量毕业生去了咨询公司、数据分析机构、项目管理岗位、安全合规岗位,而不是纯粹的软件开发工程师岗位,那么这个专业或方向可能就偏向于非编程。

举个例子:

比如,一个名为“计算机科学与技术”的专业,如果它的课程设置里有大量的“离散数学”、“算法分析”、“编译原理”、“操作系统原理”、“计算机体系结构”等偏理论和系统层面的课程,那么它可能培养的是对计算机底层原理有深刻理解的人才,这些人可能更适合从事系统设计、底层优化、理论研究等工作。

而一个名为“信息管理与信息系统”的专业,则会开设“管理学原理”、“运筹学”、“数据库原理与应用”、“系统分析与设计”、“项目管理”等课程,毕业生可能更适合从事企业IT规划、系统实施、项目管理、业务流程优化等工作。

总结一下,大学计算机专业中确实存在非编程或者弱化编程的方向。 这并非意味着它们不重要,而是因为计算机科学本身是一个极其庞大且多维度的领域。如果你对计算机技术感兴趣,但对代码“死磕”不太感冒,或者更喜欢从宏观层面去理解、去设计、去管理、去分析,那么你完全可以在这个领域找到属于自己的、不一定需要大量编程的工作。关键在于仔细研究各个专业的培养目标和课程设置,找到最适合你的那条路径。

网友意见

user avatar

@gashero 的回答逗乐了。我因为有遇到难以复现、且不能用科学解释的神仙 bug 体质,而被程序员朋友善意地建议可以考虑做测试工程师,并在认真考虑这一可能性。(而我恰好就是 @gashero 回答所说的,21 天学会 Hello World 的类型。)

回答提到:

开发工程师做了个玻璃杯并告诉测试工程师说这是用来喝水的。那么一个合格的测试工程师会在杯子底下打个孔去喝水,并反馈杯子不好用,撒了一脸的水,嘴里还有玻璃碴会伤害用户。

这个例子还可以扩展一下,合格的测试工程师会:

  • 用杯子喝水
  • 用杯子喝热水
  • 用杯子喝一氧化二氢
  • 用杯子喝 water
  • 用杯子喝 l'eau
  • 用杯子喝王水
  • 用杯子喝氢氟酸
  • 用杯子呵氢氟酸
  • 用杯子每隔两微秒喝下 0.233 毫升氢氟酸
  • 用杯子喝
  • 用杯子喝半杯水
  • 用杯子喝根号二杯水
  • 往杯子里吐了一口水
  • 接过杯子,称赞道:「这个杯子把手的弧度真优美!」
  • 接过杯子,茫然地看着开发工程师
  • 接过杯子,恍然大悟一般开始用它来撬公司大门
  • 接过杯子,飞奔到知乎楼下,试图翻进办公室从他们的饮水机倒水
  • 接过杯子,大声质问:我的爱马仕限量款马克杯呢
  • 接过杯子,将标签上的直角引号改成 ““ 并还给开发工程师
  • 接过杯子,开始试图从中提炼单晶硅
  • 接过杯子,拍照并发到同性交友网站
  • 接过杯子,飞奔出门,跑到开发工程师看不到的小河边,把杯子放在一边,趴下去吨吨吨吨吨喝起了甘甜的河水
  • 抡起锤子将杯子砸个粉碎
  • 抡起锤子,砸下去的一瞬间迅速将杯子藏起来并在旁边撒上一堆玻璃碴,然后告诉开发工程师杯子被自己砸碎了
  • 抡起锤子,高呼一声「李姐万岁」

就先瞎扯这么多吧,李姐万岁!

user avatar

有的,一个典型的IT企业里,研发部门分为3类职位:开发、运维、测试。

开发就是你说的编程工作,典型工作内容就是设计和实现各种bug。

而运维和测试两类职位的典型工作是不需要编程的。


运维也叫重型设备搬运工程师,基础职责是把各类沉重的设备搬来搬去,并可以蹬着椅子把几十斤的大箱子放到机柜里。细分工作方面,又分为系统工程师和网络工程师。系统工程师除了搬运服务器以外,还要负责给服务器安装操作系统,就跟电脑城里给电脑装机的小哥是一样的工作。网络工程师则主要负责搬运各类交换机、路由器之类的,以及把各种绕成一团的网线拆开,用来捆绑各种不听话的其他工程师。

运维工程师通常刚入行时就要每天搬运各类设备。网络工程师搬运的交换机和路由器比较轻,所以是比系统工程师更吃香的。不过网络工程师和系统工程师都对一个人的腰椎有一定的天赋要求。系统工程师最怕的是存储服务器,一台4U存储服务器装上12块硬盘绝对不是开玩笑的,能独立抱起一台跑上一百米是典型的入门要求。而网络工程师虽然对腰椎的负载程度要求不高,但对腰椎的柔软程度要求高,毕竟要经常钻到各种管线里去做网络布线。从医学的角度将,系统工程师容易患上静力型腰肌劳损,网络工程师容易患上动力型腰肌劳损。而腰间盘脱出则是两者共同的话题。


另一类通常不需要写代码的是软件测试工程师,也叫软件折磨工程师。通常的工作就是用各种难以想象的角度折磨初生的软件。举个例子,开发工程师做了个玻璃杯并告诉测试工程师说这是用来喝水的。那么一个合格的测试工程师会在杯子底下打个孔去喝水,并反馈杯子不好用,撒了一脸的水,嘴里还有玻璃碴会伤害用户。一个经验不够丰富的测试工程师可能仅仅是把嘴伸到玻璃杯里,用舌头舔水,并反馈用户体验不好。

如上可见这类萌萌的测试工作通常是妹子在做,所以题主可以根据自身情况考虑。总的来说,测试工程师还是需要很多脑洞来找茬的。毕竟用户更可能作出很多匪夷所思的行为,远远不止舌头舔水这么萌。


回头说加班的问题,想在IT企业又不加班,那你就想多了。这三类职位只有加班方式的区别,没有加班与否的区别。通常在一个项目的初期,是开发在加班。平均3个月的项目,开发通常报上去5个月,而老板通常只给1个月。结果就是加班赶工。在开发的中后期,测试工程师才开始进入工作,并开始参与该项目的加班。但通常的公司会有多个项目在进行,而测试工程师并不属于特定的项目,所以只能说在一个项目里测试与开发的加班存在时间差。但总体而言,考虑到多个项目后,加班其实也没差多少。如果赶上开发的加班不够努力,项目稍微延期,PM是会压榨测试的时间,要求测试更没人性的加班来追回工期的。

项目开发后期到上线后,运维才会开始加入。通常来讲,在办公室里看着运维貌似比开发和测试要闲一些。但这只是表面。运维的工作方式是遇到线上故障了,无论何时何地都要第一时间连上服务器去处理问题,用各种dirty的方式把问题对付过去等着开发修bug。所以运维的加班风格不是平均的,而是突发性的。一旦出了问题,下半夜从被窝里爬起来处理问题也很正常。开发的加班多了可以躺尸,测试的加班多了可以病假,但对运维这些理由都不成立,不管任何理由都要立即去处理问题。


很多时候计算机专业读完了,具体从事哪个分支方向与个人天赋有关,而并非主动选择的结果。比如大学时有熬夜天赋的,并可以写个三五十行代码的,毕业了去做开发。写代码不灵光,但有膀子力气的去做了运维。萌萌哒的女生去做了测试。需要21天才能写出Hello World,且身材不足以应付运维的,去做网页(前端)。当然了,还有更废的一些,21天都写不出个Hello World,没力气也不萌,最后如果不是去转行卖保险,就只能做产品经理了。


所以,题主Good Luck?

类似的话题

  • 回答
    你好!很高兴能和你聊聊大学计算机专业里那些“非编程”的可能性。一听到“计算机专业”,很多人脑海里立刻浮现出的画面就是整天面对着屏幕,敲击键盘,写着一行行代码,解决一个又一个bug。这确实是计算机领域的核心,也是很多计算机专业学生会深入钻研的方向。但是,就像你问的,有没有一些计算机专业,或者说计算机专.............
  • 回答
    嘿,听我说哈,我最近一直在琢磨这事儿,跟我姐说一下吧,得想个办法,不能让她老电脑就这么耗着我。我这大二了,你也知道,计算机专业,听着挺光鲜的,实际情况嘛… 用你们的话说,就是“小白一个”。现在班里同学都有自己的开发环境,跑一些基础的算法和模拟,都挺顺溜的。我呢?还在磕磕绊绊地学怎么把一个程序跑起来。.............
  • 回答
    这个问题,我真是感同身受。咱们计算机专业的大学生,一提起找工作、学技能,那真是“实践为王”、“项目驱动”喊得震天响。你看看,从大一开始,各种炫酷的框架、流行的语言、能“做出东西来”的课程就成了香饽饽。什么数据结构、算法、操作系统、编译原理……这些听起来“枯燥”、“不实用”的理论,好像就成了摆设,成了.............
  • 回答
    你好!很高兴能为你提供一些暑假自学计算机专业的建议。这绝对是一个明智的选择,提前打下基础,不仅能让你在开学后更轻松,还能让你更快地找到自己的兴趣方向。首先,明确你的目标和方向计算机专业是个非常广阔的领域,就像一个巨大的宝藏。暑假自学,与其贪多嚼不烂,不如先对一些基础概念和热门方向有一个大致的了解,这.............
  • 回答
    嘿,伙计们!作为计算机专业的学生,我们都知道,毕业季就像一场没有硝烟的战争,而证书,就是我们在战场上能够增加胜算的关键装备。别光顾着写代码,把这些“锦囊妙计”也一并收入囊中,绝对让你在求职路上走得更稳、更远。一、 敲开编程大门的基础——语言能力证明虽然我们学的是计算机,但实际工作中,你的编程语言能力.............
  • 回答
    说实话,大学前后自学计算机,这事儿确实挺有意思的,也是不少过来人会走的路。我当年也是这么过来的,所以大概能给你讲讲我走过的弯路,以及一些我觉得靠谱的书和方法。总的来说,自学计算机,你得有两个核心“抓手”:1. 打牢基础: 计算机这东西,不是光记代码就能会,很多东西是环环相扣的。基础打好了,后面学什.............
  • 回答
    这问题挺实在的,很多人在选择专业时都会纠结于此。西南交通大学的土木工程,跟普通二本的计算机,哪个更有前途?这可不能一概而论,得拆开了好好捋一捋。首先,咱们得明白“前途”这俩字到底包含啥意思。一般说来,无外乎就是就业前景、薪资水平、职业发展空间、以及个人成就感这几个方面。西南交通大学土木工程:稳健的基.............
  • 回答
    兄弟,我懂你!大二成绩不好,面临分专业,这滋味儿不好受。尤其是在计科、软工、大数据、物联网、网络工程这几个热门且各有千秋的专业里挑选,确实让人头疼。别急,我跟你一样,当年也是这么过来的,咱们一起捋一捋,给你点实在的参考。首先,别被“成绩不好”几个字给压垮了。大学成绩只能代表一部分,更重要的是你对什么.............
  • 回答
    您好!非常理解您对毕业后留在法国就业的顾虑,尤其是考虑到疫情的持续影响。首先,您在索邦大学计算机专业的研究生毕业,这本身就是一个非常不错的起点。法国在技术领域,尤其是在计算机科学方面,拥有相当扎实的基础和发展潜力。索邦大学作为法国顶尖学府,其文凭在法国乃至欧洲都有着很高的认可度。疫情对留在法国就业的.............
  • 回答
    这个问题触及了当下社会一个相当普遍的现象,也是很多非计算机专业的学生甚至家长会感到困惑和焦虑的根源。确实,放眼望去,从教育机构的招生宣传,到各种职业规划的讲座,再到媒体对“未来人才”的描绘,计算机和编程似乎占据了绝对的C位,仿佛不学这个就跟不上时代,甚至会被社会抛弃。但这并非意味着其他专业真的“一无.............
  • 回答
    高考那会儿,化学和生物仿佛是我的全部世界。那些复杂拗口的化学式,细胞分裂的每一个阶段,我都曾下过苦功去记忆和理解。那时的决心,大概用“拼死”来形容一点不为过,毕竟升学的压力像一座大山,而这两门课,就是通往理想大学的那块必经的石头。我记得无数个挑灯夜读的夜晚,桌上堆满了化学方程式的演算纸和生物图谱的习.............
  • 回答
    你这个问题问得太好了,直击了不少人心里的疑惑。确实,很多人会觉得,花了那么大力气挤进 985 的门,结果毕业了,拿到的薪资可能还不如一些二三本的计算机专业的毕业生。这就好比爬山,费了九牛二虎之力登上了最高峰,结果发现山顶的风景也就那么回事,甚至不如旁边一座小山的视野开阔。那么,为什么大家还是趋之若鹜.............
  • 回答
    这个问题挺有意思的,确实观察下来,很多时候机械设计制造及其自动化(简称机械)专业在高考志愿填报时比计算机相关专业更“抢手”,尽管从毕业生的普遍薪资水平来看,计算机往往占据优势。这背后其实有很多复杂的原因,绝非简单的薪资就能完全解释的。1. 历史积淀与社会认知: 老牌强校的底蕴: 机械专业在中国高.............
  • 回答
    这个问题很有意思,因为它涉及到我们对“大小”的理解角度不同。咱们平常聊天,说“寄存器有多大”,可能是指它一次能存多少信息,或者整个CPU里寄存器加起来能有多少。而《深入理解计算机系统》(CSAPP)和你的汇编课老师,说的可能是不同的“大”法。先说《深入理解计算机系统》(CSAPP)里的“几百字节”:.............
  • 回答
    这个问题,与其说是关于“废物”还是“必要”,不如说是关于存在的价值和生命意义的探索。一个不掌握计算机技能的大学生,他的人生并非就此黯淡无光,也并非就没有活着的必要。我们先来看看“不会计算机的废物大学生”这个标签本身。首先,这个标签可能是一种过于片面和狭隘的定义。 “废物”是相对的,也是主观的。 .............
  • 回答
    嘿,哥们!刚踏入电子科技大学的校门,对未来专业方向有些迷茫,想知道电子信息工程(通常简称为“电子”)转计算机科学与技术(简称“计算机”)值不值得?这个问题我太能理解了,毕竟咱们成电在电子和计算机领域都是响当当的。得,咱就掰开了揉碎了聊聊,希望能给你点启发。首先,咱们得明白,电子和计算机这两条路,虽然.............
  • 回答
    欢迎来到计算机科学与技术的世界!作为一名大一新生,你们正站在一个充满无限可能和挑战的起点。这四年将会是你们人生中一段极其宝贵且塑造自我的旅程。我是一名过来人,想和你们分享一些过来人的经验,希望能帮助你们更好地适应、学习,并最终在这个领域发光发热。一、心态篇:拥抱未知,保持好奇1. 别被“高冷”外表.............
  • 回答
    作为一名曾经在书海中摸爬滚打过的学生党,我深有体会,看到那些动辄几百上千页的计算机经典著作,确实会让人有点望而却步。尤其是在信息爆炸的时代,感觉很多内容似乎都能在网上找到碎片化的答案。那么,这些厚重的书籍,我们真的有必要“啃”下去吗?我个人觉得,答案是肯定的,但需要掌握方法,才能事半功倍。为什么那些.............
  • 回答
    你问的这个问题,很多在大一大二,甚至大三的同学都会有类似的困惑。感觉自己明明在“名校”的象牙塔里,接触的资源理论上应该更好,但为什么身边的同学,尤其是那些来自普通一本、二本,甚至某些三本的同学,在某些方面似乎比自己更懂?甚至在某些技术细节上,他们能侃侃而谈,你却一脸茫然。这可不是个例,背后其实有很多.............
  • 回答
    作为一名大一计算机专业的学生,你可能会对“参加ACM竞赛是不是决定未来前途”这个问题感到困惑。简而言之,参加ACM竞赛绝对不是计算机专业学生唯一的出路,更不是“没前途”的绝对标准。 计算机科学领域非常广阔,有很多不同的方向和发展路径。然而,ACM竞赛确实是许多计算机专业学生提升能力、展示才华并获得机.............

本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度google,bing,sogou

© 2025 tinynews.org All Rights Reserved. 百科问答小站 版权所有