软件工程

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

2
合同编制-存款百分比和付款方式?任何建议表示赞赏
我是从事合同工作的新手,终于找到了一个体面的薪酬项目。那家伙实际上提出要付定金,我只是想知道我应该考虑要求的百分比。我在考虑25%,因为它不是一个非常大的项目(仅约20小时)。 另外,我不能使用PayPal(在没有充分理由的情况下冻结了PayPal),所以我想知道是否有人可以建议其他方法让客户发送存款/付款。我想让他们尽可能的容易..谢谢你的建议

16
在采访中从流行语敏捷中淘汰真正的敏捷[关闭]
已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引用的形式回答。 5年前关闭。 我最近一直在面试合作社(带薪实习),而我面试过的许多公司都说他们使用Scrum或其他敏捷方法(scrum是最受欢迎的)。我知道那里有真正的敏捷商店,有些地方说他们使用敏捷方法论,但实际上是在做其他事情,并以敏捷作为流行语。 我的问题是,在面试中我会问哪些问题将这些商店分开? 编辑:当我在寻找实习机会时,我觉得这些问题与每个人都息息相关。实习部分是情境。
14 agile  scrum 

10
Scrum团队的怀疑论者
我的公司最近改用了敏捷的工作方式,作为其中的一部分,我们开始使用SCRUM。尽管我对此感到很自在,并觉得这种方式要优于传统方式,但我的一些队友却没有相同的看法。实际上,他们对“所有这些敏捷的东西”都持怀疑态度,并且没有认真对待它。例如,一个队友总是在会议上迟到,并且并不在乎。国际海事组织的管理人员试图不注意到这一点(也许是因为它是新的,并且人们需要时间来适应它)。 我的问题是,如何在不引起团队内部冲突的情况下解决此问题?
14 team  scrum 

16
团队语言基础混合时,ac#dev是否应切换到VB.net?
我最近加入了一个新的开发团队,该团队在.net平台上混合了语言首选项。 开发1:知道VB.net,不知道C# Dev 2:知道VB.net,不知道c# 开发3:熟悉c#和VB.net,更喜欢c# 开发4:知道c#和VB6(VB.net应该很容易掌握),更喜欢c# 在我看来,.net空间中的思想领袖几乎都是c#开发人员。我还认为某些第三方工具不支持VB.net,但是当我开始研究它时,却没有发现任何好的例子。 我希望整个团队都使用C#,但是如果没有任何理由除优先考虑之外迫使该问题出现,那么我认为这不是正确的选择。 我有什么理由要带领人们远离VB.net?
14 c#  .net  vb.net 


11
您如何跟踪代码作者?[关闭]
已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引用的形式回答。 6年前关闭。 这是我从未教过的东西。我见过很多不同类型的创作风格。我主要使用Java和Python进行编码。我想知道是否有标准的创作风格,或者是否一切都是自由风格。另外,如果您回答,您会介意附加用于创作在家或在办公室创建的文件的样式。 我通常只是去 @author garbagecollector @company garbage inc.

9
当您的命名约定与您的语言冲突时,您会怎么做?
好的,这是总是困扰我的那些小事情之一。我通常不缩写标识符,并且我唯一使用短标识符(例如i)的时候就是紧循环。因此,当我使用C ++进行工作时,这很烦我,我有一个需要命名的变量,operator或者class我必须解决它或使用缩写,因为它最终会突出。警告:这可能经常在我身上成比例出现,因为我在编程语言设计中投入了大量精力,其中领域对象可能会在宿主语言中反映概念,而无意间导致冲突。 您将如何处理?缩写?(op)拼写错误?(klass)还有吗?(operator_)
14 naming 

12
您将如何主张不使用共享电子表格来跟踪错误/问题?
在我们公司中,开发人员希望使用适当的错误跟踪工具来管理应用程序中的问题。但是,管理层坚持使用共享电子表格(以前是共享的excel文件,现在是基于Web的解决方案上的电子表格,允许并发访问)。 他们的观点是,电子表格可以使他们对项目状态有一个更高级的了解,因为他们可以快速浏览一下打开了多少个错误。这也使他们能够看到谁在处理每个错误,并估计关闭它们所需的时间(因为开发人员需要填写他们正在处理的错误的时间估计)。 如您所知,这对于开发人员来说实际上并不实际(错误跟踪软件的发明是有原因的)。那么,我该如何倡导错误跟踪软件来简化开发人员的工作呢? 作为奖励,您建议使用哪种软件可以让管理层从高层次的角度获得他们的反馈(打开的漏洞数量,正在研究的漏洞,时间估计)?

