软件工程

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

6
我如何成为一名真正的专家?[关闭]
很难说出这里的要求。这个问题是模棱两可,含糊,不完整,过于宽泛或夸张的,不能以目前的形式合理地回答。如需帮助澄清此问题以便可以重新打开, 请访问帮助中心。 8年前关闭。 作为自由职业者,我没有那么多公司培训和一支专业员工圈子。尽管我过去几年一直从事编程工作并开发了专业项目,但有时我发现自己处在没有帮助的地方。甚至StackOverflow和其他相关站点也无法提供帮助。 以Crystal Reports为例。在我的项目中,最近几年一直在使用它。我自己学习了所有内容,但仍然遇到很多问题。我仍然无法提高报表的性能,无法快速设计,仍然只能使用Crystal Report的30%的功能。 我居住在一个找不到像纽约或旧金山这样的自由职业者来学习的自由职业者的城市。我的预算中没有几个在线可用的专家。 我在使用C#和其他技术时遇到同样的问题。在StackOverflow,您无法让专家参与其中。经过两三则评论后,他将使您的问题失去重点,而跳到那里的一个新问题。 很少有人建议我研究其他人编写的代码以快速学习。但是同样,如何使我的查询得到回答。在某些方面您根本无法写下来。您需要个人协助。 我认为与其他国家相比,美国的自由职业者拥有更好的选择和灵活性。

5
在开始开发项目之前要计划什么?[关闭]
已关闭。这个问题需要更加集中。它当前不接受答案。 想改善这个问题吗?更新问题,使其仅通过编辑此帖子来关注一个问题。 4年前关闭。 假设我已经从客户那里收到了一个项目的规范,现在是时候开始开发它了。通常,我只是从第一个模块开始(通常是用户注册),然后从一个模块进入下一个模块。我只是在即将开始模块工作之前就在脑海中计划,但在此之前没有任何计划。 但是,我认为最好在编写代码之前仔细阅读规格并计划系统的工作方式,例如主要组件是什么,它们将如何交互等。我只是不确定我应该怎么计划。 为了更好地了解我的要求,我应该如何- a)将项目分为几个部分, b)计划他们的交互,例如我应该做类图,编写单元测试等吗? 有任何想法吗?

4
经典ASP到ASP.net或ASP.net MVC
我们有一个使用经典ASP开发的Web应用程序,它经过5年的发展演变成目前的形式,该应用程序具有100多个页面,庞大的数据库和10000个活跃用户,每天至少浏览10个页面。 现在,我们想将其升级到最新版本的.net。最初我们考虑重写整个应用程序,但是在分析了场景之后,我们发现这不是一个可行的选择,很多专家也没有建议。我们还没有决定如何做,但是对如何实现面部改写有些想法。 选项1: 我们考虑了识别此应用程序中的主要模块,并通过将应用程序划分为不同的层(如数据库(现有),业务逻辑和视图)来逐一重写它们。这样,新开发的模块将被添加到现有系统中,而新页面将替换该特定模块中的旧页面。同时,我们可以与旧系统一起测试新层,并在我们确信后释放它们。我们还考虑过开发用于业务逻辑的API类型的结构,并将其作为外部应用程序进行访问。 选项2: 目前,我们已经完成了一个简单的模块,并通过IFrame在经典ASP页面中使用了它,尽管在经典ASP和IFrame中的新页面之间发送数据非常麻烦。 这只是在计划阶段,我们将如何实现整个应用程序的重写而又不打扰用户群。 我想征询其他程序员的意见,意见和建议,以应对这种情况?如果有人遇到过这种情况,请也分享您的看法。 还想知道使用ASP.net MVC在这方面对我有帮助吗? 更新:感谢您提供观点的两个答案。在将应用程序从经典ASP迁移到asp.net或asp.net mvc时,我想在上面指定的两个选项上获得更多输入。如果你们都可以通过您对迁移部分的观点,观点和想法,而不是选择asp.net或asp.net mvc的观点,那对我将是极大的帮助。

