软件工程

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

3
在新的CSS功能中添加前缀的原因是什么?
浏览器是否有理由为CSS新功能添加前缀,而不是让网站站长使用非前缀版本? 例如,背景渐变的示例代码如下: #arbitrary-stops { /* fallback DIY*/ /* Safari 4-5, Chrome 1-9 */ background: -webkit-gradient(linear, left top, right top, from(#2F2727), color-stop(0.05, #1a82f7), color-stop(0.5, #2F2727), color-stop(0.95, #1a82f7), to(#2F2727)); /* Safari 5.1+, Chrome 10+ */ background: -webkit-linear-gradient(left, #2F2727, #1a82f7 5%, #2F2727, #1a82f7 95%, #2F2727); /* Firefox 3.6+ */ background: -moz-linear-gradient(left, #2F2727, #1a82f7 …


8
我对C ++的技术评估有什么期望?[关闭]
按照目前的情况,这个问题并不适合我们的问答形式。我们希望答案得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意调查或扩展讨论。如果您认为此问题可以解决并且可以重新提出,请访问帮助中心以获取指导。 6年前关闭。 我被要求去进行技术测试/评估,以作为初级开发人员的工作,主要使用C ++。这是我的第一次测试/评估,时间长达2小时。 我的C ++有点生锈,因为我最近一直在用PHP进行项目。 这是一家英国公司,但是我猜对候选人的技术测试到处都差不多。 在这些测试之一中,我应该期待什么?

3
C#中的私有静态方法会伤害任何东西吗?
我为某个验证创建了私有验证方法,该验证方法在我的课程中多次发生(出于各种原因,我无法存储经过验证的数据)。现在,ReSharper建议将该功能设为静态。由于静态方法的已知问题,我有点不愿意这样做。这将是一个私有的静态方法。我的问题是,私有静态方法是否会引起类似公共静态方法的耦合和测试问题?这是不好的做法吗?我猜不会,但是我不确定这里是否有陷阱。

3
聪明的PHP应用程序组织结构?
有成百上千的文件系统结构可用于众多可用的开源项目中。诸如模块,语言文件,域,第三方库,迁移,国际化,备份以及到系统其他部分的系统链接之类的东西已经产生了许多组织项目文件系统的方法。 作为一个PHP开发人员,我想知道项目之间是否开始出现任何类型的标准化。使用PSR-0,我们终于有了命名和加载文件的标准-但据我所知,关于组成系统的其余组件或如何以理智的方式处理它们,这毫无意义。 我们所处理的不只是MVC,还有很多大型项目可以正确地处理所有这些事情?

6
学习C的实用方法?[关闭]
按照目前的情况,这个问题并不适合我们的问答形式。我们希望答案得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意调查或扩展讨论。如果您认为此问题可以解决并且可以重新提出,请访问帮助中心以获取指导。 7年前关闭。 我想学习C语言,通常当我想学习一种新语言时,我会想到一个简单/可以达到的项目目标,该目标具有一定的实际用途(使用api,自动执行任务等)。 我很难为C设计一个,主要是因为我阅读的所有内容都表明,C目前主要用于嵌入式系统和更复杂的软件项目(如操作系统)。 这是否表明我不需要学习它,或者我只需要在学习策略上更加困惑? 指实用学习资源?(教程/如何产生具有某些目的/益处的最终结果)
10 learning  c 

9
是否有人用Visual-C ++做“真实的” TDD,如果可以,他们是如何做到的?[关闭]
已关闭。这个问题需要更加集中。它当前不接受答案。 想改善这个问题吗?更新问题,使其仅通过编辑此帖子来关注一个问题。 4年前关闭。 测试驱动开发意味着在代码之前和一定周期之后编写测试: 写测试 检查测试(运行) 编写生产代码 检查测试(运行) 清理生产代码 检查测试(运行) 就我而言,这只有在您的开发解决方案允许您非常快速地在生产代码和测试代码之间切换以及对特定生产代码部分执行测试的情况下才有可能。 现在,尽管存在许多C ++单元测试框架(我正在使用Bost.Test atm。)看来,实际上并没有任何像样的(对于本机C ++而言)Visual Studio(插件)解决方案能够使TDD周期可承受,与使用的框架无关。 “可以承受”表示只需单击一下即可对某个cpp文件运行测试,而无需手动设置单独的测试项目等。“可以承受”还表示一个简单的测试开始(链接!)并且运行非常快。 那么,有哪些工具(插件)和技术可以使使用Visual Studio进行本机C ++开发的TDD周期成为可能? 注意:我可以使用免费或“商业”工具。 请:没有框架建议。(除非框架具有专用的Visual Studio插件,并且您要推荐该插件。) 编辑说明:到目前为止的答案提供了有关如何将单元测试框架集成到Visual Studio中的链接。这些资源或多或少描述了如何获取UT框架进行编译以及如何运行您的第一个测试。这不是这个问题的意思。我认为要真正有效地工作,将单元测试放在手动维护(!)中,将vcproj与您的生产类分开会增加太多开销,以致TDD“不可能”。据我所知,您没有为Java或C#事物添加额外的“项目”以启用单元测试和TDD,这是有充分的理由的。这应该 只要有正确的工具,C ++就可以实现,但似乎(这个问题是关于)TDD / C ++ / VS的工具很少。 到处搜寻,我发现一个工具VisualAssert似乎朝着正确的方向发展。但是,afaiks,它似乎并未得到广泛使用(与CppUnit,Boost.Test等相比)。 编辑:我想在此问题的上下文中添加评论。我认为它很好地概括了问题的一部分:(Billy ONeal的评论) Visual Studio不使用用户可以合理编辑的“构建脚本”。一个项目产生一个二进制文件。而且,Java具有Java从不构建完整二进制文件的特性-您构建的二进制文件只是类文件的ZIP。因此,可以分别手动编译然后JAR一起编译(使用例如7z)。C ++和C#都实际上链接了它们的二进制文件,因此,一般来讲,您不能编写这样的脚本。最接近的是分别编译所有内容,然后进行两个链接(一个用于生产,一个用于测试)。
10 ide  tdd  plugins  visual-c++ 

