何旭东chucai的专栏

Web开发实录:Ruby, Rails, Java, Coffeescript , Sass, Html, JQuery

排序:
默认
按更新时间
按访问量

图算法之如何反转一颗二叉树

一个题目难倒一个英雄好汉。这个题目曾让Homebrew的作者失去了一次进入Google工作的机会。在这里,我们不讨论是非,只聊技术!我个人认为,算法和数据结构还是要懂一点的。因为算法和数据结构不仅能解决我们在写程序的时候遇到的性能问题,而且还能扩展我们解决问题的方法。 问题的简单描述:反转...

2016-05-13 17:34:48

阅读数:2396

评论数:0

Web UI组件化最佳实践的思考

Rails UI组件化最佳实践的思考前端组件化的几种思路 重客户端的SPA模式,将大量的逻辑和数据处理放在客户端,服务器端提供JSON数据 服务器端处理业务逻辑,客户端只负责两个事情:显示和发送数据到服务器端,服务器来调度UI的显示 混合模式,混合使用以上两种方案,交叉使用rjs + html +...

2016-05-13 16:00:05

阅读数:1505

评论数:0

Rails ActiveRecord的default_scope的坑

Rails ActiveRecord的default_scope的坑其实,我是特别反对使用default_scope的。它很强大,同时也非常的难于驾驭。它的优点在于我们只需要在Model层增加一行代码,就能解决整个项目中的如何一个地方数据的获取。举个例子,我们有一个项目的Model,前期比较简单,...

2016-05-11 15:55:47

阅读数:1884

评论数:0

使用docker-compose搭建可以扩展的Web Application

使用docker-compose搭建可以扩展的Web Application使用docker-compose搭建可以扩展的Web Application 构建 web application 构建一个简单的base image 写app 新建startsh 文件 新建构建文件 Dockerfile...

2016-05-10 14:39:33

阅读数:2396

评论数:0

使用深度搜索分析心理调查问卷的研究

使用深度搜索分析心理调查问卷的研究背景昨天我女朋友发了一个心理调查问卷要我做。我向来对这种形似心理调查问卷嗤之以鼻: 一个人的性格怎么可能由几个简单的问题决定。但作为技术人员,我决定用技术的手段分析这份调查问卷,向女朋友证明其缺乏科学性。调查问卷的原版如下图 有兴趣的朋友可以玩玩~我想了解如下几...

2016-05-07 22:33:01

阅读数:1649

评论数:0

[数据结构和算法]状态树的问题

