开闭原则 定义:一个软件实体如类、模块和函数应该对拓展开放,对修改关闭。用抽闲构建框架,用实现拓展细节 优点:提高软件系统的可复用性和可维护性 依赖倒置原则 定义:高层模块不应该依赖底层模块,二者都应该依赖其抽象。抽象不…
分类:后端开发
计算机科学中抽象的好处与问题—伪共享实例分析
David John Wheeler有一句名言“计算机科学中的任何问题都可以通过加上一层间接层来解决”,一层不够就再加一层。后半句是我加的 (* ̄︶ ̄) ,虽然有点玩笑的意思,但是也的确能说明一些问题。计算机科学的确是靠…
leetcode390.Elimination Game
题目要求 There is a list of sorted integers from 1 to n. Starting from left to right, remove the first number and …
Go并发调用的超时处理
之前有聊过 golang 的协程,我发觉似乎还很理论,特别是在并发安全上,所以特结合网上的一些例子,来试验下go routine中 的 channel, select, context 的妙用。 场景-微服务调用 我们用…
分布式服务框架 [dubbo/dubbox] 入门示例
dubbo是一个分布式的服务架构,可直接用于生产环境作为SOA服务框架。 官网首页:http://dubbo.io/ ,官方用户指南 http://dubbo.io/User+Guide-zh.htm上面的几张图画得不错…
leetcode449. Serialize and Deserialize BST
题目要求 Serialization is the process of converting a data structure or object into a sequence of bits so that it …
ES6 知识整理一(es6快速入门)
ES6 简介 ES6, 全称 ECMAScript 6.0 ,是 JavaScript 的下一个版本标准,2015.06 发版。 let 和 const let 命令 let 命令,用来声明变量。它的用法类似于 var,…
前端面试整理
h5 html5 新api storage geolocation history webworker indexDB websocket canvas css3 box-shadow border-radius rem…
按照奖品概率分布抽奖的实现
首发于 樊浩柏科学院 需求:首先用户通过以一定方式(好友点赞等)开启抽奖资格,然后按照用户 100% 中奖概率进行抽奖,且系统的发放奖品需要按照各个奖品整体的期望中奖比例来进行分布,最后用户抽中奖品调用第三方发放接口发放…
Linux基础学习系列——Linux打包压缩与搜索命令
Linux打包压缩与搜索命令 tar命令 grep命令 find命令 tar命令 tar命令用于对文件进行打包压缩或解压。 格式: tar [选项] [文件] 说明: 在Linux系统中,常见的压缩文件格式主要有:.ta…
leetcode413. Arithmetic Slices
题目要求 A sequence of number is called arithmetic if it consists of at least three elements and if the difference…
擦亮你的双眸,看过来(文件的上传与下载,超级实用)
文件的上传和下载、fileupload组件工作流程 文件上传概述 实现web开发中的文件上传功能,需完成如下二步操作: 在web页面中添加上传输入项 在servlet中读取上传文件的数据,并保存到本地硬盘中。 如何在we…