<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[花开无言]]></title><description><![CDATA[不积跬步，无以至千里；不积小流，无以成江海]]></description><link>https://blog.youkuaiyun.com/wwj_ff</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; wwj_ff]]></copyright><item><title><![CDATA[Google Java 编码规范]]></title><link>https://blog.youkuaiyun.com/wwj_ff/article/details/50865581</link><guid>https://blog.youkuaiyun.com/wwj_ff/article/details/50865581</guid><author>wwj_ff</author><pubDate>Sat, 12 Mar 2016 15:01:31 +0800</pubDate><description><![CDATA[前言
这份文档是Google Java编程风格规范的完整定义。当且仅当一个Java源文件符合此文档中的规则， 我们才认为它符合Google的Java编程风格。
与其它的编程风格指南一样，这里所讨论的不仅仅是编码格式美不美观的问题， 同时也讨论一些约定及编码标准。然而，这份文档主要侧重于我们所普遍遵循的规则， 对于那些不是明确强制要求的，我们尽量避免提供意见。
1.1 术语说明
在本文档中，]]></description><category></category></item><item><title><![CDATA[大型网站系统架构的演化]]></title><link>https://blog.youkuaiyun.com/wwj_ff/article/details/50553244</link><guid>https://blog.youkuaiyun.com/wwj_ff/article/details/50553244</guid><author>wwj_ff</author><pubDate>Thu, 21 Jan 2016 10:13:31 +0800</pubDate><description><![CDATA[前言

    一个成熟的大型网站（如淘宝、京东等）的系统架构并不是开始设计就具备完整的高性能、高可用、安全等特性，它总是随着用户量的增加，业务功能的扩展逐渐演变完善的，在这个过程中，开发模式、技术架构、设计思想也发生了很大的变化，就连技术人员也从几个人发展到一个部门甚至一条产品线。所以成熟的系统架构是随业务扩展而完善出来的，并不是一蹴而就；不同业务特征的系统，会有各自的侧重点，例如淘宝，要解]]></description><category></category></item><item><title><![CDATA[mysql乐观锁的使用]]></title><link>https://blog.youkuaiyun.com/wwj_ff/article/details/50354106</link><guid>https://blog.youkuaiyun.com/wwj_ff/article/details/50354106</guid><author>wwj_ff</author><pubDate>Fri, 18 Dec 2015 20:36:25 +0800</pubDate><description><![CDATA[乐观锁介绍：
乐观锁（ Optimistic Locking ） 相对悲观锁而言，乐观锁假设认为数据一般情况下不会造成冲突，所以在数据进行提交更新的时候，才会正式对数据的冲突与否进行检测，如果发现冲突了，则让返回用户错误的信息，让用户决定如何去做。那么我们如何实现乐观锁呢，一般来说有以下2种方式：
1.使用数据版本（Version）记录机制实现，这是乐观锁最常用的一种实现方式。何谓数据版本？即]]></description><category></category></item><item><title><![CDATA[实习（-）：服务器环境配置]]></title><link>https://blog.youkuaiyun.com/wwj_ff/article/details/50125795</link><guid>https://blog.youkuaiyun.com/wwj_ff/article/details/50125795</guid><author>wwj_ff</author><pubDate>Tue, 01 Dec 2015 10:09:12 +0800</pubDate><description><![CDATA[1、创建LV ：
lvcreate -L 70G -n uatweb centos

