软件工程

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

2
嵌入式Linux与Windows Embedded Standard 7 [关闭]
关闭。这个问题是题外话。它当前不接受答案。 想改善这个问题吗? 更新问题,使它成为软件工程堆栈交换的主题。 3年前关闭。 确定寻找一些真正的主观答案。我的公司传统上是Linux商店,我们生产和销售用于视频安全的专用盒。我们最近决定建造一个Embedded Windows Standard 7盒子,因为它缩短了我们的开发速度并缩短了上市时间,并且因为所有可用的工具都可用于Windows。 我正在寻找一些可靠的答案,因为它与WES7与Linux的安全性有关吗?WES7的稳定性如何,容易遭受黑客攻击,病毒攻击等。从市场角度来看,相比Linux使用WES7的好处是什么?有吗 台式机Windows 7和嵌入式Windows Standard 7的安全性之间有哪些比较? 任何答复将不胜感激。谢谢


1
当您被迫在糟糕的编码(设计)标准下进行编码时该怎么办
这与典型的命名约定,在何处放置注释,是否应该使用区域等无关,这与编码标准有关,该标准讨论了程序员应如何设计其应用程序的细节。 像这样的东西:(在.NET应用程序上,而不是确切的用词) 尽可能少上课 课堂应尽其所能做到 修改比扩展好 每个类别一个DLL(一个用于电子邮件功能的库,一个用于文件相关功能的库) 每个人都有过糟糕的代码和可能糟糕的设计经验,但是如果您被安排在一个团队中,而他们的设计标准却感觉不对,那该怎么办?当我被要求以这种方式编码时,我不确定自己快要死了时,我不确定如何做出专业回应。

10
您如何“出售”支持作为职业选择[关闭]
关闭。这个问题是题外话。它当前不接受答案。 想改善这个问题吗? 更新问题,使它成为软件工程堆栈交换的主题。 4年前关闭。 我们发现雇用开发人员从事各种项目相对容易。 当项目完成但仍然需要支持时,就会出现问题。 我们真的在争取人们加入支持团队。它被视为死胡同,事业受限,无聊,二流等等。 目前,我们通过让项目团队将其一些团队分配给支持团队来解决这一问题。任务的一部分是对项目进行“转储”,以便支持团队理解该项目。只要分配仅在固定期间内,此方法就起作用。 试图雇用人们全职工作是一个问题。应用很少,并且口径不是特别高。 (尽管财务现实是,支持对于一家公司来说可能是非常有利可图的,一旦获得声誉,即使您没有参与最初的开发,也会被其他公司聘请他们提供支持。)
9 interview 


2
建立平台不可知论的开发团队霸权
我在一家公司工作,该公司的开发团队拥有许多不同的技能。 我们执行以下所有操作(通常面向网络): .NET(MVC,Umbraco,ASP.NET,Surface) Java(Spring,Hibernate,Android) PHP(Zend,代码点火器) 动作3 空气 目标C HTML / Javascript(显然) 我们正在尝试简化我们的开发流程。 当前,我们有一个TeamCity服务器,该服务器使用msbuild / msdeploy / nant构建和部署.NET项目。 我想要的是像maven这样的东西,它将为我们提供标准的项目模板结构,该结构适用于大多数项目,以允许来自不同团队的人员轻松地在项目之间移动。 当前,这在一个平台上有效,因为我们倾向于以该平台的标准方式来做事情(只要涉及到某些人),但是我想使用maven之类的东西来标准化项目的布局和构建方式。 有人尝试过类似的东西吗?经验?图书?
9 team 


3
IT顾问何时应使用全盘加密?
在什么情况下,IT顾问应加密其硬盘驱动器以保护其客户的代码/数据? 我在想,如果它不会给您的工作量增加太多,那么您最好使用带有“弱”密码的全盘加密,以至少防止有人在笔记本电脑被盗的情况下访问您的电子邮件文件和其他文档,即使他们被盗也是如此。将无法访问任何数据库文件或其他非常敏感的数据。
9 security 

6
您将如何突出显示代码?[关闭]
已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引用的形式回答。 6年前关闭。 虽然基本方案是黑白相间,黑白相间,但大多数程序员发现更多不同的语法突出显示很有用。 您从常规设置中发现什么优势?(例如“深色背景允许...”) 您发现哪些具体调整最有帮助?(例如,“ 稍微偏白的作品可以...”,或“突出显示引号和转义符,例如\ n,则以不同的方式显示...”) 请每人一个答案;如果需要,列出多个点作为您的一项响应的一部分。

4
连续构建服务器(cc.net,hudson,bamboo等)的远程构建经验?
当前,我们在构建过程中使用一次cc.net服务器,该服务器同时构建.net(使用msbuild和nant)和java(使用maven和ant)。 CC.net监视源代码控制,并触发在单独服务器上运行的远程版本。CC.net然后整理结果。 当我们运行远程版本时,通常: 使用模拟数据运行nunit或junit或类似数据 (可选)运行数据库脚本来创建新的数据库实例或从已知位置还原数据库。 运行硒或类似的东西来测试UI 运行emma或ncover进行代码覆盖 为各种部署环境(测试,验收,生产)构建系统 我们可能一次运行多个构建,一些.net和一些Java(来自不同的项目团队)。 设置新项目时,要使远程版本正常工作是很耗时的,并且我们认为必须有比cc.net更适合远程版本的内容。 有没有人对持续集成系统的远程构建有任何经验? 我真的不想要CI服务器的功能列表,如果您了解如何在多语言,多服务器环境中使用它们,我将不胜感激。

