聚合文章

汇集全部已收录博客的最新文章,点击标题前往原文阅读。

排序方式:最新发布
HansChen 的博客 HansChen 的博客 2017-03-01

设计模式之桥接模式

场景问题发送消息现在我们要实现这样一个功能:发送消息。从业务上看,消息又分成普通消息、加急消息和特急消息多种,不同的消息类型,业务功能处理是不一样的,比如加急消息是在消息上添加“加急”字样,而特急消息除了添加特急外,还会做一条催促的记录,多久不完成会继续催促。从发送消息的手段上看,又有系统内短消息、手机短消息、邮件等等。现在要实现这样的发送提示消息的功能,该如何实现呢?不用模式的解决方案实现简化版…

我的Web开发实战总结(二)

写在前面 这篇是继我的Web开发实战总结(一)的第二篇文章,在此篇里,我主要总结一下如何把Web页面上的报表或列表数据转换成pdf文件下载到本地。其中涉及到的知识我也会提出来供大家交流学习。ok,开始吧~ 先来看看效果 Web页面上的列表数据 上图就是Web页面上的列表数据,将其右侧生成pdf之后的效果如下: 生成的pdf文件 实现思路 这里我提出两种实现思路: 1.利用Jacob将EXCEL转成PDF2.利用iText将HTML 转为 PDF 1.利用Jacob将EXCEL转成PDF一开始我用的这种思路,主要是因为有生成EXCEL的功能了,想着只要利用jacob再讲EXCEL转成PDF即可,…

justjavac justjavac 2017-02-24

使用 D8 分析 javascript 如何被 V8 引擎优化的

在上一篇文章中我们讲了如何使用 GN 编译 V8 源码,文章最后编译完成的可执行文件并不是 V8,而是 D8。这篇我们讲一下如何使用 D8 调试 javascript 代码。 如果没有 d8,可以使用 node 代替。 新建文件 add-of-ints.js,输入以下内容: function add(obj) { return obj.prop + obj.prop; } const length = 1000 * 1000; const o = { prop: 1 }; for (let i = 0; i < length; i++) { add(o); } 运行: d8 --trace-o…

justjavac justjavac 2017-02-21

React:”don’t fuck it up like Google did with Angular”

React 核心开发人员 sebmarkbage 大神在 GitHub 开了个 issues,用来征询社区对 JSX 2.0 的建议。 到底增加(改动)了什么呢? #4 - 不对属性和文本中的 HTML 转义标识进行转义 #21 - 属性支持表达式 #23 - 传参时使用对象简写表示 #25, #51, #64 - 属性是单一符号或有小括号时,大括号可以省略 而且还包括了: #39 - 隐式 do 表达式 #35 - Drop implicit text content and curlies as children. #66 - 自定义属性命名空间 用过 React 的开发者都知道,Reac…

Yixuan Yixuan 2017-02-21

优化微信的接收与回复 (Django微信公众号开发四)

上一篇已经提到, 整个微信公众号与用户的交互方式了. 不过我们只做了 文字消息 型. 但是, 用户除了发文字消息, 也可能发图片, 语音, 视频等类型的消息. 用户发送文字消息的时候, 我们抓取到用户给我们的内容, 然后把内容发送回去. 但是, 如果用户发的是图片呢? 或者语音呢? 我们要返回什么? 所以呐, 就要看看官方文档里, 图片的 xml 和 语音的 xml 都包含什么了. 于是乎….我们…

justjavac justjavac 2017-02-20

移动 Web 滚动性能优化:Passive Event Listeners

原文地址:https://justjavac.com/javascript/2017/02/20/web-scrolling-performance-optimization-passive-event-listeners.html 备份地址:https://github.com/justjavac/the-front-end-knowledge-you-may-dont-know/issues/6 今年的 Google I/O 已经过去一段时间了,大部分人都关注了一些新产品的发布,比如 Allo 和 Duo、Android N、Daydream、Android Studio、Firebase…

做了个CoolReader For Kobo的汉化(附简要汉化教程)

前言 虽然现在主流的电纸书是Kindle,但是我一直以来都比较喜欢KOBO这个品牌的产品,可以研究折腾的东西很多。我之前是用的6寸的Kobo Touch(N905B),不过前段时间有问题用不了了就挂在咸鱼出给有需要替换维修的人了。后面又入了一台Kobo Aura HD,大家主流的系统搭配都是原生系统nickel搭配KoReader,不过我以前一直习惯用CoolReader最近去官网发现有新版本了,…

Yixuan Yixuan 2017-02-20

微信的接收与回复 (Django微信公众号开发三)

我靠…这是第一次没跑通就现在写文档的一次. 因为已经深陷在薛定谔的 BUG 里了是也乎…所以呐! 写一篇出来看看能不能把思路撸清楚了. 直觉来说…. 微信会扔出来: GET 与 POST 如果是 GET: 我就验证一下 token 啊什么的...(上一篇已经提到) 如果是 POST: 1. 拿到 xml (官文有模板和字段) 2. 解析 xml 3. 发回 xml (官文有模板和字段) 所以, 我…

Yixuan Yixuan 2017-02-19