2、创建虚拟机：
virt-install -n uatweb -r 2048 --vcpus=2 --os-type=linux --accelerate -c /home/ISO/CentOS-7-x86_64-DVD-1503-01.iso --disk=/dev/centos/uatweb,bus]]></description><category></category></item><item><title><![CDATA[设计模式的六大原则]]></title><link>https://blog.youkuaiyun.com/wwj_ff/article/details/50018543</link><guid>https://blog.youkuaiyun.com/wwj_ff/article/details/50018543</guid><author>wwj_ff</author><pubDate>Tue, 24 Nov 2015 21:06:11 +0800</pubDate><description><![CDATA[单一职责原则（Single Responsibility Principle）
定义：不要存在多于一个导致类变更的原因。通俗的说，即一个类只负责一项职责。
问题由来：类T负责两个不同的职责：职责P1，职责P2。当由于职责P1需求发生改变而需要修改类T时，有可能会导致原本运行正常的职责P2功能发生故障。
解决方案：遵循单一职责原则。分别建立两个类T1、T2，使T1完成职责P1功能，T2完成职责]]></description><category></category></item><item><title><![CDATA[几个设计模式的例子]]></title><link>https://blog.youkuaiyun.com/wwj_ff/article/details/50018409</link><guid>https://blog.youkuaiyun.com/wwj_ff/article/details/50018409</guid><author>wwj_ff</author><pubDate>Tue, 24 Nov 2015 21:01:10 +0800</pubDate><description><![CDATA[观察者模式 Observer
　　观察者模式定义了一种一对多的依赖关系，让多个观察者对象同时监听某一个主题对象。
　　这个主题对象在状态上发生变化时，会通知所有观察者对象，让它们能够自动更新自己。
 
观察者模式的组成
　　抽象主题角色：把所有对观察者对象的引用保存在一个集合中，每个抽象主题角色都可以有任意数量的观察者。抽象主题提供一个接口，可以增加和删除观察者角色。一般用一个抽象类和接]]></description><category></category></item><item><title><![CDATA[基于Qt Graphics View Framework的画图软件的实现思路]]></title><link>https://blog.youkuaiyun.com/wwj_ff/article/details/50014123</link><guid>https://blog.youkuaiyun.com/wwj_ff/article/details/50014123</guid><author>wwj_ff</author><pubDate>Tue, 24 Nov 2015 15:56:00 +0800</pubDate><description><![CDATA[最近使用Qt开发了一个绘图软件，实现了拖动和放缩的功能。这里大体描述一下思路：
1、自定义类继承图形项：

    class MyItem : public QGraphicsItem

重写以下方法

    QRectF boundingRect()const;
    void paint(QPainter *painter, const QStyleOptionGraphi]]></description><category></category></item><item><title><![CDATA[大整数加减]]></title><link>https://blog.youkuaiyun.com/wwj_ff/article/details/49561091</link><guid>https://blog.youkuaiyun.com/wwj_ff/article/details/49561091</guid><author>wwj_ff</author><pubDate>Sun, 01 Nov 2015 20:02:34 +0800</pubDate><description><![CDATA[#include
#include
/* 一个数组元素表示4 个十进制位，即数组是万进制的*/
#define BIGINT_RADIX 10000
#define RADIX_LEN 4
#define MAX_LEN (200/RADIX_LEN+1) /* 整数的最大位数*/
char a[MAX_LEN * RADIX_LEN], b[MAX_LEN * RADIX_LEN];
int x]]></description><category></category></item><item><title><![CDATA[大整数取模]]></title><link>https://blog.youkuaiyun.com/wwj_ff/article/details/49560995</link><guid>https://blog.youkuaiyun.com/wwj_ff/article/details/49560995</guid><author>wwj_ff</author><pubDate>Sun, 01 Nov 2015 19:55:35 +0800</pubDate><description><![CDATA[#include
#include
/* 一个数组元素表示4 个十进制位，即数组是万进制的*/
#define BIGINT_MOD 10000
#define MOD_LEN 4
#define MAX_LEN (1000/MOD_LEN+1) /* 整数的最大位数*/
char a[MAX_LEN * MOD_LEN];
int x[MAX_LEN], y;
/**
* @brief 将输入的]]></description><category></category></item><item><title><![CDATA[大数的阶乘]]></title><link>https://blog.youkuaiyun.com/wwj_ff/article/details/49560883</link><guid>https://blog.youkuaiyun.com/wwj_ff/article/details/49560883</guid><author>wwj_ff</author><pubDate>Sun, 01 Nov 2015 19:45:43 +0800</pubDate><description><![CDATA[#include
#include
/* 一个数组元素表示4 个十进制位，即数组是万进制的*/
#define BIGINT_RADIX 10000
#define RADIX_LEN 4
/* 10000! 有35660 位*/
#define MAX_LEN (35660/RADIX_LEN+1) /* 整数的最大位数*/
int x[MAX_LEN + 1];
/**
* @brief 打印]]></description><category></category></item><item><title><![CDATA[大整数的乘法]]></title><link>https://blog.youkuaiyun.com/wwj_ff/article/details/49560807</link><guid>https://blog.youkuaiyun.com/wwj_ff/article/details/49560807</guid><author>wwj_ff</author><pubDate>Sun, 01 Nov 2015 19:38:14 +0800</pubDate><description><![CDATA[#include
#include

/* 一个数组元素表示4 个十进制位，即数组是万进制的*/
#define BIGINT_RADIX 10000 //超过1万进1，类比10进制，一位就是一个数字，超过10进1
#define RADIX_LEN 4 //每个元素表示4位
#define MAX_LEN (200/RADIX_LEN+1) /* 整数的最大位数，之所以要加1，是因为当遇到不能整]]></description><category></category></item><item><title><![CDATA[高性能分布式计算与存储系统设计概要]]></title><link>https://blog.youkuaiyun.com/wwj_ff/article/details/49494485</link><guid>https://blog.youkuaiyun.com/wwj_ff/article/details/49494485</guid><author>wwj_ff</author><pubDate>Thu, 29 Oct 2015 17:32:59 +0800</pubDate><description><![CDATA[原文地址：http://www.cnblogs.com/ccdev/archive/2012/12/28/2836599.html


