学习笔记

【spock】单测竟然可以如此丝滑

0. 为什么人人都讨厌写单测 在之前的关于swagger文章里提到过,程序员最讨厌的两件事,一件是别人不写文档,另一件就是自己写文档。这里如果把文档换成单元测试也同样成立。 每个开发人员都明白单元测试的作用,也都知道代码覆盖率越高越好。高覆盖率的代码,相对来说出现 BUG 的概率就越低,在线上运行就越稳定,接的锅也就越少,就也不会害怕测试同事突然的关心。 既然这么多好处,为什么还会讨厌他呢?至少在我看来,单测有如下几点让我喜欢不起来的理由。 第一,要额外写很多很多的代码,一个高覆盖率的单测代码,往往比你要测试的,真正开发的业务代码要多,甚至是业务代码的好几倍。这让人觉得难以接受,你想想开发 5 分钟,单测 2 小时是什么样的心情。而且并不是单测写完就没事了,后面业务要是变更了,你所写的单测代码也要同步维护。 ...

构建企业级数据湖?Azure Data Lake Storage Gen2实战体验(下)

 相较传统的重量级OLAP数据仓库,“数据湖”以其数据体量大、综合成本低、支持非结构化数据、查询灵活多变等特点,受到越来越多企业的青睐,逐渐成为了现代数据平台的核心和架构范式。作为微软Azure上最新一代的数据湖服务,Data Lake Storage Gen2的发布,将云上数据湖的能力和体验提升上了一个新的台阶。在前面的文章中,我们已分别介绍了其基本使用和大数据集群挂载的场景。作为本系列的下篇,让我们继续深度体验之旅。...

揭开HTTPS的神秘面纱

在说HTTP前,一定要先介绍一下HTTP,这家伙应该不用过多说明了,大家每天都在用,每一次HTTP请求,都是一次TCP连接。遗憾的是,请求的内容在TCP报文中是明文传输的,任何人截取到请求都可以读取其中的内容,很尴尬。 数据加密 为了防止请求内容被人窃取,在网络传输的路上我们做不了手脚,那就只能对传输的数据报文上做手脚了。对报文内容进行加密就是其中的一种方法。 有一种加密算法叫做对称加密算法,即加密和解密使用同一个秘钥,使用这种算法对请求数据进行加密,中间人因为没有秘钥,无法读取其中的内容。但是,使用这种算法进行加密,肯定要同意秘钥,那秘钥在网络中传输同样存在被窃取的风险啊。 ...

被低估的.NET(下)-2019 中国.NET 开发者峰会

Time flies!不知不觉距离上篇《被低估的.net(上) - 微软MonkeyFest 2018广州分享会活动回顾》和中篇《被低估的.net(中) - 广州.net俱乐部2019年纲领》己经过去一年了。在这一年里发生了很多事情: 2018年12月8日广州.NET俱乐部复活后第一次活动 2019年1月19日苏州微软技术俱乐部成立 2019年3月10日东莞.NET首次线下活动 2019年4月21日长沙.NET社区成立 此处还有更多, 我就不一一搜罗了. 这里有全国总计20个城市的.NET俱乐部列表。全国各个城市.NET俱乐部纷纷成立和复活都证明了.NET被低估。 ...

Flask源码分析二:路由内部实现原理

前言 Flask是目前为止我最喜欢的一个Python Web框架了,为了更好的掌握其内部实现机制,这两天准备学习下Flask的源码,将由浅入深跟大家分享下,其中Flask版本为1.1.1。 上次了解了Flask服务的启动流程,今天我们来看下路由的内部实现机理。 Flask系列文章: Flask开发初探 Flask源码分析一:服务启动 关于路由 所谓路由,就是处理请求URL和函数之间关系的程序。 Flask中也是对URL规则进行统一管理的,创建URL规则有两种方式: 使用@app.route修饰器,并传入URL规则作为参数,将函数绑定到URL,这个过程便将一个函数注册为路由,这个函数则被称为视图函数。 ...

如何让多个不同类型的后端网站用一个nginx进行反向代理实际场景分析

 前段时间公司根据要求需要将聚石塔上服务器从杭州整体迁移到张家口,刚好趁这次机会将这些乱七八糟的服务器做一次梳理和整合,断断续续一个月迁移完成大概优化掉了1/3的机器,完成之后遇到了一些问题,比如曾今零零散散部署在生产上一些可视化UI:apollo,kibana,grafana,jenkins 等等要么采用80端口,要...

