```**前言**不出意外,这应该是年前最后一次分享,本次来一点实际开发中会用到的小技巧。比如平时大家是否都会写类似这样的代码:if(a){//dosomething}elseif(b){//doshomething}elseif(c){//doshomething}else{////doshomething}```条件少还好,一旦elseif过多这里的逻辑将会比较混乱,并很容易出错。比如这样:摘
分类:
其他好文 时间:
2020-12-16 12:55:13
阅读次数:
7
本篇文章主要是记录整体调整Python数据统计分析项目规范性的过程,以及自己的一些思考。 为什么要调整? 主要是为了解决数据类程序不容易测试发现错误的现状。调整公共模块出错时抛出错误到业务层,便于报警模块上传错误信息到kafka,最后能主动发出报警邮件。以及方便加入报警之外的其他程序埋点。 调整所有 ...
分类:
编程语言 时间:
2020-12-16 12:32:52
阅读次数:
3
黑盒测试和白盒测试是软件测试的两种基本方法,请分别说明各自的优点和缺点! 黑盒测试的优点有:比较简单,不需要了解程序内部的代码及实现;与软件的内部实现无关; 从用户角度出发,能很容易的知道用户会用到哪些功能,会遇到哪些问题;基于软件开发文档,所以也能知道软件实现了文档中的哪些功能;在做软件自动化测试 ...
分类:
其他好文 时间:
2020-12-16 11:47:23
阅读次数:
2
什么是模型化编程?模型化编程是我在前几天的一篇文章《非著名架构师告诉你,代码该如何写,才能自己写的容易别人看的也不痛苦》中提出的,意思是在写代码前,先为代码找到一个与之非常相近的模型,然后在大脑里把这个模型想清楚并构建好。这样写代码时就按照这个模型来写,保证写出来的代码是正确的,而且整体看起来也非常清晰,绝对不会有“东一枪,西一炮”这样凌乱的感觉。当我们向别人介绍时,就把这个模型描绘出来,只要对方
分类:
其他好文 时间:
2020-12-15 11:38:53
阅读次数:
3
为了使本篇文章更容易让读者读懂,我特意写了上一篇《任何人都需要知道的「世界时间系统」构成原理,尤其开发人员》的科普文章。本文才是重点,绝对要读,走起!Java平台时间系统的设计方案几乎任何事物都会有“起点”这样的概念,比如人生的起点就是我们出生的那一刻。Java平台时间系统的起点就是世界时间(UTC)1970年1月1日凌晨零点零分零秒。用专业的写法是“1970-01-01T00:00:00Z”,最
分类:
编程语言 时间:
2020-12-14 13:55:00
阅读次数:
12
这个本来是之前在微博上有个同学说他经常用来面试别人,大概是说,对于如下代码,你觉得会输出啥: $a = true; if ($a) { echo "true"; } else label: { echo "false"; } 当时觉得有点偏,没想写,今天中午又有人问我,我想那就介绍下这个原因吧. 首 ...
分类:
其他好文 时间:
2020-12-11 12:34:27
阅读次数:
22
前言本文是秒杀系统的第二篇,通过实际代码讲解,帮助你快速的了解秒杀系统的关键点,上手实际项目。本篇主要讲解接口限流措施,接口限流其实定义也非常广,接口限流本身也是系统安全防护的一种措施,暂时列举这几种容易理解的:令牌桶限流单用户访问频率限流抢购接口隐藏此外,前文发出后很多同学对于乐观锁在高并发时无法卖出全部商品提出了“严正抗议”,所以还是在本篇中补充讲解下乐观锁与悲观锁。前文回顾和未来文章规划:从
分类:
其他好文 时间:
2020-12-11 12:04:27
阅读次数:
3
一、背景这两天,在网上逛的时候,发现了如下的一道面试题,感觉还有蛮有意思的,要是不仔细看还真容易掉到坑里面。第一眼看起来比较绕,所以比较难理解。最终我跳出了这个坑,也想把这个跳坑的经历分享出来。题目如下,请问输出的是什么?为什么?/***@authorhafiz.zhang*@description:一个奇怪的现象*@dateCreatedin2018/7/222:44.*/publicclass
分类:
其他好文 时间:
2020-12-10 11:08:41
阅读次数:
2
一、FastDFS基本概念及基本原理1.什么是FastDFS FastDFS是用C语言编写的一款开源的分布式文件系统。FastDFS为互联网量身定制,充分考虑了冗余备份、负载均衡、线性扩容等机制,并注重高可用、高性能等指标,使用FastDFS很容易搭建一套高性能的文件服务器集群提供文件上传、下载等服务。主要功能包括文件存储、文件同步、文件访问(上传、下载)、存取负载均衡、在线扩容、相同内容只存储
分类:
其他好文 时间:
2020-12-10 11:04:10
阅读次数:
3
CUDA 内存统一分析 关于CUDA 编程的基本知识,如何编写一个简单的程序,在内存中分配两个可供 GPU 访问的数字数组,然后将它们加在 GPU 上。 本文介绍内存统一,这使得分配和访问系统中任何处理器上运行的代码都可以使用的数据变得非常容易, CPU 或 GPU 。 图 1 .内存统一是可从系统 ...
分类:
其他好文 时间:
2020-12-10 11:00:49
阅读次数:
4