这些东西是必不可少的,并使开发和重构更容易。 我还不知道这里是否有其它选项,XDebug拥有您需要的一切。 你有几分钟吗?...这里的重点是集成。 有几个与GitHub集成的工具,你应该开始使用它们。 这些工具可以生成指标,运行测试,在持续集成过程中为您运行作业,并在您的工作流程中执行各种操作。...你应该开始测试 这是我每天都在对自己说的口头禅。跟很多人一样,我并不像TDD(测试驱动开发)建议的那样测试我的代码。我现在正在进行测试,并且在过去的半年中一直这样做,而且前方还有很长的路要走。...只需点击几下,您就可以将您的GitHub项目与Travis CI集成在一起,并且每次推送到您的存储库都将运行您使用PHPUnit和Behat创建的测试,告诉您实现的最后一个功能是否已准备好,是否合并。...他们非常小,只提供基础元素(例如路由中间件),易于定制,并且更容易使他们跟随您的项目结构自主变化。 我选择的微框架是Slimframework,我认为你应该阅读它。
[ "-Xmx3550m","-Xms3550m","-Xmn2g","-Xss256k"] 使用hsqldb只是用于方便测试,记得抹掉,环境采用jdk8(因为最近在整react-native不想切环境...考虑到使用spring-boot,我觉得Mybatis的设计逻辑并不契合,相对来说,JPA更加方便,所以选用JPA做DAO层的工作,当然了,如果你厌倦了hibernate式的各种表连接的不痛快,集成Mybatis...Specification做通用封装,没有使用泛型来更加通用,我觉得这样已经差不多了吧,要求不要太高,看字面意思应该能懂是在做什么,不多说,还是那句话--不懂的自己谷歌。...---- 最难的权限部分 对于权限的详细说明会在下面的文章里介绍,这里只取一般而言需要注册登录模块的同学,集成这一部分是因为这是90%的项目都会使用的方式,故为之。...spring自己的那套不一定适于用一般项目,因为一般项目的User表一般会和业务关系比较紧密,设计初衷一定优先考虑自己的业务而不是框架,HttpSecurity做权限配置,看字面意思应该就懂了,其他一般配置参考这篇文章
研究表明,使用代码审查列表的审阅者的表现要优于不使用的审阅者。所以不管你是新手开发者还是经验丰富的开发者,开始考虑使用代码审查列表吧。...代码作者应该关注的列表 作为代码的作者,你应该保证: 代码编译成功并且通过静态检查(没有警告) 代码通过所有的测试(单元测试、集成测试和系统测试) 你已经仔细检查了拼写错误,并做了处理(注释、todo等...这种解决方法是最简单的吗? 这个更改有引入一些不需要的编译时或运行时的依赖吗? 是否使用了不应该使用的框架、API、库、服务? 是否存在可以提升解决方法的未使用的框架、API、库、服务?...提出的解决方案是否具备可访问性? API/UI是否直观易用? 测试与可测试性 代码是否达到可测试标准? 是否有足够的自动化测试(单元测试/集成测试/系统测试)? 现有测试是否合理覆盖代码变更?...首先,我建议使用现成的编码样式来支持Google提供的多种语言。设定基本规则很重要,但要确保一劳永逸。不要持续争论。
大家好,又见面了,我是你们的朋友全栈君 HSQLDB是一个使用Java语言编写的关系型数据库,有一个JDBC driver,支持 ANSI-92 SQL的一个子集。...Java编程的话,不凡考虑一下使用它,相对其他数据库来说,其体积小,才563kb。...请到以下地址下载hsql: http://prdownloads.sourceforge.net/hsqldb/ 二、使用hsql数据库: 1、hsql数据库引擎有几种服务器模式:常用的Server...对于那些不想额外在数据库引擎花费金钱的话,可以使用这种方法。但是不推荐使用该方法。...记得Hibernate里SessionFactory可以使用openSession(Connecttion c)来获得一个Session对象的,因此,在测试或者实际应用的话都可以这样使用。
4、再次运行你的数据库连接程序,程序运行正常,还是可以连接上去,并可以完全正常进行你的数据操作。...,build出现错误我是不能接受的,不知道你是否接受?...ShutdownTask.java 打包 jar cvf ShutdownTask.jar *.* 把 ShutdownTask.jar 直接放到项目的lib目录下,下面的示例 classpath 我直接引入到...hsqldb.classpath中,可以根据需要放到项目的不同地方再进行调整引入使用等等。。。...最后,如何使用它呢? 在其它项目中只要相应地 import 这个 build.xml 这个文件即可达到重用,如:新项目与这个项目并行,即 <?
这种新的微服务是否可以单独进行测试(使用单元测试或模拟依赖关系),还可以在更加实际的“集成”或“分段”环境中进行测试,在这种环境中,它将与生产中涉及的相同类型的服务相连接。...测试是否包含性能验证和失败模式?所有的测试都会自动完成吗?还是人类必须参与运行并检查测试结果?以一种简单,快速和自动化的方式进行微服务测试将鼓励开发人员维护并防止“ 破窗 ”问题。...构建微服务没有多大意义,除非系统的其他组件使用它,因此理解它们如何使用微服务是至关重要的。 这些其他组件将同步或异步地与新的微服务交互吗?是否应该鼓励他们将响应缓存一段时间?什么是重试和幂等性?...新微服务的正常运行时间SLA是否与系统中其他组件的正常运行时间SLA相匹配? 对于新微服务将提供的响应延迟,应该有明确的预期,使用微服务的组件应该知道这些预期。...当然,不要忽略它们,或者更糟糕的是,集成一个新的监控工具,而您的操作团队甚至还没有使用这个工具。
你用过媒体查询,或针对移动端的布局/CSS 吗? 你熟悉 SVG 样式的书写吗? 如何优化网页的打印样式? 在书写高效 CSS 时会有哪些问题需要考虑? 使用 CSS 预处理器的优缺点有哪些?...如何有效使用此系统? 你在开发或生产环境中使用过哪些 CSS 框架?你觉得应该如何改善他们? 请问你有尝试过 CSS Flexbox 或者 Grid 标准规格吗?...要做哪些改动使它变成 IIFE? 描述以下变量的区别:null,undefined 或 undeclared? 该如何检测它们? 什么是闭包 (closure),如何使用它,为什么要使用它?...为何你会使用 load 之类的事件 (event)?此事件有缺点吗?你是否知道其他替代品,以及为何使用它们?...测试相关问题: 对代码进行测试的有什么优缺点? 你会用什么工具测试你的代码功能? 单元测试与功能/集成测试的区别是什么? 代码风格 linting 工具的作用是什么?
* 如果页面使用 'application/xhtml+xml' 会有什么问题吗? * 如果网页内容需要支持多语言,你会怎么做? * 在设计和开发多语言网站时,有哪些问题你必须要考虑?...如何有效使用此系统? * 你在开发或生产环境中使用过哪些 CSS 框架?你觉得应该如何改善他们? * 请问你有尝试过 CSS Flexbox 或者 Grid 标准规格吗?...* 为何你会使用 `load` 之类的事件 (event)?此事件有缺点吗?你是否知道其他替代品,以及为何使用它们?...* 解释 `function foo() {}` 与 `var foo = function() {}` 用法的区别 #### 测试相关问题: * 对代码进行测试的有什么优缺点?...* 你会用什么工具测试你的代码功能? * 单元测试与功能/集成测试的区别是什么? * 代码风格 linting 工具的作用是什么?
因此,与其在应用程序节点中使用内存队列,还可以使用消息队列,这可能没有任何优势。 消息队列使我们能够进行异步处理——这是一个有用的特性。当用户在等待的时候,你不想做一些繁重的事情。...我经常使用这种方法,包括在一些大型在线系统中,它也很好用。 您还可以持续地扩展应用程序节点,只要它们在内存中没有持久的状态。无论您是否使用消息队列(临时内存处理队列都不是持久的)。...为什么我应该提供替代频繁使用的消息队列?因为如果出于不适当的原因选择它,消息队列就会成为一个负担。他们不像他们那样容易使用。首先,它有一个学习曲线。一般来说,集成的组件越多,就越容易出现问题。...当他们做的时候,我在项目中使用它们——例如,我们不想失去信息,但我们想要快速地做。我还看到它在一些不太常见的场景中使用,比如只使用一个应用程序节点,而不考虑交付哪个节点。...如果您不确定是否没有其他更容易管理和维护的方法,请确保使用消息队列,最好不要使用。不要仅仅因为它有用就使用它——如果你真的想使用它。因为这是可能的,就像这个项目一样,消息队列不是真正必要的。
我曾经在 单元测试指南 一文中写到过单元测试的必要性和 Java 单元测试相关的工具及方法。...在 SpringBoot2.x 集成和写单元测试更加容易了。...DAO 层的单元测试 新建数据库脚本 DAO 层的测试我这里采用的是 HSQLDB 的内存数据库,最好准备一些初始化的数据表结构和脚本,当然也可用直接通过官方示例的 JPA特性和 API 代码来初始化数据...Spring Boot 中原生集成了 Mockito,可以非常方便我们对 Java 代码做单元测试。...这样就完成了 Service 层的单元测试,也是我们业务开发中需要重点关注和测试业务逻辑的一层。 Controller 层的单元测试 Controller 层测试的重点是测试接口是否能正常工作。
记住使用SEED能够复制这些X分裂 其他需要考虑的事情是KFold和KFold分层。对于时间敏感的数据,确保你在测试时总是有过去预测未来的规则。 4.你能解释一些用于交叉验证的技术吗?...此外,我现在主要使用Python。 但是,如果你真的有兴趣获得最高的收益,你也可以考虑使用亚马逊的AWS,因为如果你使用它很多,成本可能会很高。 9.你是否使用像GPU这样的高性能机器。...考虑在数据的较小部分集成(如结合)模型的训练。 15.涉及机器学习的项目的SDLC(软件开发生命周期)是什么? 在一个工业项目上展开并采取步骤,以便我们能够了解如何使用它们。...考虑时间/成本效率以及性能 导出模型参数/管道设置 将这些应用到联机环境中。暴露一些客户,但不是所有。保持测试组和对照组 评估算法的运行情况以及随着时间的推移进行调整。...如果你真的想要一个界限来决定你是否应该采取行动 - 你可以根据主要几率进行设置。 我可能不是最好的回答这个问题的人。我个人从来没有发现它(显著)有助于改变目标变量的分布或目标变量中的几率的感知。
让我们来使用一个数据库。在这篇文章中,我们将使用PostgreSQL,您也可以使用任何提供JDBC驱动程序的数据库。举个例子,我们的测试将使用HSQL。...异步协调困境 一旦你有了一套异步方法,你通常要编排它们: 依次进行,一旦另一个活动完成,就调用它。 同时进行,同时调用几个活动,并在所有/其中一项完成时收到通知。...我们不一定要在我们的单元测试中使用PostgreSQL。让我们使用内存数据库HSQL。...现在,你应该可以用以下方式运行测试:mvn clean test。 展示时间 这次我们要使用PostgreSQL实例。我将使用Docker,但您可以使用您最喜欢的方法。...因为我们使用Future,使异步JDBC很简单。 你可能会对异步开发模型感到惊讶,但一旦开始使用它,就很难再回头了。异步和事件驱动的体系结构代表我们周围的世界如何工作。拥抱它们将给你强大的力量。
现在可以看到这些粗糙的细节已经随着时间被逐渐打磨掉掉,不再像以前那么尖锐了,所以我们应该适当的减少一些框架的使用。在其他方面,我们只需要考虑针对特定任务时所使用框架的成本。...它的设计是否良好?也许不是。它是健壮的吗?这仅仅是为了我们当前的需要。它的意义不在于它是或者是什么,而更多需要思考的是我为什么要使用其他的框架。 如果我不想编写自己的HTTP请求引擎,也会有很多选择。...如果我花了一个小时(这是我们花在代码和测试上的时间)来实现这个功能以满足我所有的需求,那么与集成一个库来来实现同样的功能相比,会节省很多时间吗?对此我们每个人都会有不同的答案。...当我们必须使用或不应该使用框架时 我强烈主张要了解编写某个工具的目的。如果我们的目标是一种暂时的、需要快速拼凑的东西,那么可能并不需要将其工程化。...我们应该在哪里画一条线?框架的作用与你正在使用建筑材料和建筑风格的作用是一样的。它是否适合环境,以后可以在需要时替换材料吗?虽然怎样做出决定是你自己的事情,但是我希望这些信息和例子能够帮到你。
一部分贡献者认为,集成 Corepack 的终极目标应该是使 Node.js 和 npm 的发布过程解耦。 Corepack 能让开发者无需手动安装,就能使用 Yarn、npm 和 pnpm。...我希望,如果默认启用 corepack,那么对 npm 的支持应该通过额外的标志或命令进行,供开发者选择是否接受。...TSC 成员们提出的另一个考虑是 Corepack 是否被广泛使用以支撑 Node 生态系统 - 开发者们甚至知道它是什么吗?...Borins 评论道:“我百分之百支持我们所能做的一切,以使开发者使用更加方便,减少首次使用的成本,改善使用体验,实现公平竞争。我并不支持强行让不想使用 Corepack 的团队采用它。”...如果 Corepack 的使用证明如一些人怀疑的那样少,委员会是否有胆量默认启用它,并反对团队的意愿解绑 npm?这似乎不太可能,但仍是讨论的话题。
框架支持模块化吗? 开始使用这个框架有多容易?它是否支持JS导入? 框架的测试和调试方面有多好? 我的队友和我能够轻松地学习这个工具吗? 框架在性能方面是如何脱颖而出的?...然而,当涉及到静态类型检查时,在Vue中使用Typescript就不是那么简单了。有一些课程是关于如何将Typescript和Vue一起使用的,但是在复杂的项目中是否值得考虑仍然不清楚。...幸运的是,您可以将flow与Vue集成并启用静态类型检查。 React和Vue的模块化 框架支持模块化吗? 根据模块化原则,您的应用程序必须划分为独立的模块,每个模块代表单一的目的或功能。...如果您需要一个小于Vue的库,那么您应该选择Preact。 React vs Vue -在哪里使用什么? 这些框架的顶级实用程序是什么?什么时候使用它们是正确的选择?...有什么特殊的原因吗? 如果我有足够的时间去学习的话,我仍然更喜欢使用合情合理的语言和合情合理的框架。
我不是对一堆具体的示例进行编码,而是按照排序的定义进行编码,测试将在随机列表上运行我的代码并检查属性是否成立。概念上的统一进一步深化,这也推动了更好的组织。...这会告诉你界面是否太过笨拙。 它会让你养成一种习惯,就是在你实际没有使用单元测试的情况下,也要考虑你的代码如何被验证。 等等,这些不就是和极繁的 TDD 一样的好处吗?...“它检查你是否有笨拙的界面”听起来非常像“倾听你的测试”。嗯,是的。你应该倾听你的测试!TDD 经常使你的设计变得更加完美! 我的观点是,它也可能使你的设计变得更糟。...测试驱动开发在 1999 年左右是最前沿的。它是现代开发的基础。我无法想象不使用它。听到公司不使用它,就像听到公司说“你听说过这个叫 Linux 的新东西吗?”卧槽。...我将其与 Shell 脚本相提并论。今年这个春季,我花费了大量的时间来学习 Shell 脚本。我想每位开发者都应该懂得怎样编写自定义函数。这是否比 TDD 更重要呢?
我建议你从一开始考虑这一点,如果深度学习解决方案是值得的。你必须考虑现有技术的性能水平很高,是否值得在本报告中提出的建议下进行逐步改进。不要因为只是看起来像最新最伟大的方法而进行深度学习。...你还应该考虑你是否有计算机资源,因为每个训练一个深度网络的进程可能需要几天或几周时间。我在自己的研究中充分利用了国防部的 HPC 系统。...准备好将这些指标作为损失函数的加权组成部分进行测试,以指导训练(见阶段 6)。 尽管你可能出于其强大能力而考虑深度学习,那么考虑一下如何使网络的「工作」尽可能简单。...你(或最先进的技术)目前使用的启发法/物理学是否可以在这里使用?可以预处理数据吗?虽然网络可以学习复杂的关系,但请记住:「网络工作越简单,执行效果就越好」。...如果你按照另一个类比并使用该架构,会发生什么?你能设想结合两者来测试吗? 一开始,你应该从一些容易的取得成功。随着你不断深入,提高性能将变得更加困难。
假设我们将使用RMSE作为我们的时间序列模型的评估指标。然后我们在测试集上评估了模型,RMSE为3.64。 3.64是不错的RMSE吗?我们怎么知道?我们需要基线RMSE。...2.持续集成是前进的道路 您现在已经创建了您的模型。它的性能优于本地测试数据集上的基线/当前模型。我们应该前进吗? 我们有两个选择: 为了进一步改进我们的模型,我们进入了一个无止境的循环。...在生产环境中测试我们的模型,获得更多有关可能出问题的信息,然后通过持续集成继续改进我们的模型。 我是第二种方法的粉丝。...3.您的模型可能会投入生产,模型是否比基准更好? 它在本地测试数据集上的性能更好,但总体上是否真的能很好地工作? 要测试您的模型优于现有模型的假设的有效性,可以设置A / B测试。...您可以将其发送到手动审阅,以检查它是否可以用于重新训练模型。这样,我们就可以在不确定的实例上训练分类器。 学习:考虑生产时,还要提出一个计划,以使用反馈来维护和改进模型。
静态分析工具和动态分析工具可以发现很难在review和测试发现的问题,因此推荐考虑使用它们。 如何对系统组件和依赖库(SDK)stub, mocke, fake, stage和进行功能测试?...考虑提供mocks, fakes, and/or reliable staged servers协助其他用户进行集成测试。...测试在版本发布中起什么作用? 他们是明确要发布待测版本,还是依赖持续集成测试的结果来确定是否发布? 如果系统组件和依赖库(SDK)独立发布,需要对他们的每个发布进行测试吗?...有些测试计划只能由少数人看,有的则是被许多人看。至少,你应该考虑所有利益相关者(项目经理,技术负责人,特性负责人)都进行了review。...考虑提供链接到包含自动测试用例的目录。 你是否需要在需求、功能和测试用例之间建立关联性? 你是否有产品健康或质量目标,你会如何衡量成功?
统计技术比Syntactic语言有两个显着的优点:我们可以在其他语言中使用它们,只需要很小的修改就可以使用它们,我们可以使用原始数据集的机器翻译,并取得相当好的结果。使用句法技术显然是不可能的。...我在这个领域的硕士论文的研究也表明,最大熵分类器可以受益于中立类。在接下来的几周内,我计划发表一篇这方面的文章。 4.注意标签算法 你是如何提交文件的呢?你会考虑到这个词的多次出现吗?...因此,请确保您运行几个初步测试,以找到最佳的算法配置。 请记住,如果您使用n-gram框架,n的数值不应该太大。...不要犯只因为在论文中发现了特定技术就使用的错误。问下你自己,它是否得到了你期望的结果,或者它是否使得你的算法不必要复杂而且难以解释结果。...因此在数据集中,每个类别中的例子数目应该是相等的。 10.集成学习可能没有那么强效 构建高精度分类器的最有力的技术之一就是使用集成学习并结合不同分类器的结果。
领取专属 10元无门槛券
手把手带您无忧上云