@fredwu Elixir 这个编程语言怎么样,海外用的多吗
@huacnlee,发现 rubychina 最近有个问题,发帖和提交回复点击一次没反应,有些时候要点击好几次
什么样的场景要这样写,有什么好的地方?
一直在用这个,https://github.com/purcell/emacs.d ,基本上是每个 mode 对应一个配置文件,看上去比较清晰。 顺便推荐一个很不错的博客http://blog.csdn.net/redguardtoo/article/category/1282870
#2 楼 @chenillen 我用过 new relic 的试用版,感觉给出的信息太多太细了,看着很有压力,而且这个是国外的,不知道会不会被墙,网络稳定性好不好,能否分享下心得?
@blackanger 想请问下,duck type 到底说回什么事,ruby 中所有地方都是动态,是不是每个方法的调用都是 duck-type,包括参数
讲下嘛,涉及了哪些知识点
class Person
def haha(&blk)
blk.bind(self).call
end
end
Person.new.haha { p self.class }
=> Person
可以换成 unicorn 看看,在内存达到设定的的条件时,该 ruby 进程就会自杀,然后会重新启动一个新的 ruby 进程,这样解决了 ruby 内存不断上涨并且不释放内存的问题 http://ruby-china.org/topics/12033
不知到有没有被老婆培养出来的哈
坚持下来就好了,遇到问题并用自己的方式解决它,解决的问题多了,你会发现没有想象中的那么困难
class C
self.send(:include,M)
class << self
self.send(:include,M)
def bar
puts N
end
end
end
这个怎么样? C::N #1 Class::N #1 常量并不属于 C new 出来的对象
class C
puts self
class << self
puts self
def bar
puts self
end
bar #在这里调用bar,会报错,找不到bar
end
bar
end
# 输出结果
C
#<Class:C>
C
从输出结果可以看到,class << self 这里,self 的作用域已经改变了,object_id 也变了,你可以自己输出来看看,参考 Class 类,当定义一个类的时候,an object of type Class is initialized and assigned to a global constant,可调用 constants 方法查看 self 包含的 constant。
这是 ruby 核心成员写的一篇文章 http://yugui.jp/articles/846
#2 楼 @qichunren 可以在项目根目录下面的 Rakefile 中指定加载哪些文件,Rails.env 可以确定 rails 启动的是什么环境
以前没发现,居然这么好用
#22 楼 @chairy11 debugger 的使用参看这篇文章,http://hlee.iteye.com/blog/361405, 我一般用到 n,c,irb 这几个命令,接下来就可以直接使用 rails 提供的 API,request() 用来获得每次一请求的数据,params() 查看 parameters,request.methods.grep /para/ 来过滤多余的方法,还有好多方法你都可一在 debugger 中做实验,quit 命令用来退出 irb
ruby Module 中的很多方法很有用的,可以用来查询某个对象
同样的功能,每个人写出来的代码都不一样,具体表现就是他们抽象成了几个函数,这些函数之间的调用关系,要具体看懂这些函数的执行流程还是蛮累的,抓住关键点就行了,你可以在某个 controller 里面加 debugger,然后调试,接下来你就可以取到 request 中的数据,觉得关键的地方就在 debugger 中运行 irb,这样就可以边调试边在 irb 中写一些代码来处理这些数据,debugger 中可以运行 irb
找一个你想实现的功能,看看 ruby-china 是怎么实现的,这样应该简单些,知道了原理,接下来就自己去实现吧。其实有些功能也不需要 gem,能自己写就自己写,如果别人用了 Gem,你还得去看一下这个 Gem,这样就分散的精力。看源码,我觉得应该把这个大问题分割为一个一个的小问题,然后每次解决一个