JavaScript에서 Ruby로

노드를 만드는 방법을 익혔다고 가정해 보세요.js 서버, 당신의 시야를 넓히고 싶습니다.당신은 이미 Rails에 관한 이야기를 많이 들었습니다. 이것은 유행하는 MVC 프레임워크입니다. 한번 시도해 보고 싶습니다.하지만 그것은 완전히 다른 언어를 사용하는 루비!
Ruby를 빠르게 살펴보고 다른 언어를 배우는 것이 듣기에 그렇게 무서운지 봅시다. (전문적인 힌트, 사실은 그렇지 않습니다.)
컴퓨터에 Ruby를 설치하는 방법에 대해서는 논의하지 않겠습니다. 아직 Ruby가 없는 경우에는 Node Version Manager를 사용하는 것과 같은 이유로 설치하는 것이 좋습니다Ruby Version Manager.
좋아, 그럼 너는 이미 Ruby를 설치했으니, 한번 해 보고 싶어!터미널을 열고 뛰어라 irb.이렇게 하면 대화형 루비가 시작됩니다!이것은 터미널에서 루비 코드를 테스트하고 실행하는 방법이다.
우리는irb에서 모든 내용을 작성할 것입니다. 그러나 원한다면 test.rb 라는 파일을 만들어서 모든 코드를 넣고 터미널에서 ruby test.rb 을 사용해서 실행할 수 있습니다.나는 주석을 사용하여 코드의 결과를 표시할 것이다.Ruby는 #가 아니라 //를 사용합니다.
우선, 너는 더 이상 분호를 사용할 필요가 없다!루비는 어떤 것도 한 줄을 끝낼 필요가 없다.예, 기술적으로는 한 줄에 여러 명령을 연결할 수 있지만, 한 줄을 끝낼 필요는 없습니다.마찬가지로 루비에서도 변수 선언은 간단합니다.var, let 또는 const가 더 이상 없습니다.반대로네가 쓰기만 하면 name = "Daniel".현재name 변수가 문자열로 설정되었습니다.
따라서 컨트롤러 로그처럼 몇 개의 변수를 설명하고 화면에 출력하려면 이렇게 할 수 있습니다.
name = "Daniel"
age = 34
puts "Hi my name is #{name} and my age is #{age}"
# Hi my name is Daniel and my age is 34
주의해라, 나도 몰래 빠져 들어갔다!그것은 자바스크립트처럼 보이지만, 단지 하나 # 가 아니라 하나 $ 를 사용했다.그러나 중요한 것은 Ruby에서는 JavaScript에서처럼 큰 따옴표나 거꾸로 묶음표가 아닌 더블 따옴표에만 적용된다는 것을 알아야 한다.
Ruby는 객체 지향 언어이므로 각 변수는 객체에 대한 참조입니다.즉, JavaScript에서 설명하는 단순 또는 기본 데이터 유형을 처리하는 방식에 차이가 없습니다.
우리 예를 하나 봅시다.
my_dog = "washburne"
my_favorite_dog = my_dog
my_dog.upcase!
puts my_favorite_dog
# WASHBURNE
보시다시피 변화my_dog변화my_favorite_dog.Ruby에서 멋진 약속이었기 때문에 우리가 어떻게 이 점을 해냈는지 이야기해 봅시다.Ruby에 내장된 메서드가 변수의 변경 복사본을 반환하는 경우 원래 복사본을 변경하기 위해 Ruby 끝부분에 !를 추가할 수 있습니다.또한 ? 로 끝나는 방법을 보았을 때, 이것은 브리 값을 되돌려준다는 것을 의미합니다.
당신만의 방법에도 좋은 약속!
또 다른 큰 변화는 자바스크립트에 대상이 있지만 루비의 등가물은 산열된다는 것이다.대상과 마찬가지로 산열도 키 값이 맞지만 키는 무엇이든 될 수 있다.이것은 루비 중의 유효한 해시이다.
my_car = {
  "color" => "blue",
  "wheels" => true,
  4 => nil
}
그래, 나는 이런 가치관들이 모두 무의미하다는 것을 안다.나는 단지 그것들이 가능하다는 것을 증명하고 싶었을 뿐이다.현재, 보통 산열을 사용할 때, 당신은 기호를 키로 사용한다.기호가 더 빠르고 변하지 않기 때문이다.설령 "Danny" == "Danny"가 사실이라고 해도 네가 검사"Danny".object_id == "Danny".object_id한다면 그것은 가짜일 것이다.이것은 그들이 서로 다른 대상을 가리키기 때문이다.
그러나 기호로서는 그렇지 않다.그것들은 같은 문자를 가진 두 기호가 완전히 같은 것처럼 보인다.그래서 :name 진짜예요.그래서 너는 이렇게 산열을 성명할 수 있다.
my_car = {
  :color => "blue",
  :wheels => 4
}
그러나 기호를 사용할 때는 더 짧은 문법을 사용할 수 있다.
my_car = {
  color: "blue",
  wheels: 4
}
JavaScript에서 온 누구에게나 익숙하다고 생각합니다.하지만 기억해야 할 것은 그것은 루비에서 일하는 방식이 좀 다르다는 것이다.주의해야 할 것은 이 변수의 정보를 점 기호로 접근할 수 없다는 것이다.색깔을 얻으려면 글을 써야 한다:name.object_id == :name.object_id.
이 작은 눈 루비가 용기를 내서 가봤으면 좋겠어.당신을 도울 수 있는 유용한 안내서가 많습니다.추천합니다The Odin Project.
그리고 나는 심지어 루비 사용my_car[:color]을 통해 평등성을 검사하는 것을 언급하지 않았지만, 나는 네가 이미 이 점을 알아차렸다고 확신한다.

좋은 웹페이지 즐겨찾기