这个系统看名字十分牛比，所涉足的目前互联网最领先的技术领域。具体有什么用途？ 在我之前供职的公司，它主要是作为中间层，给网站页面提供缓存服务的，并且，它对付的难题，是大数据、海量数据，相信，每一个日PV超过千万级的网站，都必须会有类似的系统存在，如果，你曾经]]></description><category></category></item><item><title><![CDATA[高并发服务端分布式系统设计概要]]></title><link>https://blog.youkuaiyun.com/wwj_ff/article/details/49492293</link><guid>https://blog.youkuaiyun.com/wwj_ff/article/details/49492293</guid><author>wwj_ff</author><pubDate>Thu, 29 Oct 2015 15:36:12 +0800</pubDate><description><![CDATA[======张峻崇 原创。转载请注明出处。======
        又是快一年没写博客了，2013年也只剩尾巴，也不知道今年都忙了些什么。写这篇文章的目的，主要是把今年以来学习的一些东西积淀下来，同时作为之前文章《高性能分布式计算与存储系统设计概要》的补充与提升，然而本人水平非常有限，回头看之前写的文章也有许多不足，甚至是错误，希望同学们看到了错误多多见谅，更欢迎与我讨论并指正。
    ]]></description><category></category></item><item><title><![CDATA[好想哭]]></title><link>https://blog.youkuaiyun.com/wwj_ff/article/details/49207581</link><guid>https://blog.youkuaiyun.com/wwj_ff/article/details/49207581</guid><author>wwj_ff</author><pubDate>Sat, 17 Oct 2015 21:11:14 +0800</pubDate><description><![CDATA[如题]]></description><category></category></item><item><title><![CDATA[windows下搭建python cgi编程环境]]></title><link>https://blog.youkuaiyun.com/wwj_ff/article/details/48630289</link><guid>https://blog.youkuaiyun.com/wwj_ff/article/details/48630289</guid><author>wwj_ff</author><pubDate>Mon, 21 Sep 2015 18:40:25 +0800</pubDate><description><![CDATA[顺便把实习做的项目从unix系统转到windows下面来了。
安装python，搭建机器学习开发环境前面的博客提过了，不写了。
1、下载并安装apache：httpd-2.2.31-x64.zip，可以参见http://jingyan.baidu.com/article/29697b912f6539ab20de3cf8.html
2、配置apache参数：修改配置文件 conf/httpd.]]></description><category></category></item><item><title><![CDATA[在web page中嵌入ace editor]]></title><link>https://blog.youkuaiyun.com/wwj_ff/article/details/48518617</link><guid>https://blog.youkuaiyun.com/wwj_ff/article/details/48518617</guid><author>wwj_ff</author><pubDate>Thu, 17 Sep 2015 11:35:02 +0800</pubDate><description><![CDATA[1、在github上获取资源：
 git clone 
