函数式编程(FP) 学习笔记 同大家分享、交流学习成果,观点不一定正确,请大家用辩证的眼光来看待本文内容 鸟瞰函数式编程的概况 简单了解一下函数式编程中的基本脉络和一些主要思想 看看大家怎么说 1. “函数式…
拜占庭将军问题和FLP的启示
Byzantine Generals Problem 昨天那篇文章提到的Two General Paradox实际上是一个弱化的Byzantine Generals Problem. 1982年, Leslie Lamp…
全球分布式数据库:Google Spanner(论文翻译)
本文由厦门大学计算机系教师林子雨翻译,翻译质量很高,本人只对极少数翻译得不太恰当的地方进行了修改。 【摘要】:Spanner 是谷歌公司研发的、可扩展的、多版本、全球分布式、同步复制数据库。它是第一个把数据分布在全球范围…
浅析DDD(领域驱动设计)
最近在做一些微服务相关的设计,内容包括服务的划分,Restful API的设计等。其中比较棘手的就是Service的职责划分:如何抽象具有统一业务范畴的Model,使其模块化,又如何高度提炼并组合多模块,使得业务可独立服…
设计模式精读 ~ 省略构造细节的克隆技术 ~ 原型
所属文章系列:寻找尘封的银弹:设计模式精读 【一、从繁杂的代码中寻找简化之法】 【动机】 程序员都知道设计模式是好东西,一开始都能动力十足地去学习。但是,时间久了才发现:设计模式很难学,《设计模式》相关书籍里的细节非常复…
Proxy 代理模式
动机 有时,我们需要对一个对象的访问进行控制。比如说如果我们有一些开销较大的对象,但是只需要使用其中一部分方法,我们只要在完全需要它们的时候才初始化这些对象。那时, 我们可以用一些暴露出同样接口的轻量级对象来替代那些笨重…
LinkCode 408 二进制求和
好长时间没更了,最近想练一下算法,这是个开端: 描述 给定两个二进制字符串,返回他们的和(用二进制表示)。 样例 a =11 b =1 返回100 我的理解: 对于这道题,我想到的应该是我这类平常人普遍想到的就是按照逻辑…
Java ArrayList扩容实现原理
一、.ArrayList: 写过的项目到现在基本上面向业务域查询返回大列表都是使用ArrayList来存储业务数据的。 定义:ArrayList是List接口的可变数组的实现。实现了所有的可选列表的操作并允许包括null…
带监督的文本分类算法FastText
该算法由facebook在2016年开源,典型应用场景是“带监督的文本分类问题”。 模型 模型的优化目标如下: 其中,$<x_n,y_n>$是一条训练样本,$y_n$是训练目标,$x_n$是normalize…
Google Palette算法详解以及OC化
1.背景 在发现百日大战时景项目中。有一个创新玩法,就是通过筛选图片主色调来显示如红色系,蓝色系照片。这就涉及到了图片主色调的提取。技术选型为客户端进行图片颜色提取,上传到服务端。但是由于项目时间限制,iOS和Andro…
java网络编程-学习总结
文章所写内容是我自己对学习java网络编程阶段做一个小小的总结,把自己所学之物与大家分享一下,希望能与各位共同学习进步。 GitHub地址:https://github.com/justbeaboy/Network-Pr…
单例模式(Singleton)- 最易懂的设计模式解析
前言 今天我来全面总结一下Android开发中最常用的设计模式 – 单例模式。 其他设计模式介绍 1分钟全面了解“设计模式” 单例模式(Singleton) – 最易懂的设计模式解析 简单工厂模式…