通过微信的 token (Django微信公众号开发二)

version: 0.0 by Yixuan Li TIME: Feb.19, 2017 第一篇已经讲完如何把 Django 的 APP 设置到 80 端口啦! 啊哈…部署 + Token 已经占了微信开发的 80% 的坑. 剩下的就容易很多很多很多很多很多了… 看了一下微信的官方文档, 里面说道: (点击链接后, 点开接入指南) 开发者通过检验signature对请求进行校验(下面有校验方式)。…

Yixuan Yixuan 2017-02-16

Django+ Nginx + uWsgi 部署 (微信公众号开发一)

Wrote by: Yixuan Franco Date: Feb.16, 2017 Version: 0.0 我的冻鸡…(鸡年好 title) 我的冻鸡很简单呐! 我只是想拿 Django 写个微信公众号而已 T^T, 结果就陷入了无尽的部署黑洞, 万丈深渊. 可见这个世界上没有运维是一件夺么可怕的事情. 我的幻想步骤… 买阿里云 ECS 服务器. 把 Django 框架布上去. 然后过掉 To…

JayXon - Blog JayXon - Blog 2017-02-14

GIF vs APNG vs WebP

再转一个我在知乎的回答 简介 GIF 是一个非常古老的格式,1987 年诞生,最后一个版本是 1989 年。(这就是为什么 GIF 文件头的 magic number 是 GIF89a) APNG 相... 原文链接:GIF vs APNG vs WebP | 博客首页:JayXon

教育对人的改变有多大?

Initial version 我有个弟弟,亲的,小我八岁。 五年前他面临中考,我已经本科毕业,在北京工作了半年多了。 那时他的成绩在我家县城的中学,大概是 400/600 左右。至于我家县城的教育水准?这么说吧,自打我上了中学起,我家县城就再没有一个学生能够考入清华北大 Top 2,Top 5 的学校也没有——他们说在中国 Top 2 的大学是清华北大,但是 Top 5 的大学有七八所,:-)。…

Fugoes's Blog Fugoes's Blog 2017-02-12

用Android手机播放Linux的声音

我的笔记本电脑的耳机口底噪非常大,大概是因为硬盘就在耳机口的位置,从 hdd 换到 ssd 之后底噪有所改善,但是还是大呀,非常影响看电影的心情,解决方案无非有: 接一个DAC 借助其他方法用安卓手机播放电脑的音频 我借过一个朋友的国砖实验, Linux PulseAudio 对国砖的 DAC 模式支持良好,但是,由于没有钱种种原因,我不得不还是尝试了一下后一种方法,效果拔群! 原材料 一台 Linux 电脑,使用 PulseAudio 一台有无线网卡(废话)的安卓手机 方案一: DLNA 这里有一个项目,但是由于 DLNA 本身的限制,延时很大(秒的量级)。 方案二: PulseAudio …

Jan Hünermann Jan Hünermann 2017-02-01

Self-Driving Cars in the Browser

This project demonstrates how a computer can learn by itself how to control a car. Using reinforcement learning, the agent’s neural network is trained to maximize its reward, which in this case is the…

JayXon - Blog JayXon - Blog 2017-01-30

恢复那些被豆瓣和谐的评分

今年春晚依旧充斥着各种政治内容,尤其是新疆那个小品,恶心死我了,本来想去豆瓣打个一颗星,结果发现评分已经被和谐了,也不能打分了(手机网页依旧可以打分)。 但是我发现豆瓣只是不显示评分了,并没有删除评分... 原文链接:恢复那些被豆瓣和谐的评分 | 博客首页:JayXon

Icharle Icharle 2017-01-27

博客回归

起源自2014年开博客至今,算起来也有俩三年啦。以前还在读书没有时间管理,很多东西不了解,如今上到大学才能看懂一些网页的代码,现在趁着寒假对博客重新整理,以前写的文章全部删除,从现在开始重新编写文章。

宝塔面板Apache的SSL异常问题

1、问题现象Apache开启SSL若你粘贴的证书不正确,会导致Httpd服务无法启动,使网站和后台网页均无法打开。 2、解决方案因Apache没有提供证书配置检测接口,所以需要手动把配置改回来。具体步骤如下: 打开网站配置文件删除关于443端口的相关配置 输入下面的命令打开对应网站的配置文件:vi /www/server/apache/conf/vhost/网站名称.conf删除443端口相关配置…

L-YP BLOG 2017-01-05

Ubuntu 16.04 网络安装 OpenSUSE

有些朋友喜欢opensuse,但碍于购买的VPS部分服务商并没有opensuse镜像。kvm可以通过VNC自行安装自己喜欢的linux发行版,不需要挂载ISO,网络安装即可。以下版本为 open...

push本地代码到github出错

有时候往GitHub上提交东西的时候会因为remote repository上有东西更新了但是local repository 没有更新而造成提交失败 有如下几种解决方法: 1.使用强制push的方法: $ git push -u origin master -f 这样会使远程修改丢失,一般是不可取的,尤其是多人协作开发的时候。 2.push前先将远程repository修改pull下来 $ git pull origin master $ git push -u origin master 3.若不想merge远程和本地修改,可以先创建新的分支: $ git branch [name] 然后…

