本地Linux版本是elementary OS 0.4.1 Loki,是基于 “Ubuntu 16.04.2 LTS” 构建的Linux发行版,相当于Ubuntu 16.04。
- 2017年5月30日阅读全文
Linux下的文件恢复
2017年3月29日阅读全文最近购买了一个平板二合一的电脑,平时出门带上用于码字,由于预算的不足,不能购买高性能的设备,只能购买了一个Intel Atom X5 z8350的寨板。在开始使用后,发现由于羸弱的性能,我平时主要的编辑器Atom不能流畅的运行。当然这不全是性能弱的锅,Atom也存在优化不足的原因,在我的i7+SSD的主力机下,当文件太大时就会有明显的卡顿。所以在平板上就不能使用Atom了,转而使用微软开发的Visual Studio Code。
Atom和VScode都是基于Electron,所以他们都能有良好的社区环境,来源源不断的提供给他们优秀的插件和主题,VScode在插件数量上是少于Atom的,但是VScode作为微软的亲儿子,在优化上明显的优势,甚至好于Sublime text。
刚刚使用VScode所有的功能不熟悉,我的项目maohhgg/bingWallpaper是一个自动下载Bing的每日背景并展示的项目,我当初设计存在缺陷,项目代码文件和下载目录放在了一起,所以在同步代码到Github上,只添加同步了代码文件,下载的视频和图片没有同步。 这就导致了在刚刚使用VScode的Git时,点击了全部撤销,导致了下载了半年的视频和图片付之一炬了,而Bing只提供了8天的接口,所以没办法在爬和下载之前的图片了,只好采取使用恢复软件了。
我的这个项目文件使用了定时更新(每天0:30爬Bing首页,并下载),所以项目被我放在的家里一个Linux的服务器上,而且存储下载目录的文件系统为EXT4。能较好的保存文件具体的日志信息。
composer报错
2017年3月17日阅读全文今天在用Yii2写一个项目时,使用了material-design-lite这个Material Design设计语言库,
我的Yii2使用的是Composer安装的。所以我也想使用Composer配合npm来保持material-design-lite库的更新。使用Kcptun加速Shadowsocks
2017年3月7日阅读全文最近终于忍受不了访问Google速度慢,搜索东西时url改变了,但还是停在Google首页!!!!,还有atom插件老奔溃,插件一奔溃就检查是否有更新。然而一更新半年都没反应。
偶然间读到一篇关于Google BBR拥塞算法,他是一个TCP加速优化工具,用于优化 TCP 连接,听说最近挺火的。有不少人用来优化Shadowsocks的TCP连接,翻墙的速度翻了倍。
(聪明的你发现了这个标题不符啊,这个下面来详述。)
这使我燃起了购买海外VPS的欲望,遂买了搬瓦工https://bandwagonhost.com/一年的VPS(他家支持支付宝,运气好的话还可以买到3.99$/year。)
。console
2016年10月29日阅读全文本文使用 Chrome 浏览器中 Developer Tools来演示各种效果
YAML语言
2016年10月29日阅读全文编程中经常会写配置文件,本人比较喜欢使用 JSON,在我以往使用的语言都对 JSON 有良好的支持。 当我使用 Hexo 来构建这个博客时, 配置 Hexo 时发现她使用了 YAML 来编写配置文件。google之,发现 YAML 包含了 JSON 的优点(部分吧),还能存储复杂的数据结构。
为什么没提 ini xml 来维护配置文件。编程从PHP开始,对xml支持不友好,解析xml比json麻烦得多。ini使用较少。
Java 反射机制
2016年10月8日阅读全文要让Java程序能够运行,就得让Java类被Java虚拟机加载。Java类如果不被Java虚拟机加载就不能正常运行。正常情况下,我们运行的所有的程序在编译期时候就已经把那个类被加载了。
Java编译时并不确定是哪个类被加载了,而是在程序运行的时候才自审、探知、加载所需要的类。在编译期时使用并不知道的类。这样的编译特点就是java反射。
Lambda表达式简介
2016年10月7日阅读全文Lambda表达式是java8给我们带来的几个重量级新特性之一,借用Lambda表达式,可以让我们的java程序设计更加简洁。Android Studio也会使用lambda表达式来缩略展示代码,本文将简略介绍Lambda表达式。
类加载
2016年9月20日阅读全文类从被加载到虚拟机内存中开始,到卸载出内存为止,它的整个生命周期包括:加载(Loading)、验证(Verification)、准备(Preparation)、解析(Resolution)、初始化(Initialization)、使用(Using)和卸载(Unloading)7个阶段。其中准备、验证、解析3个部分统称为连接(Linking)。如图所示。
加载、验证、准备、初始化和卸载这5个阶段的顺序是确定的,类的加载过程必须按照这种顺序按部就班地开始,而解析阶段则不一定:它在某些情况下可以在初始化阶段之后再开始,这是为了支持Java语言的运行时绑定(也称为动态绑定或晚期绑定)。以下陈述的内容都已HotSpot为基准。
GoF设计模式
2016年9月13日阅读全文