您是否考虑过学习一种新的编程语言,但不确定是哪种语言?
如果你已经做了很多研究,或者在计算机编程方面有过任何经验,你可能已经看到了 Ruby 编程的讨论。Ruby 是一种非常流行的编程语言,用于许多事情,从 Web 应用程序开发到数据分析。与其他编程语言相比,它也非常用户友好,如果你愿意投入工作,那么很容易学习。
也许最重要的是,Ruby 编程技能在市场上非常受欢迎,并且能够使用 Ruby 进行编码可以使你成为一个非常多才多艺和有用的程序员。
但如果这是你第一次听说 Ruby,你可能会感到有点不知所措。毕竟,互联网上有很多关于编程的信息,但并不是所有的信息都是有帮助的。你应该从哪里开始,如果你只是一个初学者试图学习 Ruby?
虽然网络上有很多资源用于掌握 Ruby 编程,但本文将为您提供一个可靠的介绍。继续阅读,了解 Ruby 是什么,它是什么。
在提到 Ruby on Rails 或 Ruby 编程语言之前,您不必花太多时间研究计算编程。但其准确含义是什么?
根据 Ruby 项目官方网站,Ruby 语言是函数式编程和命令式编程之间仔细平衡的语言之一。它被设计为自然和直观,但不是太简单,无法有效。Ruby 的粉丝认为这是“一门漂亮、精巧的语言”。
更具体地说,Ruby 是一种为前端和后端 Web 开发以及其他类似应用程序而设计的脚本语言。它是一种强大的,动态类型的,面向对象的语言,具有高级语法,使编程感觉就像英语编码。事实上,有些人觉得在学习编程之前,他们几乎可以理解 Ruby 代码。
Ruby 的 Web 框架 Ruby on Rails 是任何语言中最受欢迎的 Web 开发框架之一。虽然 Ruby 可能因其在 Web 开发中的使用而闻名,但它也有许多其他用途。其中一些包括自动化、命令行工具、静态站点生成、DevOps、网页抓取和数据处理。
也许最重要的是,Ruby 是一种高度通用和便携的语言。它可以在 Windows,macOS,Linux,甚至 UNIX 和 DOS 上轻松使用。无论你想完成什么编程工作,你都可以在 Ruby 中做到这一点。
Ruby 是由日本计算机程序员 Yukihiro“Matz”Matsumoto 在 1990 年代中期发明的。Matsumoto 当时是多种编程语言的专家,包括 Perl,Eiffel,Smalltalk,Lisp 和 Ada。在创建 Ruby 时,他试图将他认为是这些语言中最好的元素结合起来。
Ruby 于 1995 年公开发布,但直到 2006 年晚些时候才完全获得大众认可。从那时起,Ruby 吸引了大量的全球用户群,来自许多不同行业的程序员使用它来制作一些世界上最好的应用程序。甚至有大量的忠实编码人员在主要城市为与 Ruby 相关的会议会面。
最重要的是,Ruby 是完全免费的,不仅免费使用,而且开源。它可以随意复制、修改和分发。
Ruby on Rails Web 开发框架于 2005 年发布,在很多方面,它成为了 Ruby 的名声。Ruby on Rails 彻底改变了 Web 开发的方式,使得在比以前更短的时间内创建复杂且用户友好的 Web 应用程序成为可能。Ruby on Rails 很快就受到了时间紧迫的初创企业家的冲击,因为它允许小型团队快速构建大型应用程序。今天使用 Ruby on Rails 的一些主要网站包括 Shopify,Square,Instacart,Twitch,SoundCloud,GitHub,Kickstarter,Ask.fm,甚至 Hulu。
Ruby 是一种高度灵活的编程语言。Ruby 中的开发人员可以更改语言本身的工作方式。它是一种像 Python 这样的解释语言,而不是像 C 或 C++ 这样的编译语言。
但与 Python 不同,它专注于针对每个问题的单一,明确的解决方案,Ruby 项目试图采取多种不同的方法来解决问题。正如您可能猜到的,这两种方法都有益处和缺点,具体取决于您的项目。
使 Ruby 如此用户友好的一个功能是它向程序员隐藏了很多细节。这使得使用 Ruby 的编程比使用其他复杂性更高的主流语言(例如 C 和 C++)要容易得多。但是,这也意味着在代码中查找 Bug 会更加困难。
您在 Ruby 中编写的代码将在任何主要操作系统上运行,而无需移植,包括 Windows、macOS 和 Linux。
正如我们已经建立的,Ruby 最常用于创建 Web 应用程序。但由于它是一种通用语言,它也可以用于许多其他类型的程序。
Ruby 已用于预订网站 Airbnb,流媒体服务 Hulu 和卡路里跟踪应用程序 MyFitness Pal。仅这一事实就证明了 Ruby 的功能有多强大。
在 Web 开发方面,使用 Ruby on Rails 框架。Rails 使用现成的约定来节省开发人员配置项目的时间。它还具有代码生成器,可以自动创建应用程序的各个部分,从而使程序员编写的代码更少。
Ruby 也可用于静态站点生成。在静态网站上,所有网页都同时加载。这提高了网页加载速度,并允许快速,简便的网站部署。
Web 服务器是 Ruby 的另一个相当明显的应用程序。使用 Ruby 创建的一些现有 Web 服务器包括 Puma、Unicorn 和 Passenger。服务器处理原始传入的 HTTP 请求并将它们传递给正确的后端应用程序,然后处理发回的 HTTP 响应。
Ruby 的其他用途包括 DevOps、数据处理以及 Web 抓取和抓取。要了解这些用例以及更多信息,请查看 devleoper.oracle.com ,了解您可以通过 OCI 使用 Ruby 的各种方式。
当人们试图决定要学习哪种编程语言或将哪种语言用于项目时,他们经常将 Ruby 的功能与其他语言的功能进行比较。C、C++ 和 Java 都是需要考虑的常用选项。但最常与 Ruby 相比的另一种语言可能是 Python,因为它们可以用于许多相同的应用程序。
Python 和 Ruby 有很多相似之处,这可能会让初学者很难决定要学习哪种语言。例如,两者都是高级的服务器端脚本语言。两者都可以用于 Web 应用程序并在多个平台上工作。
此外,Ruby 和 Python 均受 Emacs 模式支持,可与嵌入式文档工具配合使用,并可用于 GNU 调试器 (gdb) 样式。它们都使用一个名为 IRB 的交互式提示,这两种语言的对象都是强度和动态类型的。最后,也许最重要的是,Python 和 Ruby 都有干净的语法,并且易于阅读。
然而,对于 Python 和 Ruby 之间的所有相似之处,也有同样多的差异。首先,虽然 Python 是一种严格的高级编程语言,但 Ruby 更像是一种通用语言。他们也使用单独的框架,而 Ruby 使用 Ruby on Rails,Python 只适用于 Django。
Python 支持多个 IDE,而 Ruby 仅支持 EclipseIDE。Mixins 可以与 Ruby 一起使用,但它们不适用于 Python。Python 的库范围比 Ruby 更广。
最后,Python 社区主要关注 Linux 和学术界,而围绕 Ruby 的社区则关注 Web 开发。
这两种语言之间还有其他几种差异,但这些是做出选择所需的基本知识。
注:为免疑义,本网页所用以下术语专指以下含义: