LoginSignup
5
0

More than 5 years have passed since last update.

WebディレクターだけどRubyとJavaScriptを比較してみた雑感

Last updated at Posted at 2018-12-13

こんにちは。
こちらはLIGのアドベントカレンダー14日目の記事です。

株式会社LIGでWebディレクターをやっているともぞうといいます。
私はエンジニア出身でもなんでもないんですが最近Rubyをはじめました。
自分でサービスのつくりたいなーって思って。
Ruby on Railsつかってつくるぞ〜って気持ちです。

そんなこんなで、本稿ではさわり始めたRubyでこれ便利やんけと思ったものをちょっとさわったことのあるJavaScriptと比較していきます。

前提として

JavaScriptは4年前くらいにJQueryで少し書いたことがあるくらいです。
なので、手に持ったマサカリは懐にしまってください。

繰り返しようのメソッドが用意されている

timesメソッドというものが用意されていてとても簡単に繰り返し処理をおこなえました。

10.times do
 処理させたい内容
end

JavaScriptで同じことをやろうとすると……

for(var i = 0; i < 10, i++){
 処理させたい内容
}

Rubyの記述が13文字に対して、JavaScriptは22文字でした。
9文字も少ないです。
指が疲れにくい。

文字列と変数の連結が楽な気がする

Rubyだと変数を#{変数名}#{}でくくるだけで文字列に入れることができます。

str = "変数の文字"
p "#{str}です"

JavaScriptだと……

var str = "変数の文字"
console.log(str + 'です');

みたいに +でつなげる必要があります。
個人的に+が可読性を残っている気がしていて、Rubyのほうが楽な気がしました。

偶数か奇数の判別が楽

.odd?メソッドで奇数だった場合はTrueを返し、.even?メソッドを使うと偶数の場合Trueを返してくれます。

if 10.even? then
    p "偶数でした"
else
    p "奇数でした"
end

JavaScriptだと10 % 2 == 0みたたいに計算させる必要がある
こんな具合に

if(10 % 2 == 0){
    console.log("偶数でした");
    }else{
    console.log("奇数でした")
}

配列の合計を出してくれる

sumメソッドを使うだけで合計を出してくれる

nums = [1, 2, 3, 4, 5]
p nums.sum

JavaScriptだとfor文つかったりと結構面倒そうです。
以下のサイトを見ました。
http://shanabrian.com/web/javascript/sum-number-value.php

さいご

まだまだRuby触りたて & JavaScriptたいして知らないんですが、Rubyは便利なメソッドが多く用意されているなーという気がします
JavaScriptはfor文やif文といった構文をうまく使っていく必要がある気がします。

雑感としては………

JavaScriptは構文をベースに自力で処理(偶数判定の処理とか)を考える必要があって、エンジニア脳が鍛えられそうな一方、手法が複数あるので初心者はどうすりゃいいんじゃああってなりそうだって気がしました。

Rubyは便利な道具がそろっているのでとてもとっつきやすい気がします。
シンプルな書き方(括弧書かなくていいとか)も相まってなんとなく読みやすいですし。

こういう違いRubyが初心者向けにもおすすめされている理由なのかなんて思いました。
以上です。

明日は誰かの何かみたいです。
とても楽しみです。

5
0
1

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
5
0