软件工程

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

13
在大学期间不利用业余时间编程是否很糟糕?[关闭]
已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引用的形式回答。 6年前关闭。 关于不使用业余时间进行编程存在一些问题,但是当您在工作时,它们都会引起关注。在学习的时候呢?当您已经在白天学习时(在大学学习),您还需要学习业余时间吗?
10 learning 

5
强大的开发人员是否必须将世界的重担放在肩上?[关闭]
已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引用的形式回答。 4年前关闭。 作为开发人员,我们不断努力解决群众问题。我们还不断寻找新的方法论,语言和可能的组织,以帮助我们增强解决问题的能力。 我觉得自己一直是团队中的顶级成员之一。我也觉得我正在寻找其他人不喜欢的方式来改善我的工作。大约6年的支持技术使我开始感到有些倦怠。我责怪我工作如此努力并抱有很高的期望。 这个星球上一些最伟大的开发人员甚至不再编写代码来谋生。通常,它会倦怠。有些人说他们已经厌倦了“游戏”,但是我想知道问题是否更简单一些。“在我们的肩膀上担负世界的重担”之一。 如果您觉得自己是一个强大的开发人员,并且还觉得这对您来说不是问题,请以您的方法启发我。您如何及时了解最新技术,帮助他人并快速/准确地解决问题,而不会全神贯注?

3
努力不使用匈牙利符号
我见过支持和反对匈牙利系统的争论。多年来,我一直在使用该系统的旧项目上工作,方法是命名每个变量,并使用变量类型的前缀(例如(strName,intAge,btnSubmit等))进行命名(我知道原始的匈牙利应用前缀是变量,而不是类型)。我希望我的下一个项目完全放弃它,但是我确实发现很难不借助它来唯一地命名类似的东西。 可以说我有一个用于收集电子邮件地址并将其存储在数据库表中的网络表单,还有一个按钮,它调用了将地址保存到数据库的函数。 如果我使用的是匈牙利风格符号,则可以将该框txtEmail称为按钮,btnEmail并将其称为textbox中包含的值strEmail。然后,我可能会使用一个功能storeEmail(strEmail)来存储电子邮件。我这里有一个明确的约定,很明显每个变量是什么。 命名这些变量的最佳实践是什么 不求助于匈牙利系统 而不会使它们长时间或令人困惑 并在整个项目中使用明确的约定?
10 naming  hungarian 

4
是什么使资源“昂贵”?
我正在阅读休眠信息,并且遇到诸如“跨多个请求打开JDBC连接不是一件好事,因为它是一种昂贵的资源”这样的语句。 什么是昂贵的资源? 编辑:我要添加未知的用户添加为下面的注释。 如果建立数据库连接很昂贵,那么为什么不一次又一次地使用同一事物(而不是缓存),而不是每次都关闭并打开它?


8
在开发人员的职位描述中将“无错误”作为关键输出是否适当?[关闭]
已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引用的形式回答。 4年前关闭。 作为对所有职位描述的审查的一部分,我公司决定将以下内容作为关键输出: 网站开发按时完成,符合规范且无错误 鉴于规范会定期更改,因此没有正式的更改控制流程,而且我们要说的环境有些不可预测,该KPI有多现实和合理?

4
如何将依赖项注入集成到语言中?[关闭]
已关闭。这个问题需要更加集中。它当前不接受答案。 想改善这个问题吗?更新问题,使其仅通过编辑此帖子来关注一个问题。 4年前关闭。 我一直在思考如何将依赖项注入更好地直接集成到类似C#的语言中。我想出一个潜在的解决方案,希望听听您的意见。我没有使用很多依赖注入框架,所以可能有些东西我忽略了 无论如何,该想法是能够使用关键字将属性声明为“可注入”。当实例化一个对象,并且未通过构造函数或对象初始化程序初始化该属性时,它将从某些全局服务中请求该属性类型的实例。 同样,您可以为该服务注册不同类型的处理程序,以便可以实例化注入的属性类型。 使用这种IMO架构的好处是它相当灵活且易于使用。不利之处在于,每次您启动带有注入的类时,对单身人士进行标注都可能会有一些开销。 再说一次,对于在高性能解决方案中经常实例化的类来说,这只是一个问题,所以这不是什么大问题。在这些情况下,也许您可​​以使用某种工厂。 思想,问题,问题,更好的主意? 码 public class SomeClass { public SomeClass() { //implicit behavior if Animal is not set in constructor or initializer this.Animal = GlobalInjector.Get(this,typeof(Mammal)) } public injectable Mammal Animal { get; set; } } GlobalInjector.Register(typeof(Mammal), () => return new Mammal(someParameter));