9
对我而言,在开源项目中开始使用版本控制的最佳方法是什么?
有人建议,由于项目的规模和缺乏技能,我将其开源,因此我签出了Google Code,开始制作一个项目,现在问我是否要让该项目具有Git,Mercurial或Subversion?代码托管。 我什至不知道什么是代码托管,而搜索只是让所有这些问题之间的争论让我更加困惑,而且由于Google Code询问我想要哪种类型的许可证,这种情况甚至变得更糟。 我想我不太了解开放源代码的真正含义,有人能大致解释一下这是什么吗?非常感激。 编辑在这三个版本的代码托管上,已经收到了很多不错的答复,但是我认为我无法传达一个真正的问题:基本上我不知道这个开源的东西是如何工作的,为什么还要在这样的地方托管代码? ?这是否意味着我必须从当前托管中删除该站点,或者这是一种完全不同的托管类型?当我使网站开源时会发生什么,我拥有什么权利,我放弃了什么权利。它是如何工作的,人们只是来免费向我扔代码吗?也许这些是愚蠢的问题,如果是这样的话,那么我想我需要愚蠢的答案,除了共享代码的概念外,我真的不知道什么是开源。

2
发布开源PHP应用程序的最佳实践
我是一名以PHP为生的开发人员,但之前从未从事过任何开源项目或为任何开源项目做出过贡献。 我正在开发自己使用的CMS。我有一个可以正常工作的原型,我认为一旦准备就绪(可能需要几个月的时间),PHP社区可能会对这感兴趣。 我是一个相当有信心的开发人员,但是在某些领域我缺乏知识,尤其是在涉及开源问题时: 公开项目和/或找到其他可能对协作感兴趣的最佳方法是什么 我的CMS由CakePHP提供支持,并且基本上位于其之上。我在GitHub上创建了CakePHP项目:我以前使用过版本控制系统(SVN),但对于GIT来说还很陌生,因此请确保我以“最佳方式”进行操作 如何找到许可问题?哪个开源许可证最适合我的应用?另外,我的项目是从许多其他开源项目中借用的,例如,我有一些代码段(我对此进行了重大修改),但是其中有版权/许可声明-我不知道我在履行方面的义务保留这些 这些只是我所遇到问题的几个例子,但我觉得那里必须有一些对我有用的资源。哪里是最好的入门场所,哪些是覆盖这些问题的最佳社区/站点?我环顾四周,但想不出太多...


11
无限位图
关闭。这个问题是题外话。它当前不接受答案。 想改善这个问题吗? 更新问题,以使它成为软件工程堆栈交换的主题。 4年前关闭。 我想在运行时构建位图。位图应在所有方面都可扩展,像素访问应安静高效。 一些插图http://img546.imageshack.us/img546/4995/maptm.jpg 在图片所示命令之间以及之后,Map.setPixel()和Map.getPixel()应当设置/返回保存在位图中的数据。 我不希望实现只是一个概念,即如何以setPixel()/ getPixel尽可能快的方式分配内存。
10 concepts  memory 

1
Google AJAX Search API发生了什么
我想查询主要的Google搜索,但是包括stackoveflow在内的所有引用都指向Google AJAX Search API。 奇怪的是,它似乎已经不存在了,甚至没有说明它已贬值的注释? 旧链接指向主要的Google代码网站。如果我在该站点上查看API列表,则替换为该API的是Web Search API(已弃用),该Web链接返回同一页面,但不链接到同一页面,但不是Google AJAX Search API。 进一步的Google搜索也无济于事,许多博客文章指向的Google网站(http://code.google.com/apis/ajaxsearch/)上没有内容,并重定向到同一位置? 为了证明它确实存在,我在返回机器的途中找到了它,但是最后一个快照没有显示任何特殊的异常消息。
10 api  google 


7
原型和生产级解决方案之间有什么区别?
这个问题纯粹是为了学习和加强我的技术理解。我知道没有完美的解决方案,这个问题可能永远也不会结束,但是我认为对于每个架构师来说,了解演示和实际项目之间的区别非常重要。 过去,我在.Net中创建了许多演示解决方案。我现在已被分配给架构师并实现生产级别的Web解决方案,所以我想问-在一个很高的水平上,将演示转换为生产级别的解决方案需要什么。据我了解,这将需要(除了在功能上实现客户的要求以外): 每种方法进行单元测试 确保实现约100%的代码覆盖率 记录所有异常和可能的切入点-AOP可能记录 使用接口设计模式,进行依赖项注入,可能使用诸如spring.net之类的框架 使用性能计数器和分析器进行检测 应用适当的安全性-即Windows身份验证(如果这是客户端所要求的)。 每种方法的交易管理 在新部署解决方案之前备份Web应用程序文件 还有什么? 我的问题与技术方面而不是功能/文档更多相关,因为否则我们将走另一条路:-) 谢谢。

5
如果TDD与设计有关,为什么需要它?[关闭]
已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引用的形式回答。 4年前关闭。 TDD专家越来越多地告诉我们TDD与测试无关,而与设计有关。因此,我知道有些开发人员在没有TDD的情况下创建了非常出色的设计。他们应该练习TDD吗?
10 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.