在本文中,程序员会介绍一些可以在下一个RubyonRails项目中使用的开源工具和扩展。
开发人员已经将Ruby视为世界上最受欢迎和最受欢迎的编程语言之一。虽然它不再是热门的新语言,但它继续为Twitch,SoundCloud和Hulu等知名应用程序以及项目管理工具Basecamp,开源存储库GitHub以及酒店市场Airbnb提供支持。
从本质上讲,Ruby的价值在于它允许开发人员编写更少的代码,同时完成比其他语言和框架更多的代码。面临的挑战是RubyonRails(Ruby语言的主要框架)是“固执的软件”。它假设存在“最好的做事方式”,并鼓励用户设计这种方式(在某些情况下阻止替代方案)。
如果你专注并投入时间学习如何使用Ruby进行开发,你会发现它很容易变得舒适和高效。“RailsWay”导致生产力大幅提升。但是,如果您尝试将其他语言的旧习惯带入Rails开发中,您可能会遇到更具挑战性的体验。
幸运的是,有很多工具可以帮助Ruby开发人员在构建应用程序时直接进入并保持高效。但首先,让我们看看RubyonRails。
什么是RubyonRails?
Rails哲学基于两个主要指导原则:
不要重复自己(DRY):软件开发的DRY原则指出,“每一段知识都必须在系统中具有单一,明确,权威的表示。”这是Ruby开发人员开始的假设之一。通过不必反复编写相同的信息,您的代码更易于维护,更易于扩展,并且更不容易出现错误。约定优于配置:RubyonRails支持它认为是构建Web应用程序的最佳方式。使用Ruby时,开发人员需要将这些实践作为一组默认约定。这使您可以更快地部署应用程序,而不是让团队花时间无休止地配置文件。
按类别划分的顶级Ruby工具
通用工具
要从Ruby开始,开发人员应该熟悉API库,其中包含一组模型-视图-控制器(MVC),可以轻松地在应用程序的不同层上构建。
1.FourDaysOnRails这个工具包是RubyonRails的精简指南,旨在为开发人员提供他们需要知道的一切,以便在短短四天内开始构建应用程序。对于希望了解Ruby核心的基本理念和“最佳实践”假设的开发人员来说,它可以是一个很好的资源。
验证用户
有多种Ruby工具可用于向您的应用添加用户身份验证。下面的三个工具是完全免费和开源的。访问他们的GitHub页面以了解如何实施。
2.Devise:Devise使您能够构建轻松验证用户身份的应用程序。来自多个用户会话的电子邮件确认,密码恢复和处理请求的所有内容。
3.Clearance:这是与上面提到的Devise类似的工具,但更简单。清除仅适用于基本的电子邮件/密码验证设置。
4.CanCanCan:CanCanCan允许您向用户授予有关其数据的访问规则。它还通过在应用程序的控制器中执行加载和检查权限,使控制器助手能够简化Rails控制器中的代码。
全球定位
为世界舞台构建应用程序?查看Ruby的以下位置工具。同样,这些工具是免费的,开源的,并且可以在GitHub上使用。
5.Geocoder:Geocoder允许您处理可能需要特定地理位置的建筑应用程序。它提供了与多个地理编码API的轻松集成,并且可以轻松集成到Rails中。
6.Globalize:使用Globalize,您可以将翻译存储到您想要的任何区域设置的数据中,并自动从物理或云数据库中提取数据。
前端格式
RubyonRails可用于前端和后端开发。如果你使用Ruby作为前端,你需要额外的工具来获得你想要的外观。查看这些格式工具以获取帮助:
7.Bootstrap:Bootstrap本质上是一个组件库,对于企业级软件团队以及希望构建具有响应式格式和样式元素的应用程序的早期初创企业来说,这是一个很好的资源。
8.Autoprefixer:对于在多个浏览器上导航网站的现代网络用户来说,这是一个必不可少的工具。添加到您的应用程序后,您可以确定它在每个浏览器上看起来都很棒。
9.Formtastic:Formtastic是一种向应用添加响应式表单的快捷方式。您可以根据需要灵活地设计样式,并以相同的形式支持多个模型,它是适用于任何Web应用程序的绝佳工具。
数据
如果您的应用程序包含数据收集或使用数据库,您将需要使用以下开源工具之一。
10.PaperTrail:一个简单的工具,可以让您跟踪应用数据的所有变化。简单有效。
11.Audited:与PaperTrail一样简单,但您可以更灵活地收集哪些数据。
12.Paperclip:此工具构建了用于在应用中保存文件的集成。对于简单的应用程序而言,它是有效的,但对于希望扩展的企业级应用程序而言可能不够强大。
测试
Ruby社区开发了有用的测试工具来帮助您优化应用程序。这些工具可以发现错误,安全漏洞,并通过模拟测试场景节省您的时间。看看这些开源工具:
13.RSpec:RSpec仍然是一种经典的测试工具,因为它与所有其他与测试相关的工具兼容。RSpec还通过提供比其他测试工具更多的文档和Web示例,使开发人员具有更高的可读性。
14.Faker:该工具为您的应用程序生成随机测试数据。这可以节省大量时间,因为您不需要浪费时间编写虚假数据。由于faker随机生成数据,您的团队可以轻松地尝试使用多个变量来测试应用的性能。
15.RuboCop:这是一个跨Ruby社区的流行代码测试工具。通过为Ruby项目定义规则列表或“Cops”,您可以检查特定样式,指标和控制器问题的代码。此工具还可以检查自动修复并在部署之前报告它们,目的是节省团队时间。
16.Brakeman:这个测试工具可以帮助开发人员发现安全漏洞,对于处理事务数据的初创公司和企业来说尤其有用。轻松发现SQL注入和不安全重定向问题,这些重定向可能是应用程序中的缺陷。
潜入Ruby
RubyonRails似乎是一个深奥的编程框架,但是大型Web应用程序和初创公司都可以从其专注的快速构建方法中受益。开发人员可以通过整合来自不断增长的Ruby开发社区的各种工具API,专注于构建灵活的Web应用程序。
它看起来像是一个陡峭的学习曲线,但从长远来看,Ruby为开发人员提供了节省时间的技术,所有这些都基于简单约定的简单原则。