报告踩坑情况 本人的应用场景大致和注册发邮件类似,考虑到这个 pub 会有可能被多次应用到,就寻求一个类似 Observer 的模式,发现了 Observer 被干掉了之后搜到了本篇文章,然后就小实践了一下遇到的坑如下:
ActiveSupport::Notifications在sub的管理上非常困难
很难验证sub的重复性
很难进行unsub
很难管理sub的顺序
很难对sub中的异常进行处理
大致就是这样,故不得不寻求其他的类 observer 方式
当然,就像楼上各位大神说的,ActiveSupport::Notifications 确实是一个非常好 P/S 的方式,但适用的场景可能更倾向于 单 sub 多 pub 的情况,对于单 pub 多 sub 的传统 Observer 模式似乎不太适合
新来的。。凑凑热闹。。
问题 1:你觉得什么是优雅的代码?分享一下你认为优雅的 Ruby 代码。
3.times
令人惊讶的简洁
People.find_by_sex_and_age
还有强大的变态的元编程
问题 2:接触 Ruby 后,你的编程环境有什么变化?例如,不用 IDE,而是用文本编辑器写代码;弃用了爱用多年的 Windows,投向了 Linux 甚至苹果的怀抱。 刚接触 ruby 的时间里,每天都像是发现新大陆一样。天天边拽着同事看示例代码边惊呼'我擦还能这样!' os 上 WLM 都有,身为没代码提示会死星人都装了破解版 RubyMine。。
问题 3:你用 Ruby 做过提高工作效率的小工具(Gem)吗?你的 Ruby 最佳实践是什么? 简单的爬虫,文档处理的小工具 实践:unless 大牛{ 写段代码;找本有提高的书/源码;看;重构}