软件工程

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

16
C#开发人员每月可以生产多少行代码?[关闭]
已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引用的形式回答。 6年前关闭。 已锁定。该问题及其答案被锁定,因为该问题是题外话,但具有历史意义。它目前不接受新的答案或互动。 我工作场所的一位高管向我和开发人员小组提问: C#开发人员每月可以生产多少行代码? 一个旧的系统将被移植到C#中,他希望此措施成为项目计划的一部分。 从某些(显然是可信的)消息来源,他得到的答案是“ 每月 10 SLOC ”,但他对此并不满意。 该小组同意这几乎是不可能的,因为这取决于一长串情况。但是我们可以断定,如果我们没有给出更适合他的答案,那个人就不会离开(或者对我们非常失望)。因此他留下了更好的答案:“ 每天 10 SLOC ” 这个问题可以回答吗?(立即使用,甚至进行一些分析)

9
C与C ++有何不同?
许多人说过C ++是与C完全不同的语言,但是Bjarne本人也曾说过C ++是从C扩展而来的语言,因此才是C的++来源。那么,为什么每个人都在说C和C ++是完全不同的语言呢?除了C ++的扩展功能外,C与C ++有何不同?

11
程序员期望熟练使用几种编程语言?[关闭]
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案会得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意调查或扩展讨论。如果您认为此问题可以解决并且可以重新提出,请访问帮助中心以获取指导。 7年前关闭。 大多数程序员是专注于单个堆栈,还是保留其他东西,还是同时精通多种语言?如果不止一个,则标准数量是多少? 对于专家来说,我的意思不仅仅是简单地了解一种语言的语法-专家对标准库,工具,环境和语法的了解足够多,他们能够编写非平凡的程序,而不必不断地查找内容或阅读书籍/教程。

11
将源代码移交给客户
我为一个客户制作了两个iPhone应用程序,今天被要求交出源代码,以便他们在需要时进行维护。到目前为止,还没有讨论过任何代码问题。 是否有“常规”做法? 另外,这应该以哪种方式影响价格?

11
处理Java中null的最佳方法?[关闭]
已关闭。这个问题需要更加集中。它当前不接受答案。 想改善这个问题吗?更新问题,使其仅通过编辑此帖子来关注一个问题。 4年前关闭。 我有一些由于NullPointerException而失败的代码。在不存在该对象的对象上调用一个方法。 但是,这导致我考虑了解决此问题的最佳方法。我是否总是对空值进行防御性编码,以便将来为空指针异常证明代码,还是应该修复空值的原因,以免它在下游发生。 你怎么看?
21 java  null 

12
我的简历上只有两种语言-这有多糟糕?[关闭]
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案会得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意调查或扩展讨论。如果您认为此问题可以解决并且可以重新提出,请访问帮助中心以获取指导。 7年前关闭。 考虑到你们中有些人的丰富经验,我有一个可以在这里最好回答的问题! 我要完成CS的学士学位,让我们面对现实,我对C ++和Python感到很满意。C ++-我没有经验可以证明,我不能像某些SO专家那样引用C ++标准,但我对语言基础和最重要的内容感到满意。使用Python,我已经展示了在一家优秀公司的工作经验,因此我可以放心地说。 我从未接触过C,尽管我一直有意这样做。所以我不能在履历表上写C,因为我从未这样做过。当然,我可以在一个月内完成K&R并获得某种语言的理解,但是我不喜欢写它,因为那样对我自己是不忠的。 因此,最大的问题是,简历上的两种语言是否被认为还可以,或者通常是一个不好的信号?我见过的大多数简历都提到很多语言,因此我也提出了问题。在我的简历的语言部分下,我只提到:C ++和Python,那看起来有点空! 您对此有何看法?您对此情况有何看法? PS:我真的不想写我熟悉的每个库或API。还是我应该?
21 resume 

11
您使用哪个持续集成框架,为什么?[关闭]
已关闭。这个问题需要更加集中。它当前不接受答案。 想改善这个问题吗?更新问题,使其仅通过编辑此帖子来关注一个问题。 6年前关闭。 有很多不同的持续集成(CI)框架,我想知道哪种框架最受欢迎。您在您所在的公司使用了哪些框架? 是否有任何理由使一个CI框架比其他CI框架更受欢迎-也许与它提供的功能,集成到其中的东西有关? 似乎在Java和.net世界中使用持续集成比使用ruby或python要多。为什么是这样?

7
关于单元测试的最佳书籍,文章和文献
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案会得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意调查或扩展讨论。如果您认为此问题可以解决并且可以重新提出,请访问帮助中心以获取指导。 8年前关闭。 已锁定。该问题及其答案被锁定,因为该问题是题外话,但具有历史意义。它目前不接受新的答案或互动。 在我的工作组中引入单元测试的斗争中,我发现很多人对此概念一无所知。你能建议: 快速介绍相关主题的最佳文章或教程 深入学习单元测试的最佳综合书籍 证明单元测试有效的学术作品和研究

2
如何衡量软件的可扩展性?
我被要求就特定的应用程序可伸缩性做一些小型的技术介绍。该应用程序是使用Java,Spring MVC,Hibernate开发的。我可以访问应用程序源代码。 如何测量软件可伸缩性(使用源)以及在测量软件可伸缩性时需要注意哪些指标?

