2021年优秀的后端开发框架
其中一些应用尝试取得了一定的成功:Facebook、亚马逊和Mozilla公司现在都提供了某种形式的机器学习驱动的静态代码分析器。但是,正如了解机器学习基础的任何人都知道的那样,这些方法也存在一些固有的局限性。 机器学习静态分析器 在过去的几年里,人们看到市场上出现了大量的机器学习驱动的静态分析器。其中一些是由热心的业余爱好者开发的;另一些是由科技巨头开发的,Facebook、亚马逊和Mozilla现在都在提供这样的工具,而且在发布每一个版本时都承诺会彻底改变开发过程。 实际上,这些工具在搜索漏洞和错误时为开发人员节省了时间。以下了解一下市场上主流的一些机器学习静态分析器: 1.DeepCode DeepCode可能是Java、JavaScript和Python最著名的漏洞搜索程序。DeepCode还提供了一个机器学习模块,开发人员称其为“开发人员的语法”。 DeepCode的机器学习模块通过查看开发人员在处理大量项目时所做的大量更改来工作。通过学习,DeepCode可以为开发人员提供针对他们正在解决的问题的建议解决方案,并捕获以前出现的错误。 DeepCode仍然包含一些限制。该系统的开发者声称,自从2018年起将支持采用C ++语言,开发人员可以通过其插件使用C ++和DeepCode。 2.Infer Infer已经存在了将近十年,并于2013年被Facebook公司收购,作为基于机器学习原理的静态代码分析器的基础。由于多种原因,Infer作为静态分析器已变得非常流行:它支持多种语言,并且可以与AWS和Oculus结合使用。最重要的是,该项目的源代码于2015年开放,从而推动了项目的快速发展。
尽管它很受欢迎,即使是使用Infer的开发人员也承认,即使在Facebook项目中,它生成的警告中也只有80%是有用的。它将发现指针取消引用和内存泄漏错误,但是仍然存在Infer无法检测到的错误类别,包括类型转换异常和未验证的数据泄漏。 11.兼顾许多项目 IT从来没有足够的员工来处理每个人想要的一切,所以无论如何,通过启动大量项目并在其中来回调动员工,尽一切的努力来实现它是有意义的。 如果你希望所有的项目花费更长的时间,花费更多的成本,并且交付低于标准的结果的话。 如果你想让IT建立一个良好的声誉,请建立这样的规则:每个启动的项目都能够配备充足的人员,而“配备充足的人员”则意味着项目永远不需要等待团队成员来处理它。 做到这一点,每个项目都将在你把所有项目都耍得团团转之前被完成。 12.消灭“影子IT” 毫无疑问,当业务部门推出自己的IT时,就可能会发生糟糕的事情。这似乎是一个令人信服的论点,但它只讲述了故事的三分之一。第二个三分之一是:业务部门之所以从事DIY工作,是因为IT没有足够的人员来解决(通常)影子IT所承担的小业务问题。这使得IT处于尴尬的境地,迫使业务部门需要在Excel中做所有事情,即使有更好的替代方案。 这是第二个三分之一。第三个?祝你好运,把影子IT消除掉。你甚至很难发现基于云的应用程序的业务使用。而如果IT成功的淘汰了影子IT呢?这只是把IT变成了Dilbert的Mordac,“IT领域所有高效解决方案的保护者。” 13.不管有什么要求,只是说“不”或者“是” 确保IT失败的最后也是最好的方法是无论请求如何都要说“不”或者“是”。说不,你就破坏了你们的关系。说是,你就做出了你不能遵守的承诺,因为你和其他人已经把你所有的时间都考虑进去了。 如果你想成功,正确的答案是,“我们可以做到。而这些是需要的条件。” 请求管理有一条不可侵犯的规则,无论请求是项目范围变更、软件增强,还是向没有预定接收笔记本电脑的人提供笔记本电脑:没有什么是免费的。
不要说不。也不要只是说是。解释你需要做些什么才能满足要求。而接下来的就将是一场对话而不是一场争论了。 (编辑:鞍山站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |