- 博客(15)
- 收藏
- 关注
原创 重构(ruby版)摘要
1 代码里的坏味道 0 重复代码 1 类太大 2 参数太多 3 发散型变化 比如:“嗯,每次得到一个新数据我都要修改这三个方法。“ 4 霰弹型修改(平行继承体系) 每次对某类修改时,都要修改其他类 5 特性依赖 某个方法似乎更对另一个类(而不是本身所在的)类更感兴趣 6 数据泥团 有些数据总是同进同出 ...
2011-04-29 13:41:41 121
编程随感
1 在你觉得需要写注释的时候写注释: 首先你需要为方法,类或者模块起个简单易懂的名字 如果必须通读一个方法的代码才能了解它做什么,那么开发人员先要投入大量时间和精力才能使用它。反过来说:只需要短短几行注释说明方法行为,就可以让生活更轻松 在class或者module中上部写注释: 说明这个class或者module的用途,并试着用例子来演示使用方法(一个文件...
2011-03-23 18:03:49 147
git 随想
1 所有内容都在本地 便宜快速的本地分支 因为是本地的所以是分散的 2 git 很省空间 git 很快 3 缓冲区功能 4 github git flow 一些版本控制系统把工作目录称为工作拷贝。git新手经常会混淆git中的版本库和工作目录树。因为在subversion等传统的版本控制工具中,工作目录在本地,版本库在服务器上,而git中并非如此 ...
2011-03-23 17:55:24 153
扫雷:面向对象分析与设计(第三版)
即使冒着被板砖砸飞的风险,我也要说: Object-Oriented Analysis and Design with Applications (3rd Edition) 对于ruby程序员(也许再加上使用敏捷的团队)并不实用 让我稍微借鉴某位名人说的话来评论这本书: 书分两种,一种是写的尽量简单,并且没有明显问题,另一种是写的尽量复杂,并且没有明显问题 本书...
2011-03-18 17:39:18 2692
rails test prescription 随感
controller测试 1 看一个普通,基本的用户请求是否能引发预计的ActiveRecord正常工作,需要的数据是否传给了view 2 检测controller是否能够适当地处理不合格式的请求 3 检测权限系统是否正常工作,比如一个用户请求了登录或者特定角色才能访问的页面 view测试 1 view不报错 2 view中的数据是否是你计划生成的数据 ...
2011-02-28 13:18:15 121
原创 rails tip 1
环境 2.2.2 call_back 中的操作和相应的action 是在同一个数据库事务下的。 一个save 及类似指令将会发起一个事务,如果rails 检测到某个model 对象中的全部属性并无改变(参阅rails 中的dirty objects),那么至少在development 的环境下,save 指令将不执行,事务仍然发起,像这样: begin commit ...
2009-08-03 13:39:01 95
原创 ruby沉思录(2)
[code="ruby"]begin # raise "fine" # raise ArgumentError, "ok" # raise SignalException exit rescue => e p "cool" p e.message end p "cool" =begin begin exit rescue Exception ...
2009-07-29 12:31:54 78
原创 Answer to Best of Ruby Quiz, quiz 4 "the animal quiz"
[code="ruby"]$answers = [[["an elephent", true]]] $stack = [] def input gets.chomp end # convert_answer_to_question def c_a_t_q(key) "Is it a/an #{key}? (y or n)" end def agent_answ...
2009-07-29 11:49:40 161
原创 ruby沉思录(1)
[code="ruby"]module A def fine p "cool" end def right p "hello" fine p "ok" end end class B include A def fine p "world" end end B.new.rig...
2009-07-26 10:38:56 82
原创 Answer to Best of Ruby Quiz quiz 03 version 2
-- 差距很大,前一版本有很多冗余逻辑 [code="ruby"] #! /usr/bin/ruby require ' rexml/document ' doc = REXML::Document.new "" stack = [doc.root] ARGF.each_line do |line| next if line =~ /^\s*$/ # parse lin...
2009-07-22 12:09:01 95
原创 Answer to Best of Ruby Quiz quiz 03
Answer to "GEDCOM Parser" version 1 [code="ruby"]require "rexml/document" include REXML Global_pattern = /\S+/ Id_pattern = /\@(.*)\@/ Tag_pattern = /[A-Z]{3,4}/ doc = node = Document.new ...
2009-07-22 10:28:35 96
原创 Answer to Best of Ruby Quiz quiz 01
Best of Ruby Quiz quiz 01: Mad Libs [code="ruby"]results = {} pattern = /\(\(([^:]*?)\)\)/ =begin string = "Our favorite language is ((gem:a gemstone)). We think ((gem)) is ((gem01:a gemstone01)...
2009-07-17 16:23:45 103
原创 Create也是需要模板的
当create失败 render :action=> "new" 时,用的是create action的模板,不是使用 new action 的模板
2009-05-14 11:01:22 88
发现一个可以使用ruby提交的acm网站
https://www.spoj.pl/ 不仅能使用ruby,还可以使用python/perl/lisp等几乎你能叫得出名的编程语言进行提交 缺点: 1 每个语言的版本都低了些,ruby是1.8.5 2 题库的题少了些。对于初学者来说足够了...
2009-03-08 17:09:07 125
RubyKaigi 2008:标准化与Ruby 1.9 路线图
逆向翻译 原文地址:[url]http://www.infoq.com/cn/news/2008/07/rubykaigi[/url] This is the second part news about RubyKaigi 2008 from InfoQ, to see the first part in [url]http://www.infoq.com/news/2008/07/r...
2008-07-16 09:44:05 132
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人