3
编写jenkins插件:文档在哪里?
在我当前的项目中,我们正在使用Jenkins监视我们的构建。现在他们要我写一个Jenkins插件来添加更多监视参数。 我看了一下状态监视器插件的工作方式,但无法弄清楚。我试图寻找用于编写插件的文档,但这似乎非常缺乏。(该站点仅提及如何生成基础项目,并且指的是内容不丰富的教程) 我想做的就是向每个构建添加一些选项,添加一个链接和一个监视页面。添加到主页显然是通过添加操作来完成的,但是我仍在尝试找出其余的内容。以及如何联系在一起。 没有人有任何指针,或者在哪里可以找到一些不错的文档?

11
放弃对这种情况的唯一合理回应吗?[关闭]
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案会得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意调查或扩展讨论。如果您认为此问题可以解决并且可以重新提出,请访问帮助中心以获取指导。 6年前关闭。 我读了一篇有趣的文章,这是退出IT的十大理由。 我引用了这段文字的一部分: “对职责和技术的误解只是一件事:它使您无法完成工作。当权力开始对您的部门进行微观管理时,每一个不良因素都会加剧。您知道自己的工作,而且知道自己知道自己的工作。管理层不了解您的工作,但他们不知道他们不了解您的工作。这都是Mobius的恶性压力。” 这正是我的项目目前正在做的事情。客户,即付费的客户,想要成为一切。他想在项目中扮演所有可能的角色。即使他对编程一无所知,他甚至还希望得到详细的技术说明。当某事不起作用时,他将其归咎于其他人。 有没有类似的经历?关于如何处理这些情况有什么建议吗?

9
Java会赶上C#吗?[关闭]
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案会得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意调查或扩展讨论。如果您认为此问题可以解决并且可以重新提出,请访问帮助中心以获取指导。 8年前关闭。 今天,我发布了一个问题,询问哪种C#或Java语言更适合我学习。我有一些很好的答案。出现的一件事是,也许Java现在在新功能方面已经落后于C#。我看到了一些Web链接,并且大多数人指出了C#拥有什么以及Java没有什么。 所以我对大家的问题是Java是否会再次赶上C#?如果您要猜测5年后的状况。是否会有现在可能缺少的所有东西?Java 7呢?
17 java  c# 

6
自由职业者的建议付款时间表
我多年来一直是自由开发人员,并且正在建立一个旨在通过我的开发人员网站吸引客户的系统。 如果成功的话,这些客户将是我所不知道的,而且有些工作可能很小。与我认识的较大项目的客户合作时,我习惯于在获得报酬之前先完成工作。但是,这似乎很冒险。 我正在寻找小项目需要的付款时间表方面的建议。我怀疑潜在客户不会愿意全额支付,因此解决方案可能是某种折衷方案。

13
是否有不使用版本控制和持续集成的严肃公司?为什么?
我的一位同事给我们的印象是我们的软件部门非常先进,因为我们同时使用了具有持续集成功能的构建服务器和版本控制软件。这与我的观点不符,因为我只知道一家公司制造过认真的软件,却没有一家。但是,我的经验仅限于少数公司。 有谁知道有一家从事软件业务并且不使用这些工具的真实公司(超过3个程序员)?如果存在这样的公司,是否有充分的理由让他们不这样做?

5
MVC,WCF,EF,LINQ-是我吗?[关闭]
关闭。这个问题是题外话。它当前不接受答案。 想改善这个问题吗? 更新问题,使它成为软件工程堆栈交换的主题。 8年前关闭。 ...还是事情变得越来越复杂? 在我看来,这些天您需要了解很多知识,才能“正确”开发MS Web应用程序。在糟糕的过去,我们并没有更好的了解,我们有了数据库表,ASP.NET,ADO.NET,并且您使用相对简单的概念构建了一个Web应用程序。 如今,似乎有很多框架可以“帮助”您“正确”地完成工作,但是我不认为这会使事情变得更容易和更好。我有这种感觉,我会成为少数,但是还有其他人认为事情有点发疯了吗?

