配置 Git 的换行符处理和安全性:
-
git config --global core.autocrlf input
:这个设置确保在提交代码时,Git 会将 CRLF(Windows 的换行符)转换为 LF(Unix 的换行符),但在检出代码时不做转换。这通常用于在 Unix/Linux 环境中开发,但仍需处理 Windows 的换行符。 -
git config --global core.safecrlf true
:这个设置启用安全检查,防止在提交时出现不一致的换行符。如果文件中混合了不同的换行符(如 CRLF 和 LF),Git 会发出警告,确保代码的一致性。
在 hello 目录中创建一个名为 hello.rb 的文件
.rb
文件是 Ruby 编程语言的文件扩展名。Ruby 是一种面向对象的脚本语言,常用于开发 Web 应用程序、自动化脚本、数据处理等。.rb
文件通常包含用 Ruby 编写的源代码。
在 .rb
文件中,可以编写各种 Ruby 语法的代码
ruby
puts "Hello, World"
这个代码会输出 "Hello, World"
,其中 puts
是 Ruby 用于输出内容到终端的一个方法。
要运行 hello.rb
文件,需要确保你已安装了 Ruby,然后在终端中执行以下步骤:
1. 安装 Ruby
如果你还没有安装 Ruby,可以根据操作系统安装:
-
在 macOS 或 Linux 上 :
你可以使用包管理器安装 Ruby。
-
在 macOS 上使用 Homebrew:
bashbrew install ruby
-
在 Linux 上使用包管理器(如 Ubuntu):
bashsudo apt-get install ruby
-
-
在 Windows 上 :
你可以使用 RubyInstaller 来安装 Ruby。
2. 运行 hello.rb
文件
假设你已经安装了 Ruby,并且当前在 hello.rb
所在的目录下,你可以通过以下命令运行文件:
bash
ruby hello.rb
执行这个命令后,终端会输出:
Hello, World
这说明你的 Ruby 脚本运行成功!
创建 Rakefile
1. 使用 echo
命令(简单的方式)
bash
echo "#!/usr/bin/ruby -wKU
task :default => :run
task :run do
require './lib/hello'
end" > Rakefile
2. 使用 touch
和编辑器(推荐方式)
-
运行以下命令创建一个空的
Rakefile
文件:bashtouch Rakefile
-
使用文本编辑器(如
vim
、nano
、code
)打开文件并编辑:-
使用
vim
:bashvim Rakefile
-
使用
nano
:bashnano Rakefile
-
使用 VS Code:
bashcode Rakefile
-
-
在编辑器中输入以下内容:
ruby#!/usr/bin/ruby -wKU task :default => :run task :run do require './lib/hello' end
-
保存并关闭文件。
3. 为 Rakefile
添加执行权限(可选)
如果你希望 Rakefile
可以直接执行,还可以为它添加执行权限:
bash
chmod +x Rakefile
这样就成功创建并添加了 Rakefile
。
定义一个简单的 Greeter
类
ruby
class Greeter
def initialize(who)
@who = who
end
def greet
"Hello, #{@who}"
end
end
代码解读
-
类定义
Greeter
:class Greeter
:定义了一个名为Greeter
的类。
-
构造方法
initialize
:def initialize(who)
:initialize
是 Ruby 类的构造方法(相当于其他语言中的构造函数),在创建Greeter
类的新实例时被调用。@who = who
:@who
是一个实例变量,存储了传入的who
参数的值,表示要问候的对象。
-
方法
greet
:def greet
:定义了一个实例方法greet
,用于返回问候语。"Hello, #{@who}"
:方法返回一个字符串"Hello, ..."
,其中#{@who}
是 Ruby 中的字符串插值语法,用来嵌入实例变量@who
的值到字符串中。
-
结束类和方法定义:
end
:结束方法greet
的定义。- 再一个
end
:结束Greeter
类的定义。
使用示例
你可以像这样使用 Greeter
类:
ruby
g = Greeter.new("World")
puts g.greet
输出:
Hello, World
Greeter.new("World")
:创建一个新的Greeter
对象,传入"World"
作为who
参数。g.greet
:调用greet
方法,将会返回"Hello, World"
。
这段代码展示了 Ruby 面向对象编程(OOP)的基本特性,包括类定义、构造方法和实例方法。