2
哪些GOF设计模式已作为C#中的一流语言功能实现?
(由于“太宽泛”和“不是一个真正的问题”,这个问题在Stack Overflow上已经关闭,也许在这里更合适?) 受到这个问题的启发。我们知道事件是Observer模式的语言级实现。是否在C#中将其他设计模式实现为语言功能?我想保留此问题特定于C#,因为有许多其他语言实现的设计模式,并且我想保持专注。 我不是在BCL中寻找模式实现(例如,许多WCF类中的装饰器或中的Factory Method WebClient),而是语言级别的模式。 到目前为止,我知道观察者(event)和迭代器(foreach结合了许多BCL类和接口)。我可能还缺少其他明显的东西。

8
那所有这些编码规则呢?
我一直支持为公司或特定项目的开发人员制定编码规则的想法。特别是如果公司的规模大于10。公司越大,需求越大。我知道很多人会不同意,但是我看到没有这些项目的项目,并且代码看起来像是彻底的灾难。 由此产生的真正问题是,如何使那些不喜欢在if语句中使用方括号,不喜欢在代码中到处使用相同的连接字符串的人,或者不使用编码规则而又不反对的人这个主意?

9
我的大学不提供php课程,因为它是一种“简单”的编程语言?[关闭]
已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引用的形式回答。 5年前关闭。 我遇到了一位来自计算机科学系的学生,发现他们只教Java和ASPX。我问他为什么他们不教php,因为它是网络上最流行的一种编程语言。他说这是一种“简单”(或业余爱好者)的编程语言。我不知道那是什么意思。 你怎么看?
10 php 

3
关于智能手机应用程序开发人员实际收入多少的确凿证据?[关闭]
关闭。这个问题是题外话。它当前不接受答案。 想改善这个问题吗? 更新问题,以使它成为软件工程堆栈交换的主题。 5年前关闭。 我正在考虑制作一个智能手机应用程序。在开始之前,我想看看它是否完全值得。不幸的是,我发现很难找到任何有力的证据来证明此类应用程序的开发人员实际上是通过购买应用程序或通过应用程序内广告获得多少收入。 到目前为止,我发现的最好的研究表明,iPhone应用程序的平均年收入为682 $。再说一遍,有很多应用程序甚至无法运行,它们的收入也计入该统计数据。因此,我关注一些应用程序及其收益的具体示例。

9
您应该如何向软件世界以外的人解释设计模式
我想向侄女解释设计模式,但是总是很难做到。这在很大程度上是由于我对设计模式缺乏清晰的了解。您如何建议以简单的术语来解释MVC,Singleton,Factory,Repository等模式,即使10岁的孩子也能理解。 我正在寻找可以简化理解模式的示例。例如玩具,电影,音乐等。

4
在保持匿名的同时如何从FOSS赚钱?
可以这样说: 您创建了一个FOSS项目,其他人认为这很有用,也许足以捐赠或支付要进行的修改。 这是一个完全合法且无害的软件项目。它与密码术,弹药,P2P音乐或任何可能导致搜查令或被起诉的事物无关。 您希望您的参与保持匿名或匿名。 如果人们愿意的话,您希望得到一些钱。 那有可能吗,如果可以,怎么办? 当我谈论匿名时,我意识到有必要定义范围。我不是在谈论Wikileaks风格的20层匿名代理。我希望三字母的代理机构能够轻松识别此人。所需要的是与商业竞争者或随机的人隔离开,他们不会被期望能够通过要求金融中介人泄露您的详细信息。 您为什么要保持匿名?我可以想到几个合理的原因,也许您经营一家隐形模式的创业公司,并且不想向竞争对手提供有关您所使用技术的线索。也许这是一个与您的日常工作无关的项目,不在那儿开发,但是您所服务的公司有一项不公平(且可能无法执行)的政策,规定您所做的任何编码均归他们所有。也许您只是珍惜自己的隐私。 您打算在自己的国家/地区为任何捐赠支付相关税款。
10 foss 

