软件工程

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

8
强制执行的专业发展计划有用吗?
许多公司,尤其是大型公司,都为员工制定了强制性的职业发展计划。员工和经理制定了个性化的专业发展计划,并经常跟踪进度。 作为开发人员,您认为这样的PDP有用吗?您是否遵守承诺? 作为经理,您是否认为这样的PDP为公司带来价值并提高员工的整体素质? 好的开发者似乎将继续自我教育,并努力变得更好,无论公司采取何种程序,而不好的则不会。 拥有PDP是否有好处?或者仅仅是管理人员认为他们需要做的事情?

8
如何编写更少的代码[关闭]
很难说出这里的要求。这个问题是模棱两可,含糊,不完整,过于宽泛或夸张的,不能以目前的形式合理地回答。如需帮助澄清此问题以便可以重新打开, 请访问帮助中心。 8年前关闭。 我要开发的质量是编写更简洁的代码。至少在我看来,随着编写得更加简洁,向代码中添加错误的机会更小了。阅读其他代码更容易。 我的问题是,这是随经验而来的,还是您可以明确地为提高质量而做的事情?

4
时间跟踪方法的替代方法
已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引用的形式回答。 6年前关闭。 首先要问的问题:对于网络/软件开发公司的员工来说,时间跟踪有哪些可行的替代方法?为什么它们是更好的选择 说明: 我在这样的公司工作。每个人都有薪水。我们有3种类型的工作,合同,临时和内部(非收费)。Adhoc只是一些小的更改,需要几个小时,因此我们只在月底向客户收费。签订合同后,我们通常会经历漫长的过程。 我们通过估算所涉及的时间(从设计和开发人员那里),乘以我们的小时费率,就可以得出多少费用。因此,假设我们估计一个网站需要50个小时。我们有时间跟踪软件,必须记录我们花在它上面的15个时间(例如7:00到7:15),项目名称并提供一些注释。 现在,如果我们超过50个小时,我们既会亏损又会效率低下。 现在,我已经解释了系统的工作方式,我的问题是,如果存在更好的方法(我确定必须这样做),该如何做?这里没有人喜欢当前的系统,我们只是找不到其他选择。我很乐意在一个小时的工作之后再完成一个项目,以使它按时完成,但是我很愿意在当前系统上这样做。我希望能够为我的经理总结(或链接到)这篇文章,向他们展示为什么我们应该使用abc系统而不是此系统。

5
哪种格式最适合第一个不在纸上的原型?[关闭]
已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引用的形式回答。 6年前关闭。 控制台应用程序(我最喜欢的),快速而草率的表格,MS Paint(用于GUI);在大多数情况下,哪种情况最适合您的标准应用程序?为什么?

7
程序员是否擅长学习“口语”语言?[关闭]
关闭。这个问题是题外话。它当前不接受答案。 想改善这个问题吗? 更新问题,以使它成为软件工程堆栈交换的主题。 6年前关闭。 这可能与主题无关,但我会冒险,因为该网站是关于Programmers的! 程序员善于不断学习新的编程语言,但是他们善于学习新的口头语言呢?您成年后是否接受过外国语言(法语/西班牙语/等)并熟练掌握了?容易吗? 我问是因为我已经尝试学习法语已有一段时间了,而我仍处于烦人的“法语国家教育”阶段。我参加了两门法语课程,其中一门课的大多数是程序员,另一门不是,而且能力上的差异非常明显。数学/逻辑倾向是否会妨碍学习语法不为一和零的口语?还是我只是在责怪我,而不是简单地接受我对语言的不满。 [重要的是,您在学校没有被教过语言,因为尽早接触确实可以为您带来优势。我回过头来,并且非常擅长10岁以下的语言。]

