母版页做网站例子,校园门户网站解决方案,如何搭建asp网站,淮南网站开发Ruby是一种面向对象的脚本语言#xff0c;由日本的计算机科学家松本行弘设计并开发#xff0c;Ruby的设计哲学强调程序员的幸福感#xff0c;致力于简化编程的复杂性#xff0c;并提供一种既强大又易于使用的工具。其语法简洁优雅#xff0c;易于阅读和书写#xff0c;使… Ruby是一种面向对象的脚本语言由日本的计算机科学家松本行弘设计并开发Ruby的设计哲学强调程序员的幸福感致力于简化编程的复杂性并提供一种既强大又易于使用的工具。其语法简洁优雅易于阅读和书写使得代码更加清晰易懂作为一种动态类型语言Ruby不需要在声明变量时指定类型它会在运行时自动处理类型转换同时Ruby是一种纯面向对象的语言所有事物都被视为对象支持封装、继承和多态等核心概念。
Ruby中文论坛Ruby China
Ruby官方文档Ruby-Doc.org: Documenting the Ruby Language
我在安装时使用的VS Code同SSH连接到的Ubuntu虚拟机在正式部署在云服务器前最好先在虚拟机上部署测试。Visual Studio Code连接VMware虚拟机-CSDN博客
提前准备
先更新软件包列表
sudo apt update
sudo apt upgrade 在安装Ruby前最好先配置好git
sudo apt install git 验证是否安装完成
git --version
设置用户名和用户邮箱
git config --global user.name GGBao
git config --global user.email 1234567GG.com
在VS Code中安装插件 Ruby LSP 和 Code Runner 到虚拟机旧的Ruby插件已经弃用: 使用rbenv安装Ruby
现在已经更新到3.3版本了但这次安装的是Ruby2.7版本因为2.7版本更方便操作和简单易学一点而且更加稳定有更多参考资料。
安装各种Ruby的依赖包
sudo apt install git-core curl zlib1g-dev build-essential libssl-dev libreadline-dev libyaml-dev libsqlite3-dev sqlite3 libxml2-dev libxslt1-dev libcurl4-openssl-dev software-properties-common libffi-dev
* git-core: Git版本控制
* curl: 用于从命令行获取或发送数据的工具
* zlib1g-dev: zlib压缩库的开发文件
* build-essential: 包含gcc、g和make等编译工具
* libssl-dev: OpenSSL库的开发文件用于安全通信
* libreadline-dev: readline库的开发文件支持命令行编辑和历史记录
* libyaml-dev: YAML库的开发文件
* libsqlite3-dev 和 sqlite3: SQLite数据库的开发文件和命令行工具
* libxml2-dev 和 libxslt1-dev: 用于XML和XSLT处理的开发文件
* libcurl4-openssl-dev: 使用OpenSSL的curl库的开发文件
* software-properties-common: 管理软件包的存储库和PPA的工具
* libffi-dev: FFI库的开发文件允许从一种语言调用另一种语言编写的代码 克隆rbenv仓库
rbenv通过修改环境变量来控制当前使用的Ruby版本它不会干扰系统自带的Ruby环境而是为用户提供一个隔离的Ruby运行环境。这使得在不同的项目之间切换和管理多个Ruby版本变得简单易行。
git clone https://github.com/rbenv/rbenv.git ~/.rbenv
更新bashrc文件将rbenv的bin目录添加到PATH环境变量中并初始化rbenv
echo export PATH$HOME/.rbenv/bin:$PATH ~/.bashrc
echo eval $(rbenv init -) ~/.bashrc 重启shell
exec $SHELL
克隆 Ruby-build 插件
git clone https://github.com/rbenv/ruby-build.git ~/.rbenv/plugins/ruby-build 安装Ruby版本和全局设置Ruby版本
rbenv install 2.7.2
rbenv global 2.7.2
安装rails
Ruby on Rails简称Rails是一个用于开发数据库驱动的网络应用程序的完整框架。它基于MVC模型-视图-控制器设计模式为开发者提供了一个纯Ruby的开发环境Rails从视图中的Ajax应用到控制器中的访问请求和反馈再到封装数据库的模型为开发者提供了一套完整的解决方案。它支持各类网络服务器和数据库使得发布网站时只需要一个数据库和一个网络服务器即可。
gem install rails -v 6.0.3.4
安装 ruby-railties
sudo apt install ruby-railties 新建一个文件测试下安装是否完成
# hello.rb
pust Oh yeah GGboy
运行成功
Ruby基础操作
变量和字符串插值
name 靓仔
age 22
width 1.75
puts Hello, my name is #{name} and I am #{age} years old and I am #{width} meters tall. 定义方法
# 秒数换算
def seconds_to_hms(seconds)hours seconds / 3600minutes (seconds % 3600) / 60seconds seconds % 60#{hours}:#{minutes}:#{seconds}
end
# 调用方法
puts seconds_to_hms(6000) 判断语句
name 山里灵活
age 18if age 18puts #{name}没到18岁
elsif age 18puts #{name}刚满18岁
elseputs #{name}已经不在18岁
end循环语句
6.times do |i|print * (6 - i - 1)print * * (2 * i 1)puts
end 面向对象
class Persondef initialize(name, age, address, phone_number, email)name nameage ageaddress addressphone_number phone_numberemail emailenddef greetputs Hello, my name is #{name} and I am #{age} years old.puts I live at #{address} and my phone number is #{phone_number}.puts You can reach me at #{email}.end
endperson Person.new(Charlie, 28, 123 Main St., (555)-555-5555, charlieexample.com)
person.greet 添加注释
# 这是单行注释begin
这是多行注释
火鸡面
大扒鸭
大辣椒
一顿不吃心刺挠
end