你编写的Java代码是咋跑起来的?

如果你是一名 Java 开发人员,你肯定指定 Java 代码有很多种不同的运行方式。比如说可以在开发工具(IDEA、Eclipse等)中运行,可以双击执行 jar 文件运行,也可以在命令行中运行,甚至可以在网页(比如各种 OJ)中运行。当然,这些执行方式都离不开 JRE(Java 运行时环境)。 JRE 包含运行 Java 程序的必需组件,包括 JVM(Java 虚拟机)以及 Java 核心类库等。Java 程序员经常接触到的 JDK(Java 开发工具包)同样包含了 JRE,并且还附带了一系列开发、诊断工具。 ...

Pandas | 17 缺失数据处理

 数据丢失(缺失)在现实生活中总是一个问题。 机器学习和数据挖掘等领域由于数据缺失导致的数据质量差,在模型预测的准确性上面临着严重的问题。 在这些领域,缺失值处理是使模型更加准确和有效的重点。 ...

【深入理解多态】从“妈妈我想吃烤山药”讲起

目录 1、从吃烤山药重新认识多态 2、 多态前提条件【重点】 3、 多态的体现 4、向上转型 5、向下转型 6、向上向下转型再次分析【加餐不加价】 7、多态与构造器之间的微妙 8、多态的优点 9、分析开篇的九个问题 10、最后我们一起来正式分析那九个题 @ 在我认为多态绝对是面向对象的第三大特性中让很多小白同学以及初学者难以跨越的鸿沟,因为多态有很多细节性的知识,不花点时间,还真不好理解多态。这么说吧,如果你觉得你已经完全理解了多态,你不妨做做下面的程序,如果你能全都答对,那没问题了,多态对你来说真的不是问题!如果在第四个就趴下了,那可以看看这篇文章,或许对你有所帮助,可能会让你重新见识到多态的魅力。 ...

2019.NET Conf,我们在共同期待

一)回顾一个小社区红过的五分钟 不知不觉,距离中国.net社区组织的.net conf只有不到一周的时间,还记得年初在叶伟民老师,潘淳老师和张善友老师的号召下,我们长沙的十几位开发者自发组织起来,拉了一个技术社区,并在腾讯云加社区、微软Azure云技术社区的大力支持,在华邦互联、百师通教育、校管家、心莱科技、长沙冉星信息、深圳纵网长沙分公司、北大青鸟海纳学院等优秀企业的赞助下,在四月组织了一次技术大会,上午场邀请到了张善友老师、梁桐铭老师和汪鹏老师,下午场邀请到了腾讯云的胡李伟老师和卓伟老师,一天的分享安排的满满当当,在小城长沙的.net技术圈掀起了一波小浪潮。 ...

持久层框架JPA与Mybatis该如何选型

 一、现状描述目前java 持久层ORM框架应用最广泛的就是JPA和Mybatis。JPA只是一个ORM框架的规范, 对该规范的实现比较完整就是Spring Data JPA(底层基于Hibernate实现),是基于Spring的数据持久层框架,也就是说它只能用在Spring环境内。Mybatis也是一个优秀的数据持久层框架,能比较好的支持ORM实体关系映射、动态SQL等。...

小白学 Python(13):基础数据结构(字典)(下)

人生苦短,我选Python 前文传送门 小白学 Python(1):开篇 小白学 Python(2):基础数据类型(上) 小白学 Python(3):基础数据类型(下) 小白学 Python(4):变量基础操作 小白学 Python(5):基础运算符(上) 小白学 Python(6):基础运算符(下) 小白学 Python(7):基础流程控制(上) 小白学 Python(8):基础流程控制(下) 小白学 Python(9):基础数据结构(列表)(上) 小白学 Python(10):基础数据结构(列表)(下) ...
青岛软件培训

可能你正在寻找一家靠谱的IT培训机构,学习一些专业的软件开发技术,找一份得体的工作。恰巧我们就是一家踏踏实实做教育的IT人才培养机构,我们咨询电话是 0532-85025005,如果你确实对IT感兴趣,我们不妨交流一下。

申请免费试听课程