4
哪个网站最准确地表明了程序员的能力?
如果您正在招聘程序员,并且可以选择(例如)topcoder.com上排名前100的编码器之一,或者stackoverflow.com上排名前100的编码器之一,那么您会选择哪种呢? 至少在我看来,topcoder.com似乎对解决问题和编写代码的纯粹能力给出了更为客观的评估。同时,尽管具有明显的技术能力,但此人可能缺乏任何社交技巧的提示-他可能纯粹是“孤独的编码者”,几乎没有或根本没有帮助/与他人合作的能力,可能缺乏指导他人转移能力的指导能力他对他人的技术能力等 另一方面,stackoverflow.com似乎至少可以更好地表明同行对所讨论编码员的看法,以及他的存在和在“团队”中对其他人有用和有帮助的程度。同时,计分系统是这样的,一个仅仅抛出很多平庸(甚至答案很差)的人几乎不可避免地会积a正数的“声誉”点-一次投票(也许只是出于(礼貌)将抵消不少于5次的否决投票的影响,并且(在某种程度上)不鼓励其他人进行否决投票,因为这样做必须牺牲自己的声誉。同时,可以说,几乎没有什么技术贡献或没有技术贡献的人似乎不太可能积累声誉,从而使他们(甚至接近)占据顶峰。 那么,哪一种方法可以提供更有用的指示,说明该特定编码员在多大程度上对您的组织有用?如果您可以在他们之间进行选择,那么您希望与哪一组编码员一起工作?

4
如何处理失败的编程项目?
项目失败并不罕见。 作为程序员,您如何处理失败的项目? 故障的一些定义: 错过最后期限。 代码和功能无法实现预期的功能。 软件变成无用的软件或无数个阶段,基本上无法交付。 或者,也许您有自己的故障定义。 你开始手指了吗?您是否责怪自己,要求,技术,管理,客户等?您是否以团队的形式参加了经验教训课程?
12 team  project  failure 

8
我们应该为多核编程花费多少精力?
如今,处理器的核心越来越多,这让我感到奇怪。 程序员,我们是否应该适应这种行为,并在多核编程上投入更多的精力? 我们应该在多大程度上进行优化?线?亲和力?硬件优化?还有吗
12 multi-core 

8
您如何决定自己的工作时间?[关闭]
按照目前的情况,这个问题并不适合我们的问答形式。我们希望答案得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意调查或扩展讨论。如果您认为此问题可以解决并且可以重新提出,请访问帮助中心以获取指导。 8年前关闭。 我有点痒,需要抓痒。这些天我没什么要编程的。通常,我会选择当月技术的风格并对其进行弄弄,但是我想做点什么,并从认真的研究/实验中休息一会儿,而只是写点乐子(即不一定是纯粹的教育/专业知识)开发)。 问题是 我想不出自己没有的软件。 筛选各个站点上的开源项目以提供帮助(令人费解(到目前为止,距离试管仅5个小时-不值得麻烦)) 我不是要针对要处理的内容提出具体建议,因为这将是一项艰巨的任务。我认为彼此之间对彼此的了解不足,无法有效地提出好的建议。 所以我问,当您不是“妖精”时,是否有任何智力锻炼可用来决定要做什么?

2
我们应该将网站编译为单个dll还是每页dll?
我们正在开发一个新项目,该项目将部署在大量客户站点上。该项目包含一个基于Web的GUI,作为其“访问点”之一。Web界面的速度是此项目的首要任务,仅次于安全性。 过去,我们总是在Visual Studio中创建“网站”,发布后,系统中每个页面都会产生一个dll和一个aspx文件。但是,我知道您实际上可以创建一个“ Web应用程序”,并将其编译成单个dll。 对我而言(基于无真实数据,仅凭直觉),将站点编译为单个dll听起来对安全性和速度(如果仅是很小的话)会更好。 在选择适合自己的方法时,我们应该考虑哪些方面的考虑?是否应该注意任何明显的陷阱?

4
您是否认为仅GAE就足以证明通过Ruby学习Python是合理的?[关闭]
已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引用的形式回答。 6年前关闭。 考虑到您不必参与设置/购买服务器甚至不必购买域的事实,您是否认为仅凭这一事实就足以选择一个? 我不一定要在Google App Engine上工作,我只是觉得在托管/环境/等方面很方便。并想知道这是否是学习python的足够好理由。 无论如何,我不是想在python和ruby之间争论,而是在Google App Engine上讨论更多话题,以及它的价值是否足以决定您应该学习的语言。


