What,Why,Where,How? 你或许会问这些问题,接下来,浅谈些许拙见。
0x00 前言
大学时,在一个分享会上,听一个科大的准研究生说,“如何理解计算机基础?首先从思维方式上就要转变,站在计算机的角度去思考问题。”似乎也不无道理。我想,工程师大多也都是这个思维,这样机器就能运行的更快,运行效率更高...
然而,松本行弘先生(Matz)设计 Ruby 语言第一要义,就是 减少编程时候的不必要的琐碎时间,令编写程序的人高兴。
Matz 认为 Ruby > (Smalltalk + Perl) / 2,表示Ruby是一个语法像 Smalltalk 一样完全面向对象、脚本运行、又有 Perl 强大的文字处理功能的编程语言。说到 Smalltalk ,不得不提一下 Objective-C, 它最大的特色就是承自 Smalltalk 的消息传递模型(message passing),该机制与今日 C++ 式之主流风格差异甚大。所以也提高了我探寻的兴趣 ;)
0x01 Ruby 是什么
Ruby 是一种面向对象、命令式、函数式、动态的通用编程语言。
Ruby has been designed on the Principle of Least Surprise - Matz says "I wanted to minimize my frustration during programming, so I want to minimize my effort in programming. That was my primary goal in designing Ruby. I want to have fun in programming myself. After releasing Ruby and many people around the world got to know Ruby, they said they feel the way I feel. They came up with the phrase the principle of least surprise."
2001 年,Oreilly 对 Matz 的一个关于 Ruby 历史的采访. Matz 的 "The Philosophy of Ruby" 也值得学习。
0x02 为什么要学习 Ruby
有趣
。这是一个好的问题,但这也是一个大家都知道答案的问题。一千个读者就有一千个哈姆雷特,我想也类似于这个问题。我简单说一下我的原因,有些人会说,语言只是工具而已,不用学习那么多。希望大家辩证的思考这个观点,每一门语言,每一个设计,都有自己的原则,都有自己的思维方式,自己的哲学存在。学习锻炼自己,发人深省。每一个 iOS 开发者,对 Smalltalk 或多或少会有些情愫,Ruby 中也能看到它的影子,不免有些共鸣。
0x03 如何学习 Ruby
一、下载 Ruby
for Windows,个人多一句,建议不使用 Windows 环境学习 Ruby,有两个原因,第一,Ruby 对 Unix 环境的需求非常高;第二,Ruby 在 Windows 环境下面执行效率低。或多或少会有些弯路。
- 下载 Ruby for Windows
- 双击同意协议
- 配置环境变量
for UNIX-like,首先不建议使用系统预装的,可能比较过时了,另外,推荐使用 rbenv
、 RVM
或者 chruby
管理 Ruby 环境。
- 先安装 Xcode 开发工具,它将帮你安装好 Unix 环境需要的开发包
- 然后安装 Homebrew
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
- 如果需要安装 Rails,安装
brew install libxml2 libxslt libiconv
必须的依赖第三库 - 安装 RVM
$ gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3
$ -sSL https://get.rvm.io | bash -s stable
如果失败,尝试
$ curl -L https://raw.githubusercontent.com/wayneeseguin/rvm/master/binscripts/rvm-installer | bash -s stable
$ source ~/.rvm/scripts/rvm
$ echo "ruby_url=https://cache.ruby-china.org/pub/ruby" > ~/.rvm/user/db
$ rvm -v
复制代码
- RVM 安装 Ruby
$ rvm requirements
$ rvm install 2.4.0
$ rvm use 2.4.0 --default
$ ruby -v
$ gem -v
$ gem sources --add https://gems.ruby-china.org/ --remove https://rubygems.org/
复制代码
- 安装 Bundler
$ gem install bundler
复制代码
- 安装 Rails
$ gem install rails
$ rails -v
复制代码
二、下载一个编辑器
- Visual Studio Code
- Atom
- Sublime Text
- Vim 或 Emacs
0x04 在哪儿学习 Ruby
- rubylearning
- ruby lang
- ruby china 社区
- 持续学习更新收集中...(PS:此处支持布道者推荐)