8
对抗Einstellung效应
已关闭。这个问题需要更加集中。它当前不接受答案。 想改善这个问题吗?更新问题,使其仅通过编辑此帖子来关注一个问题。 4年前关闭。 该定势效应指的是更好的“一个人的倾向,即使有解决一个特定的方式给定的问题‘’解决问题的或更多合适的方法。” 作为一个拥有丰富经验的程序员,如何克服这种总是从过去的经验中“尝试而真实”的方式解决问题的趋势? 举两个非常具体的例子,我已经建立了很长时间的Web应用程序,足够长时间以早于Javascript框架(例如jQuery)和更好的Web应用程序框架(例如ASP.NET MVC)的广泛使用。如果我的客户工作时间紧迫,或者遇到问题领域或业务规则提出的紧迫问题,那么我倾向于只使用我所知道的方法来寻求解决方案。这涉及非常丑陋的事情,例如 document.getElementById 或将ASP.NET与模板绑定控件(DataList / Repeater)一起使用,而不是弄清楚如何使用ASP.NET MVC方法重新构造事物。 我过去使用的一种技术是拥有一些个人项目,这些项目只是为了探索这些新技术而存在,但是很难维持下去。可以建议其他什么方法?
17 learning 

6
Fortran编译器是否真的比C编译器生成更快的代码?
当我在大学学习时,我经常听到这样的想法:对于同等程序,Fortran编译器生成的代码比C编译器更快。 关键原因是这样的:Fortran编译器每行代码平均发出1,1个处理器指令,而C编译器每行代码平均发出1,6处理器指令 -我不记得确切的数字了,但是想法是C编译器发出明显更多的机器代码,因此产生较慢的程序。 这样的比较有效吗?我们可以说Fortran编译器比C编译器生成更快的程序,反之亦然,为什么存在这种差异?

3
Ur / Web用于网络编程的新的纯功能语言?[关闭]
已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引用的形式回答。 4年前关闭。 在搜索类似Haskell的语言的Web框架时遇到了Ur / Web项目。它看起来像一个人完成的非常有趣的项目。 基本上,它是Web编程的领域特定的纯功能语言,它充分利用了ML和Haskell的优势。语法是ML,但是Haskell有类型类和monad,并且经过严格评估。服务器端被编译为本地代码,客户端被编译为Javascript。有关其他广告优势,请参见幻灯片和常见问题页面。 查看这些演示及其源代码,我认为该项目非常有前途。最新版本是20110123,因此目前似乎正在积极开发中。 这里有人有进一步的经验吗?与ML稍微冗长的语法相比,与Haskell相比是否存在问题/烦恼?

4
Scala开发人员如何接受采访[关闭]
已关闭。这个问题需要更加集中。它当前不接受答案。 想改善这个问题吗?更新问题,使其仅通过编辑此帖子来关注一个问题。 5年前关闭。 Scala程序员如何接受采访?面试官在采访Scala开发人员时会寻找哪些方面?
17 interview  scala 

9
陈述应该采用内部方法还是外部方法?
这些设计中哪个更好?各自的优缺点是什么?您会使用哪一个?任何其他关于如何处理类似方法的建议都值得赞赏。 可以合理地假设Draw()是调用其他绘制方法的唯一位置。这需要扩展到更多的Draw *方法和Show *属性,而不仅仅是此处显示的三个。 public void Draw() { if (ShowAxis) { DrawAxis(); } if (ShowLegend) { DrawLegend(); } if (ShowPoints && Points.Count > 0) { DrawPoints(); } } private void DrawAxis() { // Draw things. } private void DrawLegend() { // Draw things. } private void DrawPoints() { // Draw …
17 c# 

14
作为一个渴望成为程序员的年轻学生,我应该对开源软件有何看法?[关闭]
已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引用的形式回答。 5年前关闭。 有时,在某些技术网站上会弹出这样的标题:http : //www.osor.eu/news/nl-moving-to-open-source-would-save-government-one-to-four十亿 我最初对政府和组织转向开源软件的想法是,成千上万的程序员将失去工作,行业将萎缩。同时,在许多编程社区中似乎都极大地鼓励了开源软件的扩散和使用。 我是否认为,到处都在全面拥抱开源软件会伤害软件业一个误解?如果不是,那么为什么那么多程序员喜欢开源软件?

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.