9
程序员必须了解什么业务/管理?[关闭]
已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引用的形式回答。 6年前关闭。 正如我在其他帖子中所暗示的那样,我对工作人员仍然相当陌生。在团队会议期间,我倾向于跟上技术讨论的步伐,但是当我的项目经理开始谈论我们如何赢得新合同,或者我们正在参与新的投标书时,或者……业务而不是技术,真的……我很快就会迷路。 所有开发人员需要了解的有关项目管理/业务运作的最低限度是什么?

2
mod_security是件好事吗?
最近,我经常收到来自mod_security的错误错误消息。它的过滤器集涵盖了过时的PHP漏洞利用,而且我不得不重写我的东西,因为Wordpress&Co几年前就有错误。 这在别人身上发生过吗? Apache mod_security在到达应用程序之前阻止可能危险的HTTP请求(特别是PHP)。它使用各种过滤器集,大部分基于正则表达式。 因此,我有一个不错的共享托管服务提供商,从技术上讲是易用的东西。但这困扰了我: 就在上周,我不得不&src=在我的一个应用程序中更改参数名称,因为mod_security阻止了与此相关的任何请求。我没有查看其详细信息,但是此过滤规则阻止了我不使用并且可能从未听说过的另一个应用程序的可利用性。仍然我不得不重写我的代码(经常使用重命名参数来欺骗mod_security),这与它无关或与此无关! 今天,一个愚蠢的正则表达式阻止了表单提交,因为我想提交php示例代码。给出了,这是mod_security可以防止的简单内容。但是我不相信mod_security可以检测到严重混淆的代码,并且只会出现明显的(在这种情况下完全是微不足道的)PHP代码片段。 基本上,我会受到mod_security的惩罚,因为其他人发布了易于出错的应用程序。(并不是说我的应用程序是超级安全的-我非常在意安全性,但是不要夸张地说。) 我已经要求提供商禁用它,这对IMO和我的应用程序都太微不足道了。 你怎么看?在WP托管之外,mod_security是否有意义?还是真的只是一堆长期存在的安全漏洞的黑名单?它的哪些规则实际上有帮助?是否有等效的应用程序级别?
9 php 

4
为什么这么多的程序员绝对讨厌对象普遍性层?
流行是一种简单的技术,可基于二进制序列化和预写日志记录为内存中的对象模型提供ACID属性。它是这样的: 从快照开始。序列化对象模型并将其写入文件。 创建日记文件。对于对对象模型的每次调用,请序列化该调用及其参数。 当日志太大时,您将要关闭,或者它很方便,请执行检查点:编写新快照并截断日志。 要回滚或从崩溃或停电中恢复,请加载上一个快照并重新执行日志中记录的所有调用。 进行此工作所需的预防措施为: 不要让易变的对象引用转义或进入流行层。您需要某种代理或OID方案,就像在进行RPC一样。(这是一个常见的新手错误,被昵称为“ 洗礼问题 ”。) 调用可到达的所有逻辑都必须是完全确定性的,并且不得执行对业务逻辑有意义的I / O或OS调用。写入诊断日志可能没问题,但是获取系统时间或启动异步委托通常不行。这样一来,即使在不同的计算机上或在不同的时间还原日志,日志也可以相同地重放。(大多数流行代码提供备用时间调用以获取事务时间戳记。) 作者并发在日记解释中引入了歧义,因此被禁止。 是因为... 人们试图在一个不太适合*的项目中使用它之后,对他们产生了不良品味? 克劳斯·威斯特费尔德(Klaus Wuestefeld)的强烈倡导 使人们无法接受? 喜欢命令式编程模型的人不喜欢将I / O与计算分离,而宁愿将计算与I / O和线程调用交错? 流行层在概念上是如此简单,并且与它们所居住的框架的特性紧密相关,以至于它们通常是针对项目定制的,这使它们过于陌生/不合标准/充满风险? 保持直截了当是很困难的,您必须注意不要这样做? 新手的脑袋似乎在遇到与他们在学校学会编写的不是两层数据库驱动的应用程序相同的东西时爆炸吗?;) *在RAM中整个数据集拟合,你不需要作家的并发,并且你不需要做即席查询,报表,或导出到数据仓库。通过对SQLite的歉意,普遍性是对保存文件的一种改进,而不是Oracle的替代。

6
快速排序,不要打扰?
尤其是在编写“标准”(非HPC)应用程序时,您会考虑选择哪种排序算法,还是仅仅考虑使用快速排序(大多数库都将其称为排序)?在特定情况下,在某种程度上可能是有利可图的,但另一方面,适当的优化需要一些时间来分析问题并制定基准。

2
面试中寻找哪些顶级公司?[关闭]
已关闭。这个问题需要更加集中。它当前不接受答案。 想改善这个问题吗?更新问题,使其仅通过编辑此帖子来关注一个问题。 4年前关闭。 基本上,我在寻找什么让您无所适从,而您退出了其余过程? 消除回合是判断一个人的公平方法吗?任何人都可以度过一段糟糕的时光:-( 您应该编码最好的还是正确的算法?通常,我通常先编写一个可行的解决方案,然后再对其进行处理,直到达到我认为对我来说看起来很漂亮的水平。这是错误的做法吗? 最近,我进行了一次电话采访,要求我在20分钟内编写一次遍历Level Level遍历的变体。我可以在20分钟内获得算法和有效代码,但无法正确处理异常处理和编码约定,此后我没有收到他们的回音:-(面试中的所有其他问题都很好,这是唯一的事情是“达不到标准”。 不用说我喜欢这家公司,并且会再次申请,但想下次再做一次:-) 请分享您的经验和宝贵建议。

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.