我的2016

写在前面 今天是2016年的最后一天了,之前有在入职两个月的一些感受中说到: 以后决定每年写一篇年终总结,那么,今天就是兑现承诺的时候了,本篇就是我的2016年终总结,也是第一篇年终总结(惭愧啊~之前都没有写总结的习惯)。。。 但是回顾这一年,没有令到我特别自豪的事,反而对自己不满意的地方还是挺多。但逃避总不能解决问题,那么就静下心来好好做个总结,给2017年敲个警钟吧~ 片段1 其实在2015年年末,我就想着要离职了,一方面是部门的变动,直属领导及老员工地相继跳槽,工作方向、技术氛围不再是自己喜欢的了。另一方面,感觉自己不能再这样子下去了,我还记得当时直属领导走的最后一天,跟我说要有个规划,…

Perfect Freeze! Perfect Freeze! 2016-12-31

Oh My 2016

Summary 家畜の安寧 虚偽の繁栄 死せる餓狼の『自由』を! Moments 1 @Swift Conf 1 抑郁 2 和少将、迷子去南昌找球球玩 2 拿到驾照 3 重新开始玩 Project Diva 3 鸡鸣寺赏樱、夜游 4 日本毕业旅行🇯🇵 5 莫名去了武汉 5 在大剧场举办的学园祭 6 毕业🎓 7 突然决定来帝都,加入了渡鸦 8 送走出国的大学同学,还有小萌 9 マジカルミライ 2016 10 Release inFlow 10 四十八小时参加了两场 Hackathon 11 Release QReader 11 北京雾霾,机场半日游 11 Release Raven H-1 12…

白玉楼之梦 白玉楼之梦 2016-12-30

OpenShader月报 #0

虽然没有做paperwork的习惯,但我觉得在这时候还是写一篇总结这个月工作进展的文章比较好,毕竟卫星放出来如果没时不时地搞点大新闻的话总会让人觉得弃坑了是吧 233 RenderChunk更新优化 众所周知MC的地图是以16x256x16的Chunk - 即所谓的区块 - 为存储单位,但在渲染时是以16x16x16的RenderChunk为单位进行更新和渲染,问题在于RenderChunk的更新…

Perfect Freeze! Perfect Freeze! 2016-12-29

写给 2017 的你和我

青春が終わり、人生が始まる。 每个人都更容易被满足: 踏入社会,无论是工作还是继续深造学习,如果能通过知识或者金钱的积累满足每个人的愿望,那就最好不过了。 不断最大化个人的利益: 可能站在一年前或者两年以前,我一定会说先满足集体利益再考虑自我。但是站在现在的这个节点看来,满足自己的利益不被集体损害要优先于其他任何事情。未来可是在自己手里。 继续努力追求自由: 写给仍被关在学校中学习的你,亦或是感觉上了一年班依旧感觉两手空空的你。无论是精神还是物质上的自由,我们都需要去不断努力追求。今年自己做的几个决定1,可能都比较鲁莽和草率,但是离自己想要的自由的生活却越来越近了。 还能有梦想,还敢去想: 脚…

Perfect Freeze! Perfect Freeze! 2016-12-27

做决定及其他

在去年年末写总结的时候,自己曾经写下「希望今年一年做决定能够更加的果断和勇敢」之类的话语。现在看来,的确是做到了一部分,但少些时候依旧会变得很被动、优柔寡断。分门别类,有两种情况: 一,是涉及集体时所做的决定。根据囚徒困境理论,现实就是一个非零和博弈,个人的理性选择往往会导致集体的非理性结果。并且,在赵国往往有着「吃力不讨好」的说法,所以在这时做的决定往往是基于感性,而非理性。 二,是涉及复杂影响因素和未来导向的决定。比如曾在十月份纠结「出国还是工作后再出国」。这个决定涉及家庭环境、未来自己的出路(比如,大家都很关心的…钱?)等等。做这种决定时,自己还是喜欢找人讨论后再小心谨慎地去做。 最近很…

HansChen 的博客 HansChen 的博客 2016-12-27

设计模式之代理模式

概述我们执行一个功能的函数时,经常需要在其中写入与功能不是直接相关但很有必要的代码,如日志记录、信息发送、安全和事务支持等,这些枝节性代码虽然是必要的,但它会带来以下麻烦:枝节性代码游离在功能性代码之外,它下是函数的目的枝节性代码会造成功能性代码对其它类的依赖,加深类之间的耦合枝节性代码带来的耦合度会造成功能性代码移植困难,可重用性降低毫无疑问,枝节性代码和功能性代码需要分开来才能降低耦合程度,我…

虚拟机共享目录引起的权限问题

我在写代码的时候,不喜欢在mac上装相关依赖的组件,因为不同项目之间的依赖冲突有点麻烦,而且久而久之会污染我mac环境。所以我有一个VirtualBox,里面弄一个ubuntu的虚拟机,ssh进去安装,这个虚拟机可以随时抛弃,再重新建立。 但同时我又非常喜欢mac的GUI,所以我把开发目录在Host(mac)和Gue…