9
对开发学习计划的建议[关闭]
按照目前的情况,这个问题并不适合我们的问答形式。我们希望答案得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意调查或扩展讨论。如果您认为此问题可以解决并且可以重新提出,请访问帮助中心以获取指导。 8年前关闭。 已锁定。该问题及其答案被锁定,因为该问题是题外话,但具有历史意义。它目前不接受新的答案或互动。 我想知道除了那些非常简单的hello world应用程序之外,我还应该尝试开发其他哪些程序来学习。我明年要进入大学,想知道在那种环境下将开发什么样的程序。 这实际上不是特定于语言的事情,但是如果您想知道我目前主要使用的是什么 Windows:C#/ WPF-我研究了poly中的java / vb等,但我认为C#是必经之路,甚至F# 网址:PHP / MySQL,Zend Framework / Doctrine,当然还有HTML / CSS / JS(jQuery)。希望也尝试使用python的Google App引擎。 现在,我在想 待办事项清单 与api集成的应用程序,例如。我使用的twitter / tumblr 文本编辑器-我目前正在尝试开发一种文本编辑器,该文本编辑器使用markdown并生成html文件进行查看(链接到博客条目)。在我开始开发它之后不是很实用。cos在编辑时没有格式和HTML格式,我无法直接编辑 博客软件(用于网络)

6
实用程序库的最佳许可许可证?
我有一个小型实用程序库,其中包含用Java编写的有用内容,我计划发布开放源代码。我一直在摇摆不定要使用什么许可证。我非常喜欢BSD许可证,该许可证简短易懂,但是我不需要/不需要有关在其产品文档中包含免责声明的条款。考虑将其删除。 那么,MIT许可证会更适合我吗?它没有BSD那样的背书禁止条款,这是我对BSD的认可。另外,麻省理工学院关于在软件的大部分内容上保留版权声明的条款是否仅引用源代码,而不是二进制形式或它们产生的任何文档? 通过调查有关该主题的其他SO问题,我看到一些人推荐Apache许可证。尽管进行了快速扫描,它实际上可以很好地满足了我的大部分要求,尽管即使这么多的法务人员也会使我的头部受伤(尤其是在凌晨2:30,我应该在床上而不是躺在床上休息)。 基本上我想要的是: 容易明白, 说您可以随意使用该代码,但在源代码上保留我的版权和许可声明, 您无需将我的名字或我的产品或版权声明等放在您制作的任何文档,手册等中, 请勿尝试将我或我的产品用作您产品的卖点(无论如何,我的认可绝对不重要!) 并以合理的方式遮盖我的屁股 :-) 编辑:哇,30分钟,已经有一些不错的答复!作为回应: 如果可以,我不希望“混搭”并产生另一个开源许可证。使用标准许可证使我们所有人都更容易。 对屁股的评论有点面颊。提及的所有许可均包含的保修免责声明实际上就是我在说的全部。 编辑:阅读MIT许可证上的Wikipedia页面后,我发现ncurses使用的是经过FSF批准的修改版,其中添加了非认可段落。我认为这对他们足够好,对我也足够。 我当时正在考虑使用Apache许可证,但是我不想介绍GPLv2的兼容性问题。

29
什么会使开发人员放慢速度?[关闭]
按照目前的情况,这个问题并不适合我们的问答形式。我们希望答案得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意调查或扩展讨论。如果您认为此问题可以解决并且可以重新提出,请访问帮助中心以获取指导。 8年前关闭。 已锁定。该问题及其答案被锁定,因为该问题是题外话,但具有历史意义。它目前不接受新的答案或互动。 什么事情会使开发人员放慢脚步? 请尽量避免发布以下答案: 现在速度很慢,但在功能中很有用。(TDD,重构等) 列出干扰。

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.