软件工程

针对在系统开发生命周期中工作的专业人士,学者和学生的问答

16
您认为代码是自我记录的吗?[关闭]
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案会得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意调查或扩展讨论。如果您认为此问题可以解决并且可以重新提出,请访问帮助中心以获取指导。 6年前关闭。 这个问题是多年前作为一次面试的研究生提出给我的,它时不时地困扰着我,我从来没有真正找到一个令我满意的好答案。 有问题的面试官正在寻找黑白答案,没有中间立场。我从来没有机会问过这个问题背后的原因,但是我很好奇为什么这个问题会交给开发人员,您将从是或否的答案中学到什么? 从我自己的角度来看,我可以阅读Java,Python,Delphi等,但是如果我的经理问我,问我在项目中走了多远,我说“代码已完成80%”(之前您开始将我击落,我听说过开发人员在几个办公室说过的话,那么自我记录到底有多准确?道歉,如果这个问题看起来很奇怪,但我宁愿提出询问并对此提出一些意见,以更好地理解为什么将其放在面试中。

1
为什么在未捕获的异常之后Java成功退出?
每当Perl,Python,C ++或Tcl程序因未处理的异常而暂停时,这些语言运行时都会注意为该过程注册一个非零的退出代码。如果基于Eclipse的程序在启动过程中失败,则它们也会返回1。java.exe但是,由标准运行的程序无论终止多么突然,都会很高兴地返回零,除非程序System.exit()使用退出值进行调用。甚至AssertionFailedError或UnsatisfiedLinkError作为成功退出被报告回调用程序。 当然,并非所有系统都具有程序返回码,但是Unix和Windows非常重要,足以保证java.lang.Process.exitValue()子进程的运行。他们还不保证为父流程遵守约定吗? 这是语言设计上的缺陷还是仅仅是实现上的缺陷?是否有争论说这是个好主意?
24 java  exceptions 

14
为什么大多数网站都经过优化以纵向模式查看?[关闭]
已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引用的形式回答。 4年前关闭。 我根本无法弄清楚。几乎所有显示器的宽高比都比宽度大得多,而几乎所有网站的设计都是恰好相反。我不是真正的Web开发人员,目前只是在尝试一些东西,但是这种疯狂使我感到困惑!!! 编辑:重点不是我想限制网站的高度。关键是当我将1920x1080设置为横向模式时,我希望它以某种方式填充所有可用空间。 编辑2:看到此以了解我在说什么

9
需要建议:保持技术水平还是以MBA方式学习?[关闭]
关闭。这个问题是题外话。它当前不接受答案。 想改善这个问题吗? 更新问题,使它成为软件工程堆栈交换的主题。 6年前关闭。 我知道这是一个非常主观的问题,我是自己决定这个问题的最佳人...但是我只是在寻找您的意见。 我有5年的专业开发经验。我在数学方面具有良好的背景,并且在CS工程专业取得了学士学位。我的职业生涯还没有达到成长困难的阶段,并且即使很长一段时间也不会预见到这种情况的发生,因为我发现自己不断(自我)去学习新技能。 但是,我的许多朋友最近都已经获得了MBA学位,而不是哈佛或凯洛格斯大学等中等水平的大学。然而,即使他们很少或没有工作经验,他们的薪水也比我胖。 鉴于我可以选择攻读MBA,可以理顺我的财务状况(并打算从INSEAD / IE计划MBA),我应该卖出自己喜欢做的​​事去攻读MBA吗?鉴于我处于适合MBA的年龄/经验组,我会后悔不稍后再读MBA吗? 我绝对喜欢我现在正在做的事情,也喜欢与我一起工作的人,但是我只是担心这个职业是否会像获得管理学位的人一样在经济上获得回报。

9
在一对一的过程中,您与经理讨论什么主题?[关闭]
关闭。这个问题是题外话。它当前不接受答案。 想改善这个问题吗? 更新问题,使它成为软件工程堆栈交换的主题。 7年前关闭。 每周,我都会安排30分钟与我的经理开会,讨论几乎所有内容。到目前为止,我还没有认真对待那些一对一的问题。作为新年的一项决议,我想更加认真地与经理进行一对一的交流。我可以做到的一种方法是提前一对一计划(提出问题和/或议程)。 除了状态报告,您在一对一的过程中会与经理讨论什么主题?您见过一对一的议程吗?
24 management 

3
“优化软件”的真正含义是什么?
我已经看到很多其他框架/库开发人员都在使用“我们编写有思想的软件”这一短语,但是实际上,这到底意味着什么?这是否意味着'Opinionised Framework X'的作者说过,因为他们以某种方式编写代码,所以您应该编写与他们编写的相同类型的代码? 这不是自命不凡吗?

4
开发人员应该完全了解哪些算法和数据结构?[关闭]
已关闭。这个问题需要更加集中。它当前不接受答案。 想改善这个问题吗?更新问题,使其仅通过编辑此帖子来关注一个问题。 4年前关闭。 我想成为一名成功的企业Java开发人员。我应该精通哪些算法和数据结构?您会推荐什么书给我? 要成为一名成功的Java开发人员,我是否需要了解所有高级算法,例如CLRS中给出的算法? 您可以按优先级从高到低的顺序列出我应该学习的主题吗? 我必须知道: 正在搜寻? 排序? 图/树? 等等?

16
调试技能对成为一名优秀的程序员重要吗?
已锁定。该问题及其答案被锁定,因为该问题是题外话,但具有历史意义。它目前不接受新的答案或互动。 除其他素质外,程序员还需要良好的调试技能吗?如果我的申请人无法在给定的程序中发现错误,但能够解决所有难题和程序,我是否应该考虑他的工作? 编辑:-难题是正常的红色,蓝色和红蓝色的球一样。程序就像在数组中找到连续的k个零。调试程序由于条件而失败,该条件应为> =,而是>。一切都在纸上。
24 debugging 

9
声明式编程与命令式编程
我对命令式编程非常满意。一旦弄清了我想让计算机做什么,我就不会在算法上表达我想要计算机做什么。但是当涉及到诸如SQL之类的语言时,我经常会陷入困境,因为我的头脑太习惯于命令式编程。 例如,假设您具有以下关系:乐队(bandName,bandCountry),会场(venueName,会场Country),戏剧(bandName,会场Name),并且我想编写一个查询,指出:所有会场名称,以便每个bandCountry都有一个乐队在那个名字的场地上比赛的那个国家。 示例:我想要所有国家(bandCountry)的乐队在其中播放的所有会场名称。另外,“关系”是指SQL表。 在我的脑海中,我立即进入“针对每个bandName遍历所有bandCountries的情况,并为每个bandCountry获取来自其的乐队的列表。如果没有一个乐队在场地名中播放,请转到下一个场地名。否则,在bandCountries的末尾迭代将会场名称添加到良好的会场名称集合中”。 ...但是您不能在SQL中这样说,我实际上需要思考如何表述这一点,而直观的命令式解决方案不断地困扰着我。还有其他人有这个问题吗?您是如何克服这一难题的?您发现范式转变了吗?将命令式概念映射到SQL概念,以将命令式解决方案转换为声明式解决方案?读一本好书? 附言:我不是在寻找上述查询的解决方案,而是已经解决了。

10
Web开发人员还是软件工程师?[关闭]
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案会得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意调查或扩展讨论。如果您认为此问题可以解决并且可以重新提出,请访问帮助中心以获取指导。 7年前关闭。 已锁定。该问题及其答案被锁定,因为该问题是题外话,但具有历史意义。它目前不接受新的答案或互动。 我一直在问自己一个问题,真的很困惑该走哪条路。 因此,就当今这两种职业的利弊,我需要你们的帮助。我喜欢Web应用程序开发,因为Web是这个时代发生的最好的事情,并且几乎每个人都可以在万维网上度过。并且还倾向于不断学习新技术和Web服务。 另一方面,我也喜欢桌面应用程序的软件工程,因为我曾经在VB.Net,Java,C ++等中开发小型软件,因此经验丰富。 哪条道路有更大的范围和更好的未来?您有什么看法?

10
这些天采用/要求.NET框架是否合理?
背景: 我有一个项目,我需要向用户提供一个下载包,其中包含一些敏感数据。数据需要加密。下载后,他们需要能够查看它(无需编辑)。对于这个问题,让我们将数据近似为一系列静态html文件。由于数据很敏感,因此在磁盘上的任何时候都需要对其进行加密。 我们正在考虑为用户提供下载选项,该选项将为他们提供一个包含两个文件的zip文件: 数据文件(我们可能会在后台使用加密的zip文件)以及他们要求的数据 一种查看数据的应用程序,该数据将适当提示输入密码,并处理数据解密并通过嵌入式Web浏览器显示。 额外细节: 用户不受我们的控制。他们是消费者。 我们不担心这个问题中的跨平台。这只是关于Windows。我们将为Mac用户单独下载。 已经解决了这个问题: 对于我们需要创建的应用程序,我们正在内部辩论该应用程序是否适合.NET winforms应用程序。我们需要一个.exe,并且我们希望下载量较小(例如100k)。 敢于使用.NET框架吗(我们不需要使用特别新的.NET 2.0版本就可以了)吗? 是否可以假设大多数消费者由于Windows Update而现在在其计算机上都装有.NET? 问没有安装它的人是否合理? 我们知道不是100%的用户将安装.NET。真正的问题是让他们在这个时代拥有它是否合理。 PS是否有人知道已经安装了.NET的实际百分比的可靠统计信息?

17
Silverlight有未来吗?[关闭]
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案会得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意调查或扩展讨论。如果您认为此问题可以解决并且可以重新提出,请访问帮助中心以获取指导。 6年前关闭。 最近,我阅读了一些有关WPF和Silverlight的发展和历史的文章/博客/评论。在某些论坛中,许多开发人员和用户都批评WPF应用程序的性能(例如Visual Studio 2010)。实际上,与Flash相比,Silverlight的市场份额不是很高。在2010年PDC大会上,鲍勃·穆格里亚(Bob Muglia)表示“我们的Silverlight战略和重点已经转移了……”,微软希望在未来推出HTML5。 此外,微软宣布HTML5是Windows 8和Windows Phone 8(“芒果”)平台的核心部分。 最近,我开始学习Silverlight,现在我必须自问,我是否应该继续花时间学习这些非常好用的强大技术!他们有未来吗?(Windows)桌面(客户端)应用程序有未来吗?所谓的“丰富的Internet应用程序”是否有未来?还是HTML5会成为软件开发中的“绝对真理”? 您对此有何看法?

15
当考虑将其雇用为程序员时,有人在互联网公平竞赛中发布什么?[关闭]
关闭。这个问题是题外话。它当前不接受答案。 想改善这个问题吗? 更新问题,使它成为软件工程堆栈交换的主题。 8年前关闭。 (最初发布在Stack Overflow上,但在此处关闭,在此处更相关) 因此,我们首先采访了一个担任技术职务的家伙,他非常出色。在第二次采访之前,我们用谷歌搜索了他,发现他的MySpace页面可能被认为是不合适的。为了清楚起见,毫无疑问这就是他的页面(姓名,照片,匹配的传记信息等等)。 内容完全是私人的,与他的专业能力或态度无关。 在考虑是否为他们提供工作时考虑这一点是否公平? 在大多数情况下,我的回答是某人的私生活是他们自己所做的。但是,对于任何自称(隐式或显式)理解互联网及其所提供的可能性的技术人员,是否以一种可以明显地发现重大判断错误的方式发布信息? 编辑:澄清-从本质上讲,这是对色情片的相当生动的评论(但是,可以说,这是非学术性质的)。实际上,我对通用概念比对特定事件更感兴趣,因为随着人们越来越多地将自己置于网上,这在将来我们可能会看到更多。 我主要关注的不是他,也不是他对这种事情的感觉(他是白人,直男,男性,也是这个星球上最后一个可能受到歧视的受害者),更多地是如何在公司中反映出一个非常简单的搜索方式(基本上是他的名字)返回这些内容,客户也可以这样做。我们在一个相对保守的行业工作。

13
您使用什么工具来管理用户的请求?[关闭]
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案会得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意调查或扩展讨论。如果您认为此问题可以解决并且可以重新提出,请访问帮助中心以获取指导。 7年前关闭。 我淹没在用户电子邮件中,我想采用一种更好的方法来管理我收到的所有这些请求,并将它们排在队列中,以便团队中的这些人员以及用户可以访问它们并可以使它们变得通用笔记。我正在考虑某种任务管理工具,该工具将允许在一个项目中创建多个任务,在该项目中可以删除/输入电子邮件,评论,想法等,并且易于访问。 我需要各方都能参与的工作-用户,经理,团队负责人,开发人员。我正在寻找一种可以允许的工具: 用户只需拖放电子邮件即可提交维护或增强请求。 开发人员只需查看他们的队列和每个任务/项目的加权优先级即可。 一组开发人员可以实时查看每个人的工作。 管理层要保持在每个任务上花费的时间日志。 我正在开始寻求更多的敏捷/敏捷方向来解决这个问题。我找到了Scrum敏捷软件项目管理开源工具列表。由于时间有限,有人使用过这些吗?我应该测试哪一个来满足我的需求?TeamPulse是一个很好的方向,但认为它有点too肿。我需要所有各方简单的东西。

17
我如何评估写书,文章或在会议上发表的论文是否值得?[关闭]
关闭。这个问题是题外话。它当前不接受答案。 想改善这个问题吗? 更新问题,使它成为软件工程堆栈交换的主题。 6年前关闭。 我试图了解我应该如何评价写书,文章或会议演讲。 写书是很多工作。在杂志上写文章或在会议上演讲也是如此。他们需要时间,您甚至可能在这里和那里犯错,导致事与愿违(糟糕的评论,人们称呼您为白痴。)您也可以免费这样做(至少用于杂志文章和会议演讲。对于书籍,您会得到类似$ 5K的定金,在那之后您很少会获得任何额外的销售版税)。 那么我应该如何评估收益呢?如果您之前已经这样做过,我将不胜感激。我可能不会写一本书,因为它超出了我想按时提交的书,但是我应该麻烦做会议演讲或在杂志上写短文章吗?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.