Ruby 编程中拼写错误的救星:did_you_mean gem

简介:

经常我会在Ruby开发中遇到拼写错类名或方法名的时候,程序报错,但我不知道只是拼写错误,我会反复的咕噜:

“太奇怪了,看起来完全没问题呀…”

经常我会在这种事情上浪费大量的时间,而原因可能只是一个字符写错了。我痛恨这种事情。

这就是为什么我开发出 did_you_mean gem。使用它,每当你遇到NoMethodError 或 NameError 时,它会自动的寻找出你真正想调用的正确方法,并告诉你。

gem 'did_you_mean', group: [:development, :test]

那么,当年拼写错了 ActiveSupport 里的 Hash#with_indifferent_access 后,会发生什么事情呢?:

hash.with_inddiferent_access
# => NoMethodError: undefined method `with_inddiferent_access' for {}:Hash
#
#     Did you mean? #with_indifferent_access
#

看到了吧!现在,你只需要拷贝/粘贴 ‘did_you_mean’ 提示的正确名字,程序就不会有错了。

did_you_mean gem 会自动的把它推测出的信息显示在错误信息中。也就是说,“Did you mean?” gem 会在任何地方为你服务。下面是一个很典型的例子,是我在一个真实项目中它给出的错误提示:

screenshot

你可以在GitHub的项目主页中找到更多的例子: yuki24/did_you_mean

赶快使用 did_you_mean gem 吧,不再为拼写错误发愁。Ruby将会读懂你的思想。

文章转载自 开源中国社区 [http://www.oschina.net]

相关文章
|
5月前
|
网络协议 Ruby
阿里云的 Ruby Gem 源又可用了
阿里云的 Ruby Gem 源又可用了
|
1月前
|
SQL 自然语言处理 安全
探索研究Ruby CGI 编程
【9月更文挑战第1天】
44 6
|
11天前
|
SQL 网络安全 UED
深入探索研究Ruby CGI 编程
【10月更文挑战第1天】
23 0
|
2月前
|
开发者 Android开发 UED
打造流畅应用:深入探索如何在Xamarin项目中选择并实现最佳UI/UX设计的实践指南
【8月更文挑战第31天】在数字化时代,UI/UX设计成为应用成功的关键。Xamarin以高效开发和强大兼容性著称,其设计理念“一次编写,处处运行”需充分适应多平台特性,提供一致体验。选择Xamarin.Forms或结合Xamarin.Native可实现跨平台UI设计;遵循各平台设计指南,保持布局一致性和简洁性;通过用户测试不断优化。最终,结合技术和用户需求,打造美观实用的应用,脱颖而出。
42 0
|
2月前
|
开发者 编解码
界面适应奥秘:从自适应布局到图片管理,Xamarin响应式设计全解析
【8月更文挑战第31天】在 Xamarin 的世界里,构建灵活且适应性强的界面是每位开发者的必修课。本文将带您探索 Xamarin 的响应式设计技巧,包括自适应布局、设备服务协商和高效图片管理,帮助您的应用在各种设备上表现出色。通过 Grid 和 StackLayout 实现弹性空间分配,利用 Device 类检测设备类型以加载最优布局,以及使用 Image 控件自动选择合适图片资源,让您轻松应对不同屏幕尺寸的挑战。掌握这些技巧,让您的应用在多变的市场中持续领先。
32 0
|
2月前
|
开发者 数据库 虚拟化
Xamarin 应用性能优化策略大揭秘,从代码到界面再到数据访问,全面提升应用性能,快来围观!
【8月更文挑战第31天】在 Xamarin 跨平台移动应用开发中,性能优化至关重要。代码优化是基础,应避免不必要的计算与内存分配,如减少循环中的对象创建及合理使用数据结构。界面设计上需注意简化布局、减少特效并启用虚拟化以提升响应速度。数据访问方面,优化数据库查询和网络请求可显著改善性能。Xamarin Profiler 等工具还可帮助开发者实时监控并优化应用表现,从而打造流畅高效的用户体验。
48 0
|
2月前
|
开发者 测试技术 Android开发
Xamarin 开发者的五大常见问题及解决方案:从环境搭建到性能优化,全面解析高效跨平台应用开发的技巧与代码实例
【8月更文挑战第31天】Xamarin 开发者常遇问题及解决方案覆盖环境搭建至应用发布全流程,助新手克服技术难关。首先需正确安装配置 Visual Studio 及 Xamarin 支持,设置 iOS/Android 测试环境。利用 Xamarin.Forms 和 XAML 实现高效跨平台开发,共享 UI 和业务逻辑代码。针对性能优化,采取减少 UI 更新、缓存计算结果等措施,复杂问题则借助 Xamarin Profiler 分析。
39 0
|
2月前
|
API 数据库 Ruby
Ruby自动化魔法:揭秘日常任务的脚本编程秘籍
【8月更文挑战第31天】使用Ruby编写自动化脚本是一种高效且直观的方式。首先确保已安装Ruby环境,然后创建`auto_script.rb`文件开始编写。Ruby语法简洁优雅,内置及第三方库丰富,便于处理文件操作、网络请求和数据库交互等任务。通过`FileUtils`可轻松复制、删除或移动文件;利用`net/http`库可与网络API交互;`whenever`库帮助定时执行任务;而`mail`库则方便发送邮件。Ruby的强大功能和活跃社区支持,使自动化任务变得简单有趣。
41 0
|
2月前
|
开发者 Ruby
揭秘Ruby编程的神秘面纱!零基础也能快速掌握,优雅代码从此刻开始编织梦想!
【8月更文挑战第31天】这篇文章是 Ruby 入门指南,适合编程初学者。通过简单的“Hello, World!”示例,你将领略 Ruby 的简洁与优雅。文章介绍了变量定义、流程控制及方法与模块的使用,帮助你快速掌握基础语法。Ruby 的强大功能和友好社区将使你的编程之旅更加愉快。立即开始实践,探索更多可能性!
39 0