RubyとJavaScriptの違いとは【メンターが回答】

「RubyとJavaScriptの違いとは」という質問にTechAcademyのメンターが回答しています。使い方をぜひ理解しておきましょう。

TechAcademyマガジンはオンラインのプログラミングスクールTechAcademy [テックアカデミー]が運営する教育×テクノロジーのWebメディアです。初心者でもすぐ勉強できる記事が2,000以上あります。

※TechAcademyに実際に寄せられた質問に現役エンジニアのメンターが回答しました。

 

田島悠介

質問に対して現役のエンジニアが回答していくシリーズだね!

大石ゆかり

今回はどういう質問でしょうか?

田島悠介

今回は、Rubyに関する内容だね!実際に回答してもらった内容を紹介するね!

大石ゆかり

お願いします!

質問

RubyとJavaScriptを勉強中です。

JavaScriptにしかできなくてRubyにはできないこと、またRubyにはできるがJavaScriptにはできないことなどありますか?

ふたつの言語の主な特徴はなんでしょうか。

また、コーディングの際、基本はRubyで書いて、JavaScriptにしかできないところはJavaScriptで書く、みたいなことはできるのでしょうか?

 

自分で試したこと

初心者が最初に習う言語をぐぐった所、とっつきやすいこと、汎用性が高いためこの2つを習っています。

個人的な印象としては、

  • Ruby:シンプルで簡単
  • JavaScript:複雑で難しい

というイメージです。

 

[PR] Rubyのプログラミングで挫折しない学習方法を動画で公開中

メンターからの回答

Webアプリケーション、という文脈で説明をするなら、Rubyがサーバサイドで実行され、JavaScriptがクライアントサイドで実行される、という違いがあります。

言語仕様的なコンテキストでいえば大きな違いはありません。両言語で四則演算や文字列操作など様々なことが可能です。

 

ふたつの言語の主な特徴

繰り返しになりますが、クライアントサイドで動くのか、サーバサイドで動くのかがもっとも大きな特徴/違いです。

 

クライアントサイド(ブラウザ)でプログラムを動かしたいなら、JavaScriptを使うしかありませんし、Ruby製のサーバでプログラムを動かしたいならRubyで書くしかありません。

要は、何をしたいかでプログラミング言語は決まるんです。例えば、ブラウザで画像を動かしたいならJavaScriptしかありません。

まとめになりますが、両言語の言語仕様でできることの違いはありません。ただし、実行できる環境が違います。

1つのプログラミング言語に精通していれば、その知識を他言語に転用することは簡単です。

学習の目的にも依りますが、まずは1つの言語での理解度をあげることをおすすめします。

ちなみに、「Webアプリを作る」という文脈でいうとJavaScriptを書くコード量はとても少ないので、都度ググるだけで十分です。

 

Rubyとは

普段見ているWebサービスの裏側の処理を行うのに使われているプログラミング言語です。

Rubyの開発者がまつもとゆきひろ氏という日本人であるのも特徴で、多くの日本人に使われている理由にもなっています。

  • 会員登録機能
  • ログイン機能
  • 投稿機能(SNSなど)
  • メール送信機能

とあるサイトに会員登録をすると「〜〜様、仮登録ありがとうございます。」といったメールを見たことがある人も多いと思いますが、この流れは裏側でプログラムの処理が行われています。

登録された情報をもとにメールを送ったり、ログインができるようにするなど目には見えにくいですが、Webサービスを作る上では柱になる部分です。

 

JavaScriptとは

JavaScriptは、Rubyと同じくプログラミング言語の一つですが、Webサイトの外観や表側の動きを見せるために使用します。

Webサイトをより使いやすくするためにもJavaScriptは必須の技術です。

  • ログインしたら自分のアイコンに変わる
  • フォローしたら色が変わる
  • クリックしたら何か表示される

Facebookでいいねをすると色が変わるかと思います。Twitterもアカウントをフォローすると色が変わったり、Instagramもいいねをするとハートがピンク色になります。

目に見える形で動きを作るのがJavaScriptの役割になります。

 

Ruby on RailsでJavaScriptを使用してみる

実際にRubyとJavaScriptがどんな役割を持っているのかイメージできるようRuby on Rails(Rubyのフレームワーク)とJavaScriptを使用して実装を行ってみます。

今回は、「javascriptsample」というファイルをRailsコマンドで作成し、JavaScriptで動きをつける流れを説明していきます。

 

ターミナルで以下のコマンドを打ちます。

railsコマンドでファイルや機能の大枠を用意します。

rails new javascriptsample
cd javascriptsample
rails g controller static_pages index

 

次に、JavaScriptを使用して、ボタンを押すとボタンの色が赤くなるように変更をします。

以下のコードを「index.html.erb」というファイルに記述します。

<button id = "button1" onclick="effect()">ボタンを赤にする</button>
<script type="text/javascript">

function effect(){
  var button1 = document.getElementById("button1")
  button1.style.backgroundColor = "red";
}

</script>

それで作成されたボタンをcssでレイアウトを整えると、以下のような表示になります。

スクリーンショット 2016-04-01 17.22.15

そしてボタンを押すと以下のようになります。

スクリーンショット 2016-04-01 17.22.27

JavaScriptを使用する事で、サイトの見た目を格段にリッチにする事が出来ます。

 

大石ゆかり

回答分かりやすかったです!

田島悠介

ゆかりちゃんも分からないことがあったら質問してね!

大石ゆかり

分かりました。ありがとうございます!

他にもメンターが回答したRubyの三項演算子とはの記事も合わせてご覧ください。

 

TechAcademyでは初心者でも最短4週間でエンジニアになれるRuby on Railsオンラインブートキャンプを開催しています。

現役エンジニアがパーソナルメンターとして受講生に1人ずつつき、マンツーマンのメンタリングで学習をサポートし、最短4週間でオリジナルWebサービスを開発することが可能です。

また、現役エンジニアから学べる無料のプログラミング体験会も実施しているので、ぜひ参加してみてください。