在ThoughtWorks经历过几个项目后,我从一个只会莽code的糙汉子变成了一个会写UT的糙汉子。写过UT,也写过集成测试,也实践过TDD,发现了一些有趣的地方,跟大家分享下。 一些基础的概念 作为一个开发,我对测试理解偏向在开发人员编写的自动测试上。其中,最常见的是单元测试(UT)和集成测试(Integration Test),另外也有维护接口契约的契约测试等等。但在这篇博客里,主要讨论的是最常见的单元测试和集成测试。 单元测试,覆盖的范围比较小,只针对一个组件(比如类),测试的目标往往是这个组件的公开方法。…

2021年6月20日 0条评论 2点热度 阅读全文

Servlet汇总 因为看公司代码,有个cookie+jwt.Token登录验证接口,于是回顾下servlet、cookie、session、前后端分离restful、jwt.token相关内容。虽然现在流行的是网关封装各个接口,但是基础还是比较重要,需要重新复习。 Servlet--基础理论、实战代码锻炼:https://how2j.cn/k/servlet/servlet-eclipse/558.html Servlet--拓展理论、实例参考链接:https://github.com/ZhongFuCheng3…

2021年6月20日 0条评论 2点热度 阅读全文

面向对象编程中,有一条非常经典的设计原则,那就是:组合优于继承,多用组合少用继承。同样地,在《阿里巴巴Java开发手册》中有一条规定:谨慎使用继承的方式进行扩展,优先使用组合的方式实现。 为什么不推荐使用继承   每个人在刚刚学习面向对象编程时都会觉得:继承可以实现类的复用。所以,很多开发人员在需要复用一些代码的时候会很自然的使用类的继承的方式,因为书上就是这么写的。继承是面向对象的四大特性之一,用来表示类之间的is-a关系,可以解决代码复用的问题。虽然继承有诸多作用,但继承层次过深、过复杂,也会影响到代码的可维护…

2021年6月20日 0条评论 2点热度 阅读全文

目录 1. 概述 1.1. 多边形分类 1.2. 三角剖分 2. 详论 3. 参考 1. 概述 1.1. 多边形分类 需要首先明确的是多边形的分类,第一种是最简单的凸多边形: 凸多边形的每个内角都是锐角或钝角,这种多边形最普通也最常见。如果至少存在一个角是优角(大于180度小于360度),那么就是凹多边形了: 以上多边形有一个共同特征就是由单个环线的边界组成。如果存在一个外环和多个内环组成多边形,那么就是带洞多变形了: 如上图所示的多边形是由一个外环和两个内环组成的,两个内环造成了外环多边形的孔洞,也就是带洞多边形…

2021年6月20日 0条评论 2点热度 阅读全文

MySQL8.0 引擎: 来看看MySQL8提供的引擎: 常用引擎: InnoDB:支持事务,行级锁,外键,崩溃修复,多版本并发控制;读写效率相对较差,内存使用相对较高,占用数据空间相对较大。 MyISAM:不支持事务,不支持外键,仅支持非聚集索引,支持全文索引,仅支持到表级锁,支持数据压缩,占用空间相对小,内存使用相对较低,读写性能相对极佳。 Memory:依赖于内存空间,数据处理速度快,仅支持到表级锁。 应用场景: InnoDB:依赖于 事务,回滚,并发,大数据量,外键,行级锁 的场景。 MyISAM:过多的大…

2021年6月20日 0条评论 1点热度 阅读全文

杨尧今 from Microsoft VS Code Java Team 欢迎来到 5月的 VS Code for Java 更新。这次,我们将与您分享Java格式化设置编辑器和其他很酷的功能。开始吧。 Java格式化设置 今天,在 VS Code 上更改 Java 格式化设置需要您浏览包含数百个选项的 XML 文件,更改该文件,并在无法预览更改的情况下应用到您的项目。此过程繁琐且容易出错。为了解决这个问题,我们引入了 Java格式化设置编辑器(Java Formatter Settings Editor). 编辑…

2021年6月20日 0条评论 1点热度 阅读全文

  今天休息在家,由于天气热再加上疫情原因,就在家里呆着,空闲时想着,在很早以前(约3年前),产品人员跟我提了一个需求,那就是winform桌面程序的图标能否根据节日动态更换,这种需求在移动APP上还是比较常见,比如:淘宝、天猫、京东、360等,它们在逢节假日时除了APP内容有更新,APP ICON也是都更新了的,但PC端的应用程序(APP)则很少见到说有动态更新图标的,故当时我是直接回绝了的,明确表示做不了,但今天我仔细想了一下,其实也是可以实现的,虽然无法直接更新桌面图标,但我们可以更新替换掉桌面的快…

2021年6月20日 0条评论 1点热度 阅读全文

核心观点:类型约定了对数据的解释方式 信息和数据 来自 wikipedia 的定义 https://en.wikipedia.org/wiki/Information https://en.wikipedia.org/wiki/Data wikipedia 上的定义真的是太晦涩了 在我的理解中,数据就是不带有任何属性的数字。例如一个数字1,就是一个单纯的数据。 仅通过一个数字 1,你是无法得到任何信息的,因为你不知道这个1到底代表什么意思。只有结合具体的语境,你才能从中获得有用的信息。 例如1本书、1个人、1头猪等…

2021年6月20日 0条评论 2点热度 阅读全文

我在博客园发表了一系列文章,开始介绍基于 .net core 的在线客服系统开发过程。 前些天又应朋友的要求,发了一篇 CentOS 版本的安装部署教程:https://www.cnblogs.com/sheng_chao/p/14889995.html 园友们又提出了新的要求,希望发布基于 Docker 的版本方便安装使用,今天,他来了。 简介 升讯威在线客服与营销系统是基于 .net core / WPF 开发的一款在线客服软件,宗旨是: 开放、开源、共享。努力打造 .net 社区的一款优秀开源产品。 完整私有…

2021年6月20日 0条评论 1点热度 阅读全文

随着.NET 6 Preview 5的发布,大家认真的看相关文章或者是动手做一个MAUI示例的时候就会碰到一个新概念工作负载(workload),相关规范参见 https://github.com/dotnet/designs/blob/main/accepted/2020/workloads/workloads.md 。 这里借用一张来自德国的.NET6图片,出自https://entwickler.de/online/windowsdeveloper/microsoft-build-2020-dotnet-xa…

2021年6月20日 0条评论 1点热度 阅读全文