2
有eLance的经验(和类似的网站)[关闭]
按照目前的情况,这个问题并不适合我们的问答形式。我们希望答案得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意调查或扩展讨论。如果您认为此问题可以解决并且可以重新提出,请访问帮助中心以获取指导。 6年前关闭。 我正在考虑通过eLance.com(或其他类似网站)进行自由职业,以帮助在开发游戏时支付账单(最终将支付账单)。 通过elance工作是怎样的? 有什么建议或策略吗?任何反馈表示赞赏。

8
像免费啤酒一样免费
几年前(更确切地说是在1998年),使用英语的人们开始混淆使用“ 免费 ”一词,从而使自由软件基金会的一些成员创建了一个新术语:“ 开源”(http://www.gnu。 org / philosophy / free-software-for-freedom.html) 人们最担心的是人们对言论自由的误解,对言论自由的误解,对啤酒的理解也是如此。(请参阅维基百科:http : //en.wikipedia.org/wiki/Free_and_open_source_software)。 这里的免费涉及与使用专有软件“版权”(和专利)相反的使用和共享软件的自由。它是由Ri​​chard Stallman于1986年首次提出的。核心是自由集: 自由0:出于任何目的运行程序的自由。 自由1:自由学习程序的工作原理,并对其进行更改以使其按您的意愿进行操作。 自由2:自由分发副本,以便您可以帮助您的邻居。 自由3:可以自由地改进程序,并向公众发布您的改进(通常是修改版本),从而使整个社区受益。 好吧,我们都知道这一点(至少从那时起就一直关注此讨论的人)。 在我看来,开源一词澄清了我们。但是自由1已经确保了这一点。 在其他语言中(例如西班牙语或葡萄牙语),我们可以说自由是自由或自由。免费的另一种含义,就像免费啤酒一样,是免费的。因此,对于其他人来说,从来没有混淆(实际上,只有在阅读有关它的英文文章时)。 2号自由保证了我随意分发副本的权利。我了解,因为我不需要向所有人赠送给我的朋友或学生的每份副本,都要向所有者支付任何版权费。当然,我们会同意这一点。最终,这意味着我可以免费提供(免费)副本,也可以为副本付费(支持,媒体等)。 现在,如果可以免费(免费)赠送东西,那么它是免费的(免费)。无论某人或某企业想要出售,还是有免费途径(免费,免费)(网站,下载,朋友等)。 因此,以我的非英语观点,这里有3种不同的东西。无疑,最重要的是软件的自由(自由,自由,自由,自由,所以您可以拥有所有想要的东西)质量。另一个是开源的(因此您可以看到其中的代码)。最后一个是另一种伟大的品质,那就是存在免费的(免费的,免费的)软件。 免费(免费)并不意味着它是免费的(免费)。您可以有出售,付款和免费获得/发送商品的人。不过,这是一种品质。 我不明白的是,为什么经过这么多年,FSF的人们仍然会谨慎地说,还有免费的(免费的)软件。是的,免费,就像免费啤酒一样。如果是质量,为什么要隐藏它?只是为了防止混乱?好吧,让我告诉你这个消息:从一开始就已经引起了混乱。当我开始学习这个主题时,我还活着并且对此很感兴趣,而且我记得关于这个免费,免费或不受限制的讨论。 经过大量咨询,律师帮助写了第一个可以在法庭上使用的“许可证”,引入了“ copyleft”一词,并“清楚”地表明免费与价格无关。 当时,由于新颖性好,我同意强调自由的这半部分。但是现在我们结束了。现在不是时候告诉人们我们也有免费的吗? 三种品质胜于两种品质:livre / gratis / open。 那么,为什么不告诉人们免费软件可以只是免费的呢? 编辑: 更客观地说:1-免费(自由)软件一定是免费(免费)吗?2-是免费的(免费)软件,一定是免费的(自由)。 第一个是重要的问题,第二个是用来存放快速打字机的(我们都知道答案)。 讨论中提出了另一个问题:免费(免费)质量吗?(我认为在问题简介中这是理所当然的)

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.