https://github.com/ajaxorg/ace-builds.git
﻿﻿
2、导入js插件：
 
 
 
3、定义div，关联editor：
 
4、定义editor，自动补全：]]></description><category></category></item><item><title><![CDATA[有一种感觉叫绝望]]></title><link>https://blog.youkuaiyun.com/wwj_ff/article/details/48420897</link><guid>https://blog.youkuaiyun.com/wwj_ff/article/details/48420897</guid><author>wwj_ff</author><pubDate>Sun, 13 Sep 2015 21:34:10 +0800</pubDate><description><![CDATA[感觉心好累，人生就是这样奇妙，每当你感觉有希望的时候，他总是能让你失望。
当你跌入谷底，只想沉沦，突然有那么一天，又给你希望了，然而希望仅仅是希望，不是现实。
生活总能叫你明白，不属于你的，别强求，即使再努力，没用，真的是没用，让人绝望，让人窒息。
我想逃跑，逃离生活，然而又有牵挂，有无奈。
好烦！我就是这么一个纠结的人，纠结于过去，纠结于求不得。累，累，累！有时候还不如做一个孤儿呢，
]]></description><category></category></item><item><title><![CDATA[又绕了一个弯]]></title><link>https://blog.youkuaiyun.com/wwj_ff/article/details/48375451</link><guid>https://blog.youkuaiyun.com/wwj_ff/article/details/48375451</guid><author>wwj_ff</author><pubDate>Fri, 11 Sep 2015 17:33:08 +0800</pubDate><description><![CDATA[之前用的ace editor居然是YUI里面的模块，不是原生的ace editor，
尼玛，发现那么难用，代码自动补全，只有api，没有demo，而且api解释太少，找了半天，无从下手。
真是坑，我还想怎么支持TCL脚本语言呢，ace是自动支持的，也是醉了，YUI下面的ace有
一个mode属性支持语言的，我进去看了一下，居然没有解释支持哪些，哎，真是绕了一圈，
发现google的时候也要]]></description><category></category></item><item><title><![CDATA[实习都变成做前端的了]]></title><link>https://blog.youkuaiyun.com/wwj_ff/article/details/48340059</link><guid>https://blog.youkuaiyun.com/wwj_ff/article/details/48340059</guid><author>wwj_ff</author><pubDate>Thu, 10 Sep 2015 10:51:01 +0800</pubDate><description><![CDATA[后端就是python的机器学习开发，用的scikit-learn，现在大部分时间都放在前端页面了，
又没有设计师，完全是自己瞎琢磨，品味也不行啊，审美也有问题，体验也还是不太好，
一个月来，几乎把前端都在线学了一遍，js，jQuery,BootStrap,AngularJS,还有使用各种插件，
DataTable，HighCharts,Ace Editor,Spin,GoJS，遇到各种傻逼问]]></description><category></category></item><item><title><![CDATA[用GDB调试程序（一）]]></title><link>https://blog.youkuaiyun.com/wwj_ff/article/details/48174671</link><guid>https://blog.youkuaiyun.com/wwj_ff/article/details/48174671</guid><author>wwj_ff</author><pubDate>Wed, 02 Sep 2015 10:13:45 +0800</pubDate><description><![CDATA[﻿﻿
用GDB调试程序
GDB概述
————
GDB是GNU开源组织发布的一个强大的UNIX下的程序调试工具。或许，各位比较喜欢那种图形界面方式的，像VC、BCB等IDE的调试，但如果你是在UNIX平台下做软件，你会发现GDB这个调试工具有比VC、BCB的图形化调试器更强大的功能。所谓“寸有所长，尺有所短”就是这个道理。
一般来说，GDB主要帮忙你完成下面四个方面的功能：
    1、]]></description><category></category></item></channel></rss>