6
您如何处理故意的错误代码?
关于故意错误代码的故事很多,不仅在TheDailyWTF上,而且在SO上。典型的案例包括: 具有无用的浪费时间的构造(例如,空循环计入了巨大的价值),因此程序员可以轻松地通过在任务执行时删除应用程序来“加速”应用程序。 提供故意误导,错误或没有文档的文档,以产生昂贵的支持请求。 即使一切正常,也容易产生错误,或更糟糕的是,即使应用程序运行良好,也会锁定应用程序,因此需要昂贵的支持电话才能解锁。 这些观点显示出或多或少的恶意态度(即使有时是偶然的),尤其是第一点经常发生。 一个人应该如何处理这样的结构?忽略问题,还是仅删除有问题的代码?通知他们的经理,或与介绍“功能”的人交谈?
21 bad-code 

8
您如何管理功能请求和软件更改?[关闭]
已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引用的形式回答。 4年前关闭。 我是一名软件工程师,在过去的几年中,我之所以成为事实上的软件项目经理,仅仅是因为没有人。因此,为了保持我们在研发/工程部门的理智,客户已经习惯了向我提出他们的要求。我没有这个领域的经验,所以这是我第一次担任软件项目的项目经理。我已经管理了其他东西,但没有管理软件。 那么,您如何管理软件项目并标记优先级?请求以不频繁的间隔出现,因此我们很可能会为其他人做某事,然后另一个人来了需要处理的“紧急”工作。只是说“先来先服务”还是更容易赚钱?

7
哪种自然语言在编程方面具有优势?[关闭]
已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引用的形式回答。 4年前关闭。 语言相对论是语言塑造我们思维方式的想法。我的问题是,这在编程中适用于多少程度? 某些自然语言是否比其他语言更适合于考虑编程?例如,以下内容可以用非英语更简洁地陈述吗? Select a pivot. Move all the items less than the pivot to one side of the list, and all the items greater than the pivot to the other side. 与说英语的程序员相比,说汉语的程序员会以截然不同的视角看待编程,还是当两者都沉浸在主题中时,差异会消失吗? 是某些编程语言和领域更容易用一种或另一种语言来考虑。例如,如果您是日语,因为Ruby的创建者是日语,那么更容易涉足Ruby 吗? 请注意,此问题不是针对“编程语言如何影响人们对编程的思维方式”,而是“ 自然语言如何影响人们对编程的思维方式”。 为了避免这种情况,英语显然具有实用的优势。我觉得优势已经不大用编程语言选择英文关键字,比如if,for,while,和do,就像谁也不说话意大利音乐家不喜欢的话绊倒的拿手好戏。它更多地与与其他程序员的思想交流有关,因为如今至少在编程世界中,英语已成为当今的通用语言。例如,要在StackOverflow中提出问题,您确实需要懂英语,并且如果您想要好的答案,也应该很好地了解英语。尽管这听起来像是帝国主义的态度,但实际上确实是这样。 除此之外,语言的内在属性如何影响说语言的程序员如何思考数据结构,算法等?在谈论逻辑和编程时,是否有任何语言特别简洁,以使使用该语言的母语者能更快地思考?
21 philosophy 

16
程序员至少应该专注于几种语言?[关闭]
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案会得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意调查或扩展讨论。如果您认为此问题可以解决并且可以重新提出,请访问帮助中心以获取指导。 8年前关闭。 对我来说,我是C#和Java。我发现这两种语言非常相似,因此我更容易相互交流。我不确定采用其他不同语言是否是个好主意。有什么想法吗?

9
如何为新程序员讲授异常处理?[关闭]
已关闭。这个问题需要更加集中。它当前不接受答案。 想改善这个问题吗?更新问题,使其仅通过编辑此帖子来关注一个问题。 4年前关闭。 您如何向程序员讲授异常处理。轻松教授所有其他内容-数据结构,ASP.NET,WinForms,WPF,WCF-您可以轻松地讲授所有内容。 使用异常处理,最终对它们进行尝试尝试只是异常处理的语法性质。 但是,应该教的是-您将代码的哪一部分放在try块中?你在赶路区做什么? 让我用一个例子来说明。 您正在处理Windows Forms Project(一个小型​​实用程序),并且已按照以下3个不同的项目进行了设计。 UILayer 业务层 数据层 如果在DataLayer上引发了异常(让我们说加载XDocument会引发异常)(UILayer调用BusinessLayer,而BusinessLayer依次调用DataLayer),您是否只需执行以下操作 //In DataLayer try { XDocument xd_XmlDocument = XDocument.Load("systems.xml"); } catch(Exception ex) { throw ex; } 哪些再次在BusinessLayer中引发,哪些在UILayer中捕获,在那里我将其写入日志文件? 这是您进行异常处理的方式吗?

8
开源项目如何自我维持?
我一直在想这个问题,但找不到合适的地方问。网上有一些非常不错的开源免费软件。这些产品如何维持财务状况?编写一个小型实用程序做一件好事是一回事,但是编写具有全部功能的复杂产品则完全是一回事。因此,再次重复一遍,他们在财务上如何运作?

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.