这是一门 Ruby 入门级课程,面向具备一定计算机知识的用户,帮助用户掌握 Ruby 编程,从 Ruby 小白晋级为 Ruby 初级工程师。
人类与计算机程序交流的方式有两种:第一种方式是使用程序,另外一种是编写程序,程序员属于后者。学习编程通常是一个痛苦的过程。Ruby 是第一个考虑开发者幸福度的编程语言。相比其他编程语言,学习 Ruby,并没有那么痛苦。
Ruby 是一种开源的面向对象程序设计的服务器端脚本语言,在 20 世纪 90 年代中期由日本的松本行弘(まつもとゆきひろ/Yukihiro Matsumoto)设计并开发。
Ruby 是一种旨在使大家编程时能乐在其中的编程语言。
Ruby 具有完全面向对象,有丰富的类库,直观、人性化的语法等特征,但这些并不是 Ruby 的目的,只是实现快乐编程的手段。
Ruby 是一群热爱面向对象编程的程序员,为了实现最优秀的面向对象语言而设计、开发出来的。它完全面向对象,所思考的东西都可以直接通过代码表达出来。同时,Ruby 也具有继承以及 Mix-in 等面向对象语言的必备特性。
另外,Ruby 不仅提供了丰富的标准类库,还具有一些能够提高编程效率的功能,比如应对各种异常的错误处理机制、自动释放内存的垃圾回收机制等。
Ruby 可运行于多种平台,如 Windows、MAC OS 和 UNIX 的各种版本。
面向对象
脚本语言
跨平台支持
开源软件
具备操作文件和执行命令等计算机基础知识的读者;
可使用编辑器创建文本文件的读者;
计划学习编程的读者。
本课程采用循序渐进,逐步深入的教学方式,有一定 Ruby 编程基础的用户可以跳过部分章节。
#0 课程简介
第一部分 Ruby 初体验
#1 从工程的角度理解 Ruby
#2 Ruby 解释器知多少
#3 搭建 Ruby 运行环境
#4 代码编辑器
#5 Ruby 初步 (一)
#6 Ruby 初步 (二)
#7 数组、散列和正则表达式
第二部分 Ruby 基础
#8 RubyGems,无尽的宝藏
#9 Bundler,Ruby 依赖管理救命稻草
#10 rgrep,ruby 版的 grep
#11 Ruby 中的对象、变量和常量
#12 Ruby 中的 block, proc 和 lambda
#13 运算符
#14 条件判断和循环语句
#15 方法
#16 面向对象程序设计
#17 类和模块
#18 基础数据类型
#19 错误处理与异常
第三部分 Ruby 常用类 (未开放)
#20 Ruby 常用类
#21 数值类
#22 数组类
#23 字符串类
#24 散列类
#25 正则表达式类
#26 IO 类
#27 文件类与 DIR 类
#28 Encoding 类
#29 Time 类与 Date 类
#30 Proc 类
第四部分 Ruby 开发实战 (未开放)
#31 文本处理
#32 SQLite
#33 Rails 开发环境搭建
#34 Rails Guide 文档导学
#35 从 1 开始开发 Rails 项目
#36 部署 Rails 项目
第五部分 赠送内容 (未开放)
#加 1 Ruby 字符串编码问题
#加 2 Ruby 学习资源清单
#加 3 Windows 下 Rails 学习环境搭建 (不使用 WSL)
本书内容适用于 Ruby 2.7 版本,适用的操作系统为 Windows 10/8.1、Mac OS X,以及 Linux 等常见的类 Unix 操作系统。
Ruby 主要的应用领域
动态网站开发
静态网站开发
评论工具
爬虫
自动化测试
Rails
Rails 是 一个包括根据模型 - 视图 - 控制器 (MVC) 模式创建数据库支持的 Web 应用程序所需的一切的 Web 应用程序框架,
sinatra
Sinatra 是一个基于 Ruby 语言的 DSL( 领域专属语言),可以轻松、快速的创建 web 应用。
jekyll
将纯文本转换为静态博客网站。
不再需要数据库,不需要开发评论功能,不需要不断的更新版本——只用关心你的博客内容
Markdown(或 Textile)、Liquid 和 HTML & CSS 构建可发布的静态网站。
支持自定义地址、博客分类、页面、文章以及自定义的布局设计。
middleman
Middleman 是一个静态站点生成器, 使用现代 Web 开发中的所有快捷方式和工具。查看 middlemanapp.com 获取详细教程,包括入门指南。您也可以关注 @middlemanapp 以获取更新。
discourse
Discourse 是由 Stack Overflow 创始人之一的 Jeff Atwood 主导的开源论坛项目,使用时能感受到和 Stack Overflow 的关联性,比如为鼓励有效的技术讨论、控制人身攻击等做了很多努力,页面的布局方式也有相似之处。Discourse 提供了非常丰富的配置方式,也支持插件扩展,是值得学习的论坛类开源项目。
homeland
开源、免费、不限制商业使用的社区/论坛系统。更符合中文用户的使用习惯。
Mechanize
Mechanize 库用于自动与网站交互。Mechanize 自动存储和发送 cookie,跟踪重定向,并且可以跟踪链接和提交表单。可以填充和提交表单字段。Mechanize 还会跟踪您访问过的站点作为历史记录。
nokogiri
Nokogiri(锯)使从 Ruby 处理 XML 和 HTML 变得轻松而轻松。它提供了一个合理的、易于理解的 API 用于读取、写入、修改和查询文档。它依赖于本地解析器,如 libxml2 (C) 和 xerces (Java),速度快且符合标准。
rest-client
一个用于 Ruby 的简单 HTTP 和 REST 客户端,灵感来自指定操作的 Sinatra 微框架风格:获取、放置、发布、删除。
appium
Appium 是一个开源测试自动化框架,用于原生、 混合和移动 Web 应用程序。 它使用 WebDriver 协议驱动 iOS、Android 和 Windows 应用程序。
Ruby 基础教程一书
Ruby 官方文档
Rals Guide 文档
无霸教育的课程,坚持 资源免费,服务收费 的原则。即图文、视频、音频、文档、资源全免费。
《Ruby 核心技术与实战 36 讲》课程目前的价格为:999 元。服务有效期三个月。
如果需要跟着具有多年行业经验的老师一起学习,
请联系无霸教育的客服(添加微信小助手: pengpeng--vip)。
课程的所有内容都是基于 Ruby 的最新稳定版 2.7 版本。当然大部分代码在 Ruby 3.0 上都可以运行。 但是目前来说,从实用体验上来说, Ruby 3.0 与 Ruby 2.7 的差别不大。笔者更期待 Ruby 3.1。
真正要掌握一门编程语言,仅学会分散的知识点是不够的,还必须要把知识点串联起来,做一些中型的项目才能有更深的领域于提高。
课程只有 30 多篇,但是每篇内容都会持续打磨。我希望这个课程,能帮助更多入门和有一定编程技术的程序员,真正掌握 Ruby,并且给你一些学习上的启发。
60 天后,进阶为合格的 Ruby 工程师,让我们一起加油吧。