4
将XML发送到浏览器并让它们应用XSLT有什么缺点?
语境 作为自由开发人员,我经常使网站完全基于XSLT。换句话说,在每次请求时,都会生成一个XML文件,其中包含我们需要了解的有关页面内容的所有信息:当前登录的用户名,顶部菜单项(如果此菜单是动态/可配置的),文本显示在页面的特定区域等。然后XSL将其处理(缓存等)到HTML / XHTML页面以发送到浏览器。 这样做的好处是可以简化创建小型网站的工作,尤其是使用PHP。它是一种模板引擎,但是我比其他模板引擎更喜欢它,因为它比大多数模板引擎要强大得多,并且因为我对此更加了解并且喜欢它。如果需要,还可以根据需要提供对原始XML数据的访问权,以进行自动访问,而无需创建单独的API。 当然,它将在任何中型或大型网站上完全失败,因为即使使用良好的缓存技术,XSL仍会降低网站的整体性能,并需要更多的CPU服务器端。 题 现代浏览器具有获取XML文件并用XML声明的关联XSL文件(如)转换的能力<?xml-stylesheet href="demo.xslt" type="text/xsl"?>。Firefox 3可以做到。Internet Explorer 8也可以做到。 这意味着可以将50%的用户的XSL处理从服务器迁移到客户端(根据我可能要实现此目的的多个网站上的浏览器统计信息)。这意味着,这50%的用户在每次请求时将仅接收XML文件,从而减少了其和服务器的带宽(XML文件比其处理的HTML模拟物短得多),并减少了服务器的CPU使用率。 这种技术的缺点是什么? 我考虑了几个,但不适用于这种情况: 实施困难,并且需要根据浏览器请求选择何时发送原始XML,以及何时将其转换为HTML。显然,该系统不会比实际系统困难得多。唯一要做的更改是将XSL文件链接添加到每个XML,并添加浏览器检查。 IO和带宽使用更多,因为XSLT文件将由浏览器下载,而不是由服务器缓存。我认为这不会有问题,因为XSLT文件将由浏览器缓存(例如图像,CSS或JavaScript文件实际上已缓存)。 可能是客户端方面的一些问题,例如在某些浏览器中保存页面时可能出现的问题。 难以调试代码:不可能获得浏览器实际使用的HTML源,因为唯一显示的源是下载的XML。另一方面,我很少去看客户端的HTML代码,在大多数情况下,它是直接不可用的(已删除空格)。

10
程序员能力测验
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案会得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意调查或扩展讨论。如果您认为此问题可以解决并且可以重新提出,请访问帮助中心以获取指导。 9年前关闭。 我有很多朋友看到我在做什么,觉得很有趣,然后问我一个问题 Do you think I could be a programmer? 我的回应是 ... ummm ... do you like math? 我想提供一个有帮助的答复,所以我不知道是否有人对从方格开始的人进行了相当不错的能力测验,但具有批判性思维和解决问题的能力?
14 learning  skills 

