摘要: 在上一篇文章中,将了数据对象、树对象和提交对象三种Git对象,每种对象会计算出一个hash值。那么,Git是如何计算出Git对象的hash值?本文的内容就是来解答这个问题。 Git对象的hash方法 Git中的数据对象、树对象和提交对象的hash方法原理是一样的,可以描述为: 上面公式表示,Git在 阅读全文
posted @ 2018-10-07 10:00 sfornt 阅读(2185) 评论(0) 推荐(0) 编辑
摘要: 初识 Lazy List 如果有了解过 Haskell 的朋友,对下面的这些表达一定不陌生 上面的几个表达式产生的都是无限列表。对于习惯了主流编程语言的朋友可能感到困惑,在有限的内存里面如何能表达无限的概念。主要的原因就是 Haskell 是一门默认采用惰性求值策略的语言,没有用到的部分,在内存里面 阅读全文
posted @ 2018-10-07 09:53 sfornt 阅读(294) 评论(0) 推荐(0) 编辑
摘要: 前端安全 随着互联网的高速发展,信息安全问题已经成为企业最为关注的焦点之一,而前端又是引发企业安全问题的高危据点。在移动互联网时代,前端人员除了传统的 XSS、CSRF 等安全问题之外,又时常遭遇网络劫持、非法调用 Hybrid API 等新型安全问题。当然,浏览器自身也在不断在进化和发展,不断引入 阅读全文
posted @ 2018-10-07 09:37 sfornt 阅读(451) 评论(0) 推荐(0) 编辑
摘要: 前言 本文主要为学习贴,用来记录一些 "linux上的常用指令" 以供参考。 文件内容查看 cat 从上往下阅读文件内容 tac 从下往上阅读文件内容,用法同cat nl 添加行号打印,默认情况下空白行不显示行号 more/less 一页一页翻动文件。 head/tail 取文件的前几行或者最后几行 阅读全文
posted @ 2018-10-07 09:20 sfornt 阅读(199) 评论(0) 推荐(0) 编辑
摘要: 基础了解 什么是内存泄漏? 内存泄漏是当程序不再使用到的内存时,释放内存失败而产生了无用的内存消耗。内存泄漏并不是指物理上的内存消失,这里的内存泄漏是指由程序分配的内存但是由于程序逻辑错误而导致程序失去了对该内存的控制,使得内存浪费。 Java 内存分配策略 Java 程序运行时的内存分配策略有三种 阅读全文
posted @ 2018-10-06 21:33 sfornt 阅读(156) 评论(0) 推荐(0) 编辑
摘要: 如果是经常使用Node来做服务端开发的童鞋,肯定不可避免的会操作数据库,做一些增删改查(CRUD,Create Read Update Delete)的操作,如果是一些简单的操作,类似定时脚本什么的,可能就直接生写SQL语句来实现功能了,而如果是在一些大型项目中,数十张、上百张的表,之间还会有一些( 阅读全文
posted @ 2018-10-06 21:16 sfornt 阅读(573) 评论(0) 推荐(0) 编辑
摘要: 最近阿里正式开源的BizCharts图表库基于React技术栈,各个图表项皆采用了组件的形式,贴近React的使用特点。同时BizCharts基于G2进行封装,Bizcharts也继承了G2相关特性。公司目前统一使用的是ECharts图表库,下文将对3种图表库进行分析比对。 相关文档 Vuejs2. 阅读全文
posted @ 2018-10-06 20:07 sfornt 阅读(8040) 评论(0) 推荐(1) 编辑
摘要: 前言 JS基于原型的‘类’,一直被转行前端的码僚们大呼惊奇,但接近传统模式使用class关键字定义的出现,却使得一些前端同行深感遗憾而纷纷留言:“还我独特的JS”、“净搞些没实质的东西”、“自己没有类还非要往别家的类上靠”,甚至是“已转行”等等。有情绪很正常,毕竟新知识意味着更多时间与精力的开销,又 阅读全文
posted @ 2018-10-06 19:58 sfornt 阅读(247) 评论(0) 推荐(1) 编辑
摘要: 使用inotifywait监控文件变动 inotifywait是 inotify tools 包中提供的一个工具,它使用 inotify API 来监控文件/目录中的变动情况。 在archlinux上,我们可以使用下面命令来安装 sudo pacman S noconfirm inotify too 阅读全文
posted @ 2018-10-06 19:08 sfornt 阅读(302) 评论(0) 推荐(0) 编辑
摘要: ```const open$ = new Subject(); const ws = webSocket({ url: 'wss://echo.websocket.org', openObserver: open$ }); // 订阅打开事件 open$.subscribe(() => {});``` ```javascript // An highlighted block var f... 阅读全文
posted @ 2018-10-06 18:01 sfornt 阅读(1024) 评论(0) 推荐(0) 编辑