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