- 浏览: 30311 次
- 性别:
- 来自: 温州
最新评论
-
helloqidi:
谢谢博主分享
在ubuntu上安装全文搜索中文分词Coreseek/sphinx 及和Rails集成 -
jim.jin:
谢谢提醒。
设计模式与动态语言 之 Observer -
open2ye:
有错别字 有错别字
设计模式与动态语言 之 Observer
文章列表
# ! /usr/bin/sh
# Ubuntu系统下安装ruby/rails必要的库和编译环境
sudo apt-get update
sudo apt-get install -y build-essential openssl curl libcurl3-dev libreadline6 libreadline6-dev git-core zlib1g zlib1g-dev libssl-dev libyaml-dev libxml2-dev libxslt-dev autoconf automake libtool imagemagick libmagic ...
一、安装JDK
1.下载JDK
地址: http://download.oracle.com/otn-pub/java/jdk/7u2-b13/jdk-7u2-windows-i586.exe
或者打开下列地址找到最新版 http://www.oracle.com/technetwork/java/javase/downloads/index.html
2.下载后打开文件安装(这里就不介绍了)
3.安装完后,运行CMD,输入“java”验证是否安装成功
如出下面的界面说明安装成功了
二、安装Eclipse
1.下载Eclipse
地址:http://download.actuat ...
Sphinx(狮身人面像) 想必大家都比较了解,就不作介绍了,不了解的童鞋可以自己Google。
原生Sphinx不支持中文,
所以这里重点介绍支持中文分词的 Coreseek。
注意:Coreseek 3.2 后,只有安装 Coreseek 就可以了,它对LibMMSeg和sphinx做了整合,不用再安装原生Sphinx。(3.2前是要安装原生Sphinx,还要装补丁,非常繁琐)
安装coreseek
下面以coreseek-3.2.14为例,它基于Sphinx 0.99(不用安装Sphinx 0.99)
详细官方手册:http://www.coreseek.cn/products- ...
1、首先,选择设备->安装增强功能
2、然后安装以下的包:
sudo aptitude install build-essential linux-headers-$(uname -r) -y
3、挂载cd-rom。
sudo mount /dev/cdrom /mnt/
4、安装增强包
sudo /mnt/VBoxLinuxAdditions.run
5、卸载cdrom
sudo umount /mnt/
6、共享windows中的文件,我在virtualbox中设置的共享空间叫vboxshare,于是在ubuntu中输入如下命令
mkdir ~/wins ...
tags: 磁盘映射 数据空间 分配数据空间 virtualBox ubuntu mount
1. 为virtualBox安装增强功能在virtualBox ubuntu 虚拟机分配数据空间(这个就不用说了吧)
2. 为virtualBox分配数据空间,取名 agideo(这个也不用说了吧)
3. 在ubuntu 里挂载虚拟空间。
mkdir /home/jimjin/win7-agideo
sudo mount -t vboxsf agideo /home/jimjin/win7-agideo
这样 ls /home/jimjin/win7-agideo 就可以访问母机的数据了。
1.安装zhcon
sudo apt-get install zhcon
2.添加用户 welcome (可以不用设置密码,因为将设置开机自动登录)
sudo useradd welcome -m -s /bin/bash
设置开机自动以welcome登录
sudo vi /usr/bin/auto_login_welcome
加入内容并保存
#!/bin/bash
/bin/login -f welcome
加执行权限
sudo chmod +x /usr/bin/auto_login_welcome
把/etc/init/tty1.conf中下面这一行(注意目 ...
建造者模式是一种比较常用的简单的对象创建型设计模式。
它在软件系统中,主要用于面临着“一个复杂对象”的创建工作,其通常由各个部分的子对象用一定的算法构成;由于需求的变化,这个复杂对象的各个部分经常面临着剧烈的变化,但是将它们组合在一起的算法确相对稳定。
意图:将一个复杂的构建与其表示相分离,使得同样的构建过程可以创建不同的表示。
结构:
适用性:
需要生成的产品对象有复杂的内部结构。
需要生成的产品对象的属性相互依赖,建造者模式可以强迫生成顺序。
在对象创建过程中会使用到系统中的一些其它对象,这些对象在产品对象的创建过程中不易得到。
动态性:
此模式在动态性方面没有特别的动态 ...
抽象工厂模式是一种在动态语言中不太常用的创建型设计模式,它的别名是kit
概述:在软件系统中,经常面临着“一系列相互依赖的对象”的创建工作;同时由于需求的变化,往往存在着更多系列对象的创建工作。如何应对这种 ...
组合模式是一种对象结构型的使用率比较高的设计模式,它的别名有部分-整体模式,合成模式.
意图:将对象组合成树形结构以表示“部分-整体”的层次结构。Composite模式使得用户对单个对象和组合对象的使用具有一致性。
动机:
这些类的代码必须区别对待图元对象与容器对象,而用户认为它们是一样的。对这些类的区别使用,使用程序变得复杂。
组合模式描述了如何使用递归组合,使用户不必对这些类进行区别。
适用性:
想表示对象的部分-整体层次结构
希望用户忽略组合对象与单个对象的不同, 用户将统一地使用组合结构中的所有对象
结构:
效果:
定义了包含简单对象和组合对象的类层次结构。 ...
命令模式是对象行为型使用率比较高的设计模式,别名:Action(动作),Transaction(事务)
意图: 将一个请求封装为一个对象,从而使你可对不同的请求进行参数化;对请求排队或记录请求日志,以及支持可取消的操作
这里所谓的“ ...
观察者模式也是属于对象行为型模式,它的别名有:依赖(Dependents)、发布-订阅(Publish-Subscribe;在实际开发中,使用非常频繁。
意图:定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都 ...
- 2009-11-26 12:57
- 浏览 876
- 评论(2)
状态模式的别名是状态对象(Objects for States),它属于对象行为型模式,在开发中使用频率一般。
意图:允许一个对象在其内部状态改变时改变它的行为。这个对象看起来似乎修改了它的类。
动机:
状态模式主要解决的是当控制一个对象状态转换的条件表达式过于复杂时的情况。
把状态的判断逻辑转移到表示不同状态的一系列类当中,可以把复杂的判断逻辑简化。
当一个对象的行为取决于它的状态,并且它必须在运行时刻根据状态改变它的行为时,就可以考虑使用状态模式了。
它所解决的问题:
晦涩(Opacity): 难以阅读,无法了解意图
固执(Immobilicy): 难以分解,程 ...
cd /tmp
mkdir test_rm_spec
cd test_rm_spec
# 建立测试文件
touch -t 07102300 f1.txt
touch -t 07092300 f2.txt
touch f3.txt
mkdir fold1
# 查看文件
ls -l --time-style=long-iso
# 删除四天前的文件
find . -type f -mtime +4 -exe rm {} \;
# 查看文件
ls -l --time-style=long-iso
# 删除四天内的文件
find . -type f -mtime -4 -exe rm {} \; ...
策略模式还有个别名叫政策模式(Policy),属对象行为型模式。
意图:定义一系列算法,把它们一个个封闭起来,并且使它们可相互替换。本模式使得算法可独立于使用它的客户而变化
动机:把算法硬编写在使用他们的类中是不 ...
安装 super_exception_notifier
gem 方式1:
sudo gem sources -a http://gemcutter.org
gem install super_exception_notifier
gem 方式2:
mkdir -p ~/src
cd ~/src
git clone git://github.com/pboling/exception_notification.git
cd exception_notification
gem build exception_notifi ...