首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >你在CS课程中学到的东西和你在现实生活中需要的课程之间的差距有多大?

问你在CS课程中学到的东西和你在现实生活中需要的课程之间的差距有多大?
EN

Software Engineering用户
提问于 2011-04-23 07:58:04
回答 5查看 530关注 0票数 7

我在四年的CS课程的最后一年,我非常想为自由和开放源码软件项目作出贡献。不幸的是,我觉得无论是错误修复还是特性开发,我都无法进行有用的编码。与严肃项目的编码相比,我们在学校承担的C/C++/Java项目微不足道,当我阅读FOSS项目的源代码时,我完全不知所措。你同意CS教育和实际生活项目编程之间的差距吗?你认为这个差距有多大?如何克服它?

EN

回答 5

Software Engineering用户

发布于 2011-04-23 10:16:22

有个缺口。这一差距归结为两个因素:确定性和规模。

  • 教授知道他想要什么。客户不知道他想要什么。这常常是你最大的头痛。
  • 教授知道你能做到。在现实世界中,没有人知道能否做到这一点。YOu必须与客户端一起工作,以限制任务的可行性。
  • 学校的任务是固定的;必须修改现实世界的任务,以适应预算和技术限制,但前提是你必须迅速发言。
  • 这个小型的学校项目意味着你没有版本控制、设计会议、程序员合作、界面问题等等。你永远不会迷失在课堂编码项目中;你肯定会迷失在现实世界中,需要电脑为你记录这些片段。
票数 23
EN

Software Engineering用户

发布于 2011-04-23 16:13:26

我自己也是初学者。我大约6个月前刚毕业。

差距:

时间限制:在大学里,我们的讲师通常以这样一种方式来设计我们的作业,那就是我们可以按时完成它,并且有更多的时间‘抛光’事情。然而,在工作中,情况并非如此。在工作中有更多的时间限制。其中一些可能是客户延迟签署之前的交付品,或者是一个突然出现的技术问题,而这个问题被忽视了,花费的时间比估计的要多,或者仅仅是管理人员在分配任务所需的时间估计/工时方面做得很差。

软技能:作为一名大三学生,总是有高年级的人来帮助你解决技术上的困难,但是没有人在你的软技能上帮助你!

在uni中,我们很少在最多大于6 ppl的项目团队中工作。在工作中,我们与更多的人合作,因此也就有了很多重要的问题。其中最重要的无疑是沟通。出于某种原因,我发现我们在uni中没有与适当的技术术语进行交流。因此,有些人在与工作中更有经验的开发人员沟通时遇到了困难。

在工作中,我们也应该更加自信,应该用正确的事实来支持我们的陈述,并且要警惕那些试图利用你的天真(否则你可能会得到不必要的额外工作量)的老年人。

然而,上面的说法会有很大的不同,取决于大学的教育水平(我觉得有些大学给他们的学生很多亲身体验,模仿真实的项目场景),有些则非常倾向于理论。当然,工作场所的文化也在这个问题中起着重要作用。

票数 5
EN

Software Engineering用户

发布于 2011-04-23 12:28:41

还有一个主要的软件工程方面的差距。通常,毕业生没有被传授一些关键的实践,例如:

  • 源代码管理/版本控制
  • IDEs (特别是重构)
  • TDD和pals (ATDD,BDD)
  • 构建和持续集成/部署/交付
  • 静态代码分析工具和调试器
  • 敏捷技术,如看板板、模版问题跟踪等

在伦敦,研究生开发人员社区正在与大学合作解决这些差距,试图向学生介绍低影响的软件工程技术,以便在他们的课程工作中使用。

我的意思是,为什么不构建B*树,而是将代码放在源代码管理中,跟踪问题跟踪器中的but,甚至先编写一些测试?)

票数 4
EN
页面原文内容由Software Engineering提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://softwareengineering.stackexchange.com/questions/70661

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档