LoginSignup
0
0

わたしの頭の中のRubyとJavaScript

Last updated at Posted at 2024-06-06

RubyとJavaScriptの学習を進めているうちに

『そもそも、Rubyってなんだっけ❓』 『JavaScriptとなにが違うの❓』
という疑問が湧き出てきたので、アウトプット用として記事を作成しました。

RubyとJavaScript

まず、プログラミング言語には2種類あります。
コンパイル言語インタプリンタ言語

簡潔にいうと、、、

インタプリタ言語(Ruby・JavaScript・Pythonなど)は、コードを実行する際に1行ずつ機械語に翻訳していく言語。

コンパイル言語(Java・C++・Objective-C・Go・swiftなど)は、ソースコードを1行1行ではなく一括で機械語に翻訳して、実行していく方式の言語

引用元に私の同期の方がわかりやすく記事にまとめているので参考にして見てください!

引用元:インタプリタ言語とコンパイル言語

現在学習中の言語、RubyJavaScriptはインタプリタ言語でした。
ここで、JavaScriptとRubyの違いをざっくりだけどまとめてみることに!

スクリーンショット 2024-06-08 18.47.32.png

JavaScriptとRubyのコードの違いについて

- 基本的な構文 -

[JavaScript]

function sayHello() {
    console.log("Hello, World!");
}
sayHello();

・ " function " キーワードを使用して関数を定義。
・ " console.log " を使ってコンソールに出力。

[Ruby]

def say_hello
  puts "Hello, World!"
end

say_hello

・ " def "キーワードを使用してメソッドを定義。
・ " puts " を使ってコンソールに出力。

- 変数の宣言 -

[JavaScript]

let message = "Hello, World!";
console.log(message);

・let、const、varキーワードを使用して変数を宣言。
・変数・関数共に基本「キャメルケース」で書く。

 [ 例 ]   function  createUserAccount(引数)

[Ruby]

message = "Hello, World!"
puts messag

・変数の宣言に特別なキーワードは必要なく、直接名前を付けて値を代入。

(※命名規則として英字、数字、_(アンダースコア)を使う。ただし、先頭に数字や大文字を使用することはできない。)

・英字はすべて小文字で書き、2単語以上をつなげるときは_を間にいれる。このような表記のことを「スネークケース」という。
ヘビみたいな ーー__ーー 形だからスネークケースらしい

   [ 例 ]  name user_name

現れたRubyのオブジェクト指向

Rubyのテキストを進めつつ、やっとJavaScriptに慣れてきたなあと
JavaScriptのオブジェクトに浸っていたら

突如現れた、Rubyのオブジェクト指向

そもそも、オブジェクト指向ってなんだ!って調べてみると、、、

オブジェクト指向とは、
「処理を部品化し、それらを組み合わせることで1つのプログラムを構築していくやり方」のことらしいです。

以下参照
引用元 :オブジェクト指向とは?具体例を交えてわかりやすく解説

[JavaScriptオブジェクト]
・JSのオブジェクトの構造はRubyでいうハッシュのようなもの。
・JSで扱われるデータであるオブジェクトは、なんらかの組み込みコンストラクタから生成され、そのプロパティやメソッドを使用できる。

[Rubyオブジェクト]

・Rubyの世界ではすべてのデータがオブジェクト。
この時扱っているデータという数値3や、"hello EK"の文字列などもオブジェクトになる。
そして、このオブジェクトにはそれぞれ所属先があり、
例えば3は整数だから、整数オブジェクト(Integerクラス)、
文字列だったら(Stringクラス)。その所属先のことをクラスという。
スクリーンショット 2024-05-24 14.17.03.png

最後に、、、

ここまで基本的なことを書いてみました。
ただ今、学習しているRubyを深掘りしていきたいので
次回の記事ではRubyのメソッドや使い方をアウトプットしていけたらなと思います!

まだまだ、改善の余地はありますので、指摘などご意見ください!!!

0
0
4

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0