現在僕はプログラマーとして働いており、webアプリケーションの開発プロジェクトに携わっており、主にC#とJavaScriptを扱っています。
最近プログラミングに興味を持ち始め、エンジニアやプログラマーを志望する人が増えている傾向にあり、
まずは独学から始めるという人も多いと思いかと思いますが、はじめに悩むのがプログラム言語選びではないでしょうか。
プログラミング言語は世界中で使用されており、その数はなんと7,000以上に上ると言われています。
もちろんその中でもメジャーな言語は存在し、それらを中心に学習してスキルをつけていくことで、将来的に役に立っていくことは間違い無いでしょう。
この記事のタイトルにもありますが、まずプログラミング初心者の方にオススメなのが、Rubyと呼ばれる言語です。
そんなRubyのオススメポイントを紹介していこうと思います。
Rubyとは
Rubyとは、まつもとゆきひろ氏により開発された、主にwebサービス開発で使用されるスクリプト言語です。
世の中のあらゆるwebサービスに使用されている言語で、日本だけでなく、海外においても支持されている言語の一つです。
スクリプト言語という言葉が聞きなれないかもしれませんが、世の中のプログラミング言語は、
- コンパイラ言語
- スクリプト言語
に分けられています。
コンパイラ言語は動かす前の作業が少々面倒で、プログラムを実行するためには、
プログラマーが書いたソースコードを機械が認識できるように変換する作業が必要になります。(これをコンパイルと言います。)
しかしながら、Rubyを含めたスクリプト言語を動かす場合は、
コンパイルが一切不要なので初心者でも簡単に処理を実行させることができます。
スッキリコードを書くことができる
コードを書く際に決まりごとがあり、例えばC#においては変数の型を予め決めてから変数を宣言する必要があります。
例) string hoge=”WordPress”;
この[string]は変数に文字列を代入したい時に使用します。
このくらいは単純なのですが他にも細かいルールが存在し、規則に沿わないとエラーが発生したり、うまく動かないようなことがあリます。
コードが少し長めですがC#のソースコードの一例を挙げてみます。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
using System; class Program { public static void Main() { Menu menu1=new Menu("カレーライス", 700); menu1.Order(); } } class Menu { public string name; public int price; public Menu(string name, int price) { this.name=name; this.price=price; } public void Order() { Console.WriteLine("メニュー:"+this.name+" 価格:"+this.price+"円"); } } |
これは「メニュー:カレーライス 価格:700円」と表示させるためのソースコードですが、見るからに長々としているのがわかると思います。
特に初心者のうちはそういった部分に苦手意識を持ってしまう可能性があります。
それに対し、Rubyは
- 細かい規則が他の言語と比べて少ない
- コードも短くて容易
といったこともあり、初心者の方でもすっと入りやすい言語と言えます。
C#でやったように、Rubyでも「メニュー:カレーライス 価格:700円」と表示させるソースコードを紹介していきます。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
class Menu attr_accessor :name attr_accessor :price def initialize(name, price) @name=name @price=price end def order puts "メニュー:#{@name} 価格:#{@price}円" end end menu1=Menu.new("カレーライス", 700) menu1.order |
先ほどのC#ソースコードと比べるとスッキリしているのがわかるのではないでしょうか。
そのような面においてもRubyは書きやすく、人気が高い言語であると言えます。
日本語の情報が豊富
Rubyは日本人開発者によって作られた言語なので、日本語で書かれた参考ドキュメントも他の言語と比べて多いことも利点です。
エラーにはまった時に、慣れない作業を英語を読みながら行うことは骨の折れる作業です。
もちろんプログラミングを学びながら英語力をつける点では良いと思いますが、初めのうちはそんな余裕もないのが現状かと思います。
日本語ドキュメントを参照することで、効率よくコーディングに励むことができます。
学習サイトも見つけやすい
近年プログラミング言語を学習できるサイトやサービスが増えてきていますが、その中でもRubyを扱っているものは多い印象です。
中には無料で学習できるサービスもあるので、独学を行う上で心強い味方になるでしょう。
いくつかオススメのサイトを紹介していきます。
Progate
まず最初にオススメできるのがProgateです。
プログラミングの基礎を学習するには、数ある学習サイトの中でも一番の人気といっても良いくらいです。
Progateがオススメできる理由は、各言語の講座で1つの成果物を作り上げるという点です。
文法を学ぶことももちろん大事ですが、初心者のうちは文法や関数を覚えても、
どのようにそれらがシステムやサービスになっていくのかということがなかなかイメージしにくいかと思います。
例えば講座を通して簡単な計算アプリケーションを作成するので、どの機能がどのようなコードで動いているかを認識することができますし、
スライド形式の講義なので、イメージしにくい箇所は見直すこともできて頭の中にも残りやすいです。
無料会員でもある程度の講座を受講することができますが、
有料会員になっても月々980円ですので、リーズナブルに全講座を受講することができるのも魅力的です。
また、RubyのフレームワークのRuby on Railsの講座もあるので、Rubyの基礎を固めてから挑戦してより知識を深めていくこともオススメします。
Paiza
Paizaでも無料会員、有料会員別にRubyをはじめとするプログラミング言語の基本的な文法や関数を動画形式の講義で学ぶことができますが、
特筆すべきなのがIT/Webエンジニア特化のコーディング転職サイトということです。
これはとてもユニークでPaizaが提供するレベル分けされたプログラミングの問題をクリアすると、IT企業に応募することができるのです。
レベルは上から順に
- Sランク
- Aランク
- Bランク
- Cランク
- Dランク
- Eランク
と、6つに分けられており、企業が求めるレベルの問題をクリアすれば書類選考なしで面接に進むことができるという、
企業とPaiza会員に画期的な採用システムを提供しています。
また、どの言語を用いて問題を解いても良いので、自分の得意な言語を用いて問題を解いてスキルを高めていくのも良いでしょう。
ドットインストール
ドットインストールはプログラミング学習サイトの老舗的な存在で、プログラミング言語だけでなく、
環境構築の手順も学ぶことができるなど、幅広いメニューが人気です。
各講座の動画もおよそ3分間でまとめられており、要点を学びやすくなっています。
前述したProgateやPaizaと違って、実際に手を動かして何かを作るという講座はないので、
これだけで学習するのは物足りないかもしれません。
フレームワークのRuby on Railsがある
Rubyを学習していると、必ずといって良いほどセットで語られるのがフレームワークのRuby on Railsです。
フレームワークについて少し触れると、いわゆる開発をスムーズに行うための便利なツールで、これがまさにRubyを学ぶことの利点でもあります。
Ruby on RailsはRubyを使用して作られたフレームワークで、
Airbnbや食べログといったWEBサービスの開発に使われているほどの重要な役割を果たしています。
Ruby on Railsを使用することで、プログラミングを学び始めてそれほど時間が立っていなくても簡単なwebアプリケーション開発が可能です。
僕自身もRubyを学んだ後にRuby on Railsを学習してTwitterのクローンアプリを作成したことがあり、
目に見える形で目的物があると、モチベーションも高まりやすいのです。
プログラミングを学ぶ醍醐味はやはり自らの手でサービスやサイトを作ることであり、
それを効率よく手助けしてくれるのがRubyやRuby on Railsといった言語やフレームワークです。
これはなかなかC言語やJava(もちろんこの2つの言語もシステム開発において重要なウェイトを占めています。)では味わえないことだと思います。
まとめ
Rubyはプログラミング初心者にオススメの言語ではありますが、それでいて世の中を動かすサービスにおいても使用されています。
特にweb系のベンチャー企業では、Rubyを書くことができるプログラマーやエンジニアを求めているところも多く、まだまだ需要は伸びていくと思われます。
また、数年経験を積めばフリーランスとしての道も開ける可能性もあるのがRubyやRuby on Railsで、学ぶメリットはいくつもあります。
プログラミングを始めたいけどどの言語を選べば良いかわからない場合は、将来のことも考慮してRubyを選んで学習していくのはいかがでしょうか。
コメント