问题给定一个正整数 n, 求输出符合期望的所有的 左右括号的组合。要求,左括号不小于右括号。当 n = 3 的时候,输出值为:["((()))", "(()())", "(())()", "()(())", &quo...

2016-03-10 11:29:13

阅读数:1453

评论数:0

[数据结构和算法]九宫格算法

描述典型的九宫格命题: 1 到 9 , 一共10个数, 放在一个 3x3 的表格中,要求表格中的: 同行, 同列 并且 对角线 的所有数字相加 等于 15. 问题分析这个是一个典型的题目,因为数据量比较少,所以完全可以用穷举法实现。 本文使用Ruby实现了九宫格的算法。

2016-03-09 23:59:10

阅读数:1715

评论数:0

如何有效的区分小公司和创业公司(一):小公司的特点

为什么要写这篇文章现在有很多的“小公司”假扮成“创业公司”。 因为大家一直有一种错误的认知“创业公司就是小公司”,所以,很容易被这样的伪装公司欺骗。等到了这样的小公司以后才发现,这TM哪是创业公司啊,分明就是小公司。本文的主要目的是跟大家分享一些我对于小公司和创业公司的一些看法。希望看到这篇文章...

2016-01-27 11:36:43

阅读数:2526

评论数:12

Ruby多线程编程

前言 多线程编程一直是Ruby开发中的软肋。从事Web开发的朋友一般很少关注Ruby多线程方面的知识。但不可否认,很多非常优秀的Gem还是用了很多多线程方面的知识的。多线程也的确能提高程序的性能。比如 sidekiq, thin 通过使用多线程,提高了程序的性能。 对下面的主题比较感兴...

2015-11-11 20:33:51

阅读数:1329

评论数:0

Topic 1: hello world for react-native

https://github.com/chucai/HelloWorld

2015-04-07 10:28:11

阅读数:1323

评论数:0

如何利用工具写出优秀的Ruby代码?

介绍使用几种工具,改善我们的代码。

2014-12-03 14:20:37

阅读数:1780

评论数:0

Ruby的Unix编程

暂定内容 如何生成进程进程之间的通信如何向进程发消息应用

2014-12-03 13:32:10

阅读数:1409

评论数:0

技术阅读记录(一)

Ruby Create a Neo4j Graph Database Using the REST API A CRM with Neo4j and REST neo4j 是用Java实现的图形化的数据库,跟关系型数据库不同的是,Graph database更注重于关系查询。比如查询朋友的朋...

2014-07-28 17:57:22

阅读数:1877

评论数:0

web开发的最佳组合的思考和实践

前言 如何快速开发出一个 漂亮,稳定,可扩展, 可移植,可替换的现代的web 网站? 关键点是: 界面要漂亮(UI),系统要稳定(良好的测试), 可扩展和移植(组件之间依赖最少), 速度快(可以使用缓存) 我的思路是 前后端的完全分离,别用后端语言 写前段 view 基本的技术栈是: ...

2014-07-03 18:46:39

阅读数:1768

评论数:0

源代码快速定位工具-qwandry

qwandry 是一个快速打开我们指定文件夹的工具,比如快速打开rails, activerecord等目录。 https://github.com/adamsanderson/qwandry 安装 gem install qwandry 使用 qw matrix # ope...

2014-07-03 14:51:35

阅读数:1965

评论数:1

EventMachine 系列之简单的服务器

EventMachine 本文主要是 EventMachine如何建一个简单的Echo服务器post_init, unbind, receive_date 方法 EchoServer 如下代码,是建立一个简单的EchoServer #!/usr/bin/env rub...

2014-05-19 22:17:30

阅读数:1816

评论数:0

智能化的命令行工具-betty

本文首先发布在 CSDN的文章编辑器实在太烂了,建议大家用Cmd Markdown。它不但支持markdown,还支持VIM模式。 智能化的命令行工具-betty betty tool command ruby betty 是一个用Ruby实现的非常...

2014-05-11 11:38:51

阅读数:1988

评论数:0

TracePoint浅析

TracePoint是一款跟踪Ruby代码的工具,可以细粒度的监控Ruby程序,但是只支持2.0. 基础知识 一个简单的例子 非tracepoint的例子 tracer = lambda do |event, file, line, id, binding, klass|    to_displa...

2014-01-21 16:39:17

阅读数:2615

评论数:0

Ruby Tips

rand Desc: 如何在自动生成一个简单的Range范围的随机数 Code: rand(10) + 10 rand(10...20) Random.new.rand(10...20) awesoome_print Desc: 能格式化JSON,HASH的输出 Code: ge...

2013-12-09 10:07:47

阅读数:1509

评论数:0

Ruby相关的比较cool的工具和代码收集

文本解析Gem: parslet 简单的Ruby Lib,用于构建私人的解析器 实例代码 require 'parslet' include Parslet # Constructs a parser using a Parser Expression Grammar parser...

2013-12-06 13:31:43

阅读数:1883

评论数:0

几个好玩的小工具

tree 命令 tree 命令挺有用的,能看到一个文件夹下的所有文件的目录, 在mac下,可以使用 brew 安装 brew install tree; tree some_folder; bower 强大的前端插件管理系统,使我们安装插件非常的快。 install命令 brew insta...

2013-12-02 10:16:12

阅读数:1470

评论数:0

Rspec 如何组织测试用例?

Rails项目中,如何有效的组织测试用例? 个人的一些经验总结在此。 1. 可读性和可维护性是最重要的。 2. 层级和逻辑一定要清楚。 3. context 和 describe 描述一定要清晰.

2013-11-04 14:44:49

阅读数:1888

评论数:2

Javascript调试的小窍门: 如何获取元素上的事件绑定函数?

项目膨胀以后,调试变得非常困难。尤其是javascript。 Javascript 的事件绑定可以发生在代码的任何地方,当项目中的JS代码超过10万行后,想从代码中找到元素的事件绑定,非常的困难。 灵活带来的维护的困难。 JQuery的data("events")方法给我...

2013-07-15 17:16:09

阅读数:1809

评论数:0

Ruby中的类变量于类实例变量的区别

在工作中遇到了一个比较诡异的问题,在dev模式下,A类中的类变量a 等于nil,但是在production环境下, 类变量a 是true. 这个问题是因为 类变量的诡异造成的。 Ruby中的类变量是会在 继承树 中共享的。 在我的实例中, A 的父类 是B , B 的子类是 C 。 我在C...

2013-07-02 18:59:12

阅读数:1571

评论数:0

linux 误修改 /etc/sudoers 的恢复办法

联想的自带linux的 thinkpad e430c, 误修改 sudoers 文件后,无法使用sudo命令 ,并且不知道 root 用户的密码?该如何恢复? #linux 误修改 /etc/sudoers 的恢复办法 * 启动电脑,按住 shift, 进入引导选项 * 可以看到引导...

2013-06-08 10:36:57

阅读数:1612

评论数:0

Vim的插件推荐

不管如何,vim真的很强大。虽然现在在mac上一直用 sublime text。 但是有点时候还是需要vim: 方便,简单。 管理vim的工具 https://github.com/gmarik/vundle vim运行ruby命令 https://github.com/tpope...

2013-04-19 10:39:45

阅读数:1467

评论数:0

网站推荐: 以树状结构查看Gem的依赖关系 和 管理i18n文件的网站

GemLou.pe: View The Dependency Tree for Any Ruby Gem Using the provided bookmarklet, you can go to a gem's page on rubygems.org and then see an ...

2013-04-19 10:19:51

阅读数:1317

评论数:0

RubyMotion 初玩

公司买了RubyMotion,今天试玩了一下。安装过程记录在下。 Xcode的安装就多说了。 具体的安装流程可以参考: http://www.rubymotion.com/developer-center/guides/getting-started/#_prerequisites ...

2013-02-19 13:07:45

阅读数:1791

评论数:1

Sublime text2 的几个小技巧和资料汇总

Sublime text2是一个编辑神器,这是毋容置疑的。从vim转到sublime text2后,我感觉更为轻松了。当然,我也喜欢vim。所以,我喜欢把我的sublime text2设置成vim模式。 这样,就可以结合vim和sublime text2的优点了。本文,我做一些简单的总结,希望对大...

2012-11-20 13:32:12

阅读数:7252

评论数:1

Rails代码质量控制工具

持续集成工具 Huson 代码检查工具 metric_fu http://metric-fu.rubyforge.org/ http://railscasts.com/episodes/166-metric-fu

2012-11-20 10:22:32

阅读数:1192

评论数:0

Rails的script如何引入Rails的环境?

常常需要开发一些script,需要引用Rails的model ENV['RAILS_ENV'] ||= 'production' require File.dirname(__FILE__) + "/../config/environment" 还有一些需要直接...

2012-11-12 17:30:58

阅读数:705

评论数:0

如何保证软件的质量?

足够的测试和持续的集成

2012-11-09 09:31:19

阅读数:609

评论数:0

Ubuntu 安装软件的过程中,出现版本冲突的解决办法

常使用ubuntu的源 deb http://mirrors.163.com/ubuntu/ oneiric main universe restricted multiverse deb-src http://mirrors.163.com/ubuntu/ oneiric main univ...

2012-11-03 13:44:27

阅读数:1238

评论数:0

Mac10.8的Rails环境搭建

第一次使用Mac Book,记录于此。 1, 需要按照xcode xcode 4.2以上的需要安装 command line xxx 打开 xcode -> open develop tools -> more xxxx 2, 将 /Applications/Xcode.a...

2012-11-02 13:53:29

阅读数:792

评论数:0

limiter Gem使用记录一

对 csdn 提供的 limiter gem 比较感兴趣,想研究一下。可惜它的文档不是很全,说的也不够的详尽,所以,只能自己摸索了。 limiter gem 的作用: Rack middleware for rate-limiting incoming HTTP requests with...

2012-10-16 10:32:25

阅读数:871

评论数:0

如何发布自己的Gem?

首先,需要注册! http://rubygems.org/sign_up 其次,生成gem文件 gem build xmpp_server.gemspec 发布gem gem push xmpp_server-0.0.1.gem 如下是我的gem https://rubyge...

2012-09-27 17:54:56

阅读数:1111

评论数:0

如何将Gem中的rake任务导入Rails Project中

Rails3中,可以使用Railtie的方式,将rake 任务 放到 Rails 项目中 lib/your_gem/railtie.rb require 'your_gem' require 'rails' module YourGem class Railtie < Rails...

2012-09-27 17:23:28

阅读数:989

评论数:0

Ruby简单的生产者,消费者模式的实现

require 'thread' q = Queue.new producter = Thread.new { 10.times { |i| q.push i sleep 1 } q.push nil } consumer = Thread.new { lo...

2012-09-26 16:30:07

阅读数:609

评论数:0

xmpp server: 负责发送数据到xmpp 服务器的中转站

自己写的一个简单的xmpp服务的中转站 require 'drb/drb' require 'xmpp4r/client' include Jabber URI = "druby://localhost:8787" QUEUE = Queue.new ip_...

2012-09-26 16:25:32

阅读数:1064

评论数:0

强大的 ActiveSupport::Notifications

ActiveSupport::Notifications   是Rails3提供的 Rails系统的事件提醒通知机制, 非常强大。 我们可以非常容易的捕捉到 系统运行的各个状态时的参数,时间等。 一个简单的可以查看其功能的例子 新建/config/initializers/notifi...

2012-09-26 14:43:22

阅读数:1018

评论数:0

Rspec笔记

当我们有这样的需求:一个或者更多的类 拥有同样的行为, 那么可以使用Rspec的 可分享的实例组(a shared example group). 关键词是 shared_examples_for 和  it_should_behave_like shared_examples_for &qu...

2012-09-25 20:34:46

阅读数:820

评论数:0

我写的一个快速生成JSON接口的工具

项目地址: https://github.com/chucai/rest_prev 用于手机客户端程序的接口开发,能有效分离手机客户端与服务器开发的耦合问题。

2012-09-13 11:21:25

阅读数:1262

评论数:0

Rails项目中,快速增加bootstrap的流程

我使用的场景是 Rails 3.2.6 1, 增加Gem # Bootstrap gem 'anjlab-bootstrap-rails', '>= 2.1', :require => 'bootstrap-rails' gem 'bootstrap-will_pa...

2012-09-07 21:20:15

阅读数:2051

评论数:0

项目开发中,快速增加 Rspec的支持, 快速增加 spork 和 guard 的支持

Rspec非常的强大,一旦用上,在也舍不得换了。 不过每次集成Rspec都比较麻烦,因为相关的Gem比较多,而且需要修改一些配置文件。本文记录下我集成Rspec集成过程。  增加Gem group :development, :test do gem 'database...

2012-09-07 20:29:30

阅读数:953

评论数:0

qt-faststart的安装

1, 需要先安装checkinstall wget http://asic-linux.com.mx/~izto/checkinstall/files/source/checkinstall-1.6.2.tar.gz tar zxf checkinstall-xxx make make i...

2012-09-04 20:09:11

阅读数:4610

评论数:0

如何自由的切换和定义views的目录?

在项目开发的过程中,我们会遇到这种情况: 部署服务器上,我们需要welcome/index 对应默认的 views/welcome/index.html.erb页面。 但是在开发的过程中,我们有新的页面。如何在不修改默认的 welcome/index.html.erb页面的情况下,能让welco...

2012-09-04 11:50:26

阅读数:769

评论数:0

Rails3做Json接口需要注意的问题

使用Rails开发 Json接口,很简单,也会遇到一些问题。 我开发的很多项目,大部分都是基于 devise . 不讨论一些 基于grape的情况 JSON接口 的认证使用 token   参考文章: http://blog.csdn.net/hexudong08/article/...

2012-08-31 17:03:42

阅读数:608

评论数:0

客户端如何模拟delete方法,请求数据?

在Rest接口定义中,删除数据都是使用delete方法请求,但大部分浏览器并不支持该方法请求,该如何做? Rails使用的方法使用Post模拟delete方法 delete 方法其实是post 方法,不过在传递参数的时候,需要增加如下的字段 _method: delete 所以,不...

2012-08-31 11:34:49

阅读数:932

评论数:0

RubyChina如何实现喜欢功能?

RubyChina有一个喜欢功能,具体的表现可以查看每一个帖子的页面 如: http://ruby-china.org/topics/5272 实现的代码解析如下: 在topics/show.html.erb页面中, 有如下代码 likeable_tag 是定义在/app/...

2012-08-31 11:16:56

阅读数:887

评论数:0

自动化部署实践capistrano

以前都是手动部署,特别麻烦,而且非常的累。现在尝试自动部署方案。 使用的自动部署方案是:capistrano 安装 gem install capistrano 在Rails项目执行 capify . 写配置文件 部署使用的配置文件是 config/deploy.rb ...

2012-08-28 16:46:02

阅读数:2000

评论数:0

提示
确定要删除当前文章?
取消 删除
关闭
关闭