5
为什么我们不能更有效地捕获软件设计?[关闭]
已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引用的形式回答。 4年前关闭。 作为工程师,我们所有人都“设计”人工制品(建筑物,程序,电路,分子...)。那是一个活动(动词设计),产生某种结果(动词设计)。 我认为我们都同意,名词设计与工件本身是不同的实体。 软件业务(实际上,在任何需要增强生成的产品工件的业务中)的关键活动是了解“设计(名词)”。但是,作为一个社区,我们似乎在记录它方面完全失败了,这可以从人们重新发现有关其代码基础的事实的大量努力中得到证明。让某人向您展示他们的代码设计,然后看看您得到了什么。 我认为软件设计具有以下特点: 一个明确的规范,说明该软件应该做什么以及其性能如何 代码的显式版本(这部分很简单,每个人都拥有) 关于代码的每个部分如何用于实现规范的说明(例如,规范片段和代码片段之间的关系) 一个理由,为什么代码是事情是这样的(例如,为什么一个特定的选择,而不是另一个) 不是设计就是代码的特定视角。例如,[不特别说明] UML图不是设计。相反,它们是可以从代码派生的属性,或者可以说是希望从代码派生的属性。但是作为一般规则,您不能从UML派生代码。 为什么经过50多年的软件构建,为什么我们没有常规的方法来表达这一点?(请通过明确的示例与我自相矛盾!) 即使我们这样做,大多数社区似乎都非常关注于获取“代码”,以至于无论如何都会迷失于设计中。(恕我直言,直到设计成为工程的目的,从设计中提取出工件之后,我们才可以解决这个问题)。 您认为什么是记录设计的方式(就我所描述的而言)?明确引用论文会很好。为什么您认为特定的和一般的方法没有成功?我们该如何改变呢? [我有自己的想法,这些使上面的项目符号观点更加充实,但是我对其他人的回答很感兴趣……而且很难实施我的方案[[也许这是真正的问题:-]]] EDIT 2011/1/3:一个回答线程暗示“文档”(大概是文本的,尤其是非正式的)可能就足够了。我想我应该澄清一下,我不相信这一点。CASE工具从80年代开始出现,但是早期的工具大多只是捕获所绘制图形的像素。尽管这些工具在商业上取得了一定的成功,但实际上并没有太大帮助。一个关键的见解是,如果附加的“设计”工件无法正式解释,那么您将无法获得任何认真的工具帮助。我认为,同样的见解适用于任何长期有用的设计捕获形式:如果没有正式的结构,它将不会有任何实际用途。文本文档几乎无法通过此测试。

9
有什么论据可以使承包商重新考虑以固定价格工作吗?
我一直在为承包人工作,他们带来了一些好的项目,但是它们都是固定价格的,通常都是固定时间的。 因此,他总是让我为宽松的要求报价,因为功能不断变化,这种要求永远不会带来太大的压力。 他声称,如果他不能先与客户达成价格协议,他将永远不会获得合同,但是就我而言,我不想按照这些条款进行另一个项目。 我有什么理由让他按小时支付我的工资,还是我应该少估计一下?

4
名称空间/包装的优点
某些编程语言(例如Java和C ++)具有称为“包”或“命名空间”的语言功能。拥有名称空间真的有多有用?可以像SDL一样(例如SDL_BlitSurface())将功能和类标记为属于某个特定库,而无需使用这种语言功能。命名空间是否不足以值得拥有?它们在库中有用但在应用程序中没有用吗?除了在小型项目中,它们是否在其他地方有用?有什么想法吗?

9
当您不得不使用讨厌的语言来从事项目时,您会怎么做?
最近,我被分配去从事一个用PHP编写的项目。我无法改变,也没有真正尝试的意图。 但是,这并非罕见的情况。当您正在查看和生成的代码不断让您想哭时,您如何激励自己进行项目工作? 编辑: 应该注意的是,这几乎是目前校园内从事与软件相关的所有工作的唯一工作,因此“只换工作”实际上不是一个选择:(

10
C ++:二进制级别缺乏标准化
为什么ISO / ANSI没有在二进制级别上标准化C ++?C ++存在许多可移植性问题,这仅是由于缺乏二进制级别的标准化。 Don Box写道(引自他的《基本COM》一书,“ COM作为更好的C ++”一章) C ++和可移植性 一旦决定将C ++类作为DLL分发,就会面临C ++的基本弱点之一,即二进制级别的标准化不足。尽管ISO / ANSI C ++草案工作论文试图对将编译的程序以及运行它们的语义产生的影响进行编码,但它并未尝试标准化C ++的二进制运行时模型。第一次,当客户端尝试从C ++开发环境(而不是用于构建FastString DLL的环境)中链接FastString DLL的导入库时,此问题将首次显现。 还有更多的好处,或者由于缺少二进制标准化而损失了吗?
14 c++  dll  ansi  iso 

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.