발효홍삼 2022. 12. 17. 00:02
728x90

What is Ruby?

Ruby는 순수한 객체 지향 프로그래밍 언어로, Ruby 코어 코드 부분도 변경하여 사용할 수 있다.

간결함과 생산성을 강조한 동적인 오픈 소스 프로그래밍 언어로 우아한 문법으로 자연스럽게 읽히고 쓰기 편한 프로그램을 만들 수 있다.

 

Quick Start

https://www.ruby-lang.org/en/downloads/

 

Download Ruby

Here you can get the latest Ruby distributions in your favorite flavor. The current stable version is 3.1.3. Please be sure to read Ruby’s License. Ways of Installing Ruby We have several tools on each major platform to install Ruby: On Linux/UNIX, you c

www.ruby-lang.org

운영체제에 맞는 루비 다운로드

루비젬은 루비의 표준화 패키징 및 설치 프레임워크로 gem으로 루비 어플리케이션이나 라이브러리를 설치하고 패키징하고 관리하는 역할을 한다.

또 Rails를 위한 sqllite를 설치해주자.

https://seong6496.tistory.com/233

 

DB browser for sqlite 설치 및 사용법

MySQL이나 오라클 제품으로 데이터 관리를 할 수 있는데 규모가 큰 데이터처리에 적합한 제품이라서 설치도 복잡하고 서버처리와 user 설정 때문에 가볍게 프로그램을 사용하기에는 무리가 있습

seong6496.tistory.com

위 글을 참고해 설치하자.

 

Ruby 문법

  • 대부분 문장 끝에 세미콜론을 붙이지 않는다.
  • 또한, TAB을 사용하기보다는 스페이스 2번을 사용하여 구분한다.

1) 주석

# 한 줄 주석

=begin
  Ruby에서 여러 줄의 주석을 사용할때는
  begin과 end를 사용한다.
=end

2) 변수

  • String, Integer 등의 타입을 선언하지 않고, 필요한 변수에 대입하면, 해당하는 타입으로 자동으로 적용된다.
  • 로컬변수, 인스턴스 변수, 클래스 변수, 상수, 글로벌 변수는 다음과 같이 표현한다.
# 로컬변수 : 소문자로 작성
bellstone

# 인스턴스 변수 : 변수명 앞에 @
@bellstone

# 클래스 변수 : 변수명 앞에 @@
@@bellstone

# 글로벌 변수 : 변수명 앞에 $
$bellstone

# 상수 : 대문자로 작성
BELLSTONE

3) 데이터 표시 방법

  • 데이터 표시 방법은 print / puts / p 이다.
# 출력 후 개행이 되지않습니다.
print "bellstone"

# 출력 후 개행이 됩니다.
puts "BellStone"

# 출력 후 개행이 되고 데이터 타입을 확인할 수 있도록 표시 됩니다.
p "BELLSTONE"
p 123456789

>>>>>>>>>>실행결과<<<<<<<<<<
bellstoneBellStone
"BELLSTONE"
1234567889

4) 산술 연산자

  • 산술 연산자는 +,-,*,/,%,** 이다.
a = 1 + 2 # 더하기 a = 3

b = 2 - 1 # 빼기 b = 1

c = 3 * 4 # 곱하기 c = 12

d = 4 / 2 # 나누기 d = 2

d = 4 % 2 # 나머지 d = 0

f = 2**2  # 지수 f = 4

5) 비교 연산자

  • 비교 연산자는 ==, !=, >, <, <=, >=, <==>, ===, .eql, .equal? 이다.
#a<=>b 일 때
#a>b일 경우 return 1
#a<b일 경우 return -1
#a=b일 경우 return 0

puts 10 <=> 1
puts 1 <=> 10
puts 1 <=> 1

>>>>>>>>>>실행결과<<<<<<<<<<
1
-1
0
  • == / === / .equal? 은 조금씩 다른데, ==은 동일한 값, ===은 소속성, .equal은 동일한 오브젝트를 판별한다.
blog_name = "BELLSTONE"
name_blog = "BELLSTONE"

puts blog_name.object_id       #=>70175517429840
puts name_blog.object_id       #=>70175517429800
puts blog_name == name_blog    #=>true
puts blog_name === name_blog   #=>true 같은 String이기 때문에!
puts blog_name.equal?name_blog #=>false

name_blog = blog_name

puts blog_name.object_id       #=>70320501444140
puts name_blog.object_id       #=>70320501444140
puts blog_name == name_blog    #=>true
puts blog_name === name_blog   #=>true
puts blog_name.equal?name_blog #=>true

6) 메서드

  • 메서드는 def 메서드 이름 end 형식으로 끝난다.
  • 메서드 명은 영어를 사용하며, 대문자를 사용하지 않고 _를 사용하여 구분한다.
  • True와 False를 나타내는 메서드에는 ?를 붙인다.
def blog_name
  puts "bellstone"
end

blog_name #=> bell stone

def is_blog_name?(blog_name)
  if blog_name == "BELLSTONE"
    return true
  end
  return false
end

blog_name = "bellstone"
puts is_blog_name?(blog_name) #=> false

7) 해쉬

  • 해쉬는 {key : value, key: value } 형식이다. hash에는 fetch / store 등 메서드가 있다.
  • 문자열을 입력할 경우에는 ""로 표현한다.
hash = {Homepage:"https://itbellstone.tistory.com/", Host:"BELLSTONE"}
puts hash                  #=>{:Homepage=>"https://itbellstone.tistory.com/", :Host=>"BELLSTONE"}
puts hash[:Homepage]       #=>https://itbellstone.tistory.com/
puts hash.fetch(:Homepage) #=>https://itbellstone.tistory.com/
puts hash[:major]          #=>nil

hash[:major] = "ECONOMIC"
puts hash[:major]          #=>ECONOMIC

hash.store(:job, "developer")
puts hash[:job]            #=>developer

Ruby Gem 명령어 정리

도움말

gem -h
gem --help
gem help


버전 보기

gem -v
gem --version


환경

gem environment
환경정보 나옴
gem environment gemdir
루비젬의 메인디렉토리 보기

gem update --system
최신버전으로 업데이트


패키지 설치

gem install -r 패키지명
( -r 은 install 하위명령을 원격으로 처리함)
gem install -r 패키지명 -v "< 0.5"
( -v 옵션을 통해 0.5버전보다 낮을 것충 최신버전 설치를 지정)
gem install -r 패키지명 -t
( -t 는 설치과정중 테스트 스위트 있으면 실행함)
gem install -r 패키지명 --rdoc
( RDoc 문서를 자동으로 생성함)


조회하기

gem query -rn 찾는이름
( -r은 원격, -n 은 정규표현식 /찾는이름/ 으로 검색)
728x90