첫 루비 프로그램을 작성하는 방법
소개
\Hello, World! 프로그램은 컴퓨터 프로그래밍의 고전적이고 유서 깊은 전통입니다.초보자를 위한 작고 완전한 첫 번째 프로그램이며 환경이 올바르게 구성되었는지 확인하는 좋은 방법입니다.
이 튜토리얼은 Ruby에서 이 프로그램을 만드는 과정을 안내합니다. 그러나 프로그램을 더 흥미롭게 만들기 위해 사용자에게 이름을 묻도록 전통적인 "Hello, World\ 프로그램을 수정합니다. 그런 다음 인사말에 이름을 사용합니다. 튜토리얼을 실행하면 다음과 같은 프로그램이 생성됩니다.
OutputPlease enter your name.
Sammy
Hello, Sammy! I'm Ruby!
전제 조건
컴퓨터에 로컬 Ruby 개발 환경이 설정되어 있어야 합니다. 다음 자습서 중 하나를 따라 설정하십시오.
- macOS에서 Ruby를 설치하고 로컬 프로그래밍 환경을 설정하는 방법
- Ubuntu 16.04에서 Ruby를 설치하고 로컬 프로그래밍 환경을 설정하는 방법
- Windows 10에서 Ruby를 설치하고 로컬 프로그래밍 환경을 설정하는 방법
1단계 — 기본 Hello, World! 작성 프로그램
\Hello, World! 프로그램에서 nano
와 같은 명령줄 텍스트 편집기를 열고 새 파일을 만듭니다.
- nano hello.rb
터미널 창에서 텍스트 파일이 열리면 프로그램을 입력합니다.
puts "Hello, World!"
코드의 다양한 구성 요소를 분석해 보겠습니다.
puts
는 Ruby 메소드로 컴퓨터에게 일부 텍스트를 화면에 출력하도록 지시합니다.
그런 다음 puts
메서드 다음에는 따옴표로 묶인 Hello, World!
와 같은 일련의 문자가 옵니다. 따옴표 안에 있는 모든 문자를 문자열이라고 합니다. puts
메소드는 프로그램이 실행될 때 이 문자열을 화면에 출력합니다.
puts
메소드와 같은 일부 메소드는 기본적으로 Ruby에 포함되어 있습니다. 이러한 기본 제공 메서드는 Ruby 프로그램을 만들 때 항상 사용할 수 있습니다. 고유한 메서드를 정의할 수도 있습니다.
CONTROL
및 X
키를 입력하여 nano
를 저장하고 종료하고 파일을 저장하라는 메시지가 표시되면 y
를 누릅니다. ENTER
를 누르십시오.
프로그램을 사용해 봅시다.
2단계 — Ruby 프로그램 실행
Hello, World! 프로그램이 작성되면 프로그램을 실행할 준비가 된 것입니다. ruby
명령과 방금 생성한 파일의 이름을 사용할 것입니다.
- ruby hello.rb
프로그램이 실행되고 다음 출력이 표시됩니다.
OutputHello, World!
실제로 일어난 일을 살펴보겠습니다.
ruby
명령을 실행하면 Ruby 인터프리터가 시작됩니다. Ruby 인터프리터는 지정한 파일을 읽고 내용을 평가합니다. puts
함수를 호출하여 puts \Hello, World!\
줄을 실행했습니다. Hello, World!
의 문자열 값이 함수에 전달되었습니다.
이 예제에서 문자열 Hello, World!
는 메서드에 전달되는 값이므로 인수라고도 합니다.
Hello, World!
양쪽에 있는 따옴표는 문자열이 포함되어 있음을 Ruby에 알리는 데 사용되기 때문에 화면에 표시되지 않았습니다. 따옴표는 문자열이 시작되고 끝나는 위치를 나타냅니다.
프로그램이 작동하지만 보다 대화식으로 만들 수 있습니다. 방법을 살펴보겠습니다.
3단계 - 입력 요청
프로그램을 실행할 때마다 동일한 출력이 생성됩니다. 프로그램을 실행하는 사람에게 이름을 묻자. 그런 다음 출력에서 해당 이름을 사용할 수 있습니다.
기존 프로그램을 수정하는 대신 nano
편집기에서 greeting.rb
라는 새 프로그램을 만듭니다.
- nano greeting.rb
먼저 사용자에게 이름을 입력하라는 메시지를 표시하는 다음 줄을 추가합니다.
puts "Please enter your name."
다시 한 번 puts
메서드를 사용하여 일부 텍스트를 화면에 출력합니다.
이제 다음 줄을 추가하여 사용자 입력을 캡처합니다.
puts "Please enter your name."
name = gets
이 다음 줄은 조금 더 복잡합니다. 분해합시다.
gets
메서드는 컴퓨터가 키보드 입력을 기다리도록 지시합니다. 이렇게 하면 프로그램이 일시 중지되어 사용자가 원하는 텍스트를 입력할 수 있습니다. 사용자가 키보드에서 ENTER
키를 누르면 프로그램이 계속됩니다. 그런 다음 ENTER
키 입력을 포함한 모든 키 입력이 캡처되어 문자열로 변환됩니다.
프로그램의 출력에서 해당 문자를 사용하려면 문자열을 name
이라는 변수에 할당하여 해당 문자를 저장합니다. Ruby는 프로그램이 끝날 때까지 해당 문자열을 컴퓨터 메모리에 저장합니다.
마지막으로 다음 줄을 추가하여 출력을 인쇄합니다.
puts "Please enter your name."
name = gets
puts "Hi, #{name}! I'm Ruby!"
puts
메서드를 다시 사용하지만 이번에는 문자열 보간이라는 Ruby 기능을 사용하여 변수에 할당된 값을 가져와 문자열 내부에 배치할 수 있습니다. . name
이라는 단어 대신 name
변수에 저장한 값(사용자 이름이어야 함)을 얻게 됩니다.
CTRL+X
를 눌러 nano
를 저장하고 종료하고 파일을 저장하라는 메시지가 표시되면 y
를 누른 다음 ENTER
를 누르십시오.
이제 다음 명령으로 프로그램을 실행하십시오.
- ruby greeting.rb
이름을 입력하라는 메시지가 표시되므로 이름을 입력하고 ENTER
를 누르십시오. 출력이 정확히 예상한 것과 다를 수 있습니다.
OutputPlease enter your name.
Sammy
Hi, Sammy
! I'm Ruby!
안녕, 새미! Im Ruby!
, 이름 바로 뒤에 줄 바꿈이 있습니다.
프로그램은 프로그램에 계속하도록 지시하기 위해 누른 ENTER
키를 포함하여 모든 키 입력을 캡처했습니다. 문자열에서 ENTER
키를 누르면 새 줄을 만드는 특수 문자가 만들어집니다. 프로그램의 출력은 사용자가 지시한 대로 정확하게 수행됩니다. 새 줄을 포함하여 입력한 텍스트를 표시합니다. 그것은 당신이 원하는 것이 아닙니다. 하지만 고칠 수 있습니다.
편집기에서 greeting.rb
파일을 엽니다.
- nano greeting.rb
프로그램에서 다음 행을 찾으십시오.
name = gets
그리고 다음과 같이 수정합니다.
name = gets.chop
이것은 gets
로 캡처한 문자열에 Ruby의 chop
메서드를 사용합니다. chop
메서드는 문자열에서 가장 마지막 문자를 제거합니다. 이 경우 ENTER
를 눌렀을 때 생성된 문자열의 끝에서 개행 문자를 제거합니다.
nano
를 저장하고 종료합니다. CTRL+X
를 누른 다음 파일을 저장하라는 메시지가 표시되면 y
를 누릅니다.
프로그램을 다시 실행하십시오.
- ruby greeting.rb
이번에는 이름을 입력하고 ENTER
를 누르면 예상 출력이 표시됩니다.
OutputPlease enter your name.
Sammy
Hi, Sammy! I'm Ruby!
이제 사용자로부터 입력을 받아 화면에 다시 출력하는 Ruby 프로그램이 있습니다.
결론
이제 입력 프롬프트, 결과 처리 및 출력 표시 방법을 알았으므로 프로그램을 더 확장해 보십시오. 예를 들어, 사용자가 가장 좋아하는 색상을 묻고 프로그램이 가장 좋아하는 색상이 빨간색이라고 말하도록 합니다. 이와 동일한 기술을 사용하여 간단한 Mad-Lib 프로그램을 만들 수도 있습니다.