プログラミング言語とは、コンピュータと対話するための言語です。英文のように記述するのが特徴で人間にわかりやすくできています。種類もたくさん(ホント無数に)あって、面白いことにそれぞれ書き方が違います。例えば「Hello World」と表示するプログラムを書くだけでもすごい違いがあります。 Javaというプログラミング言語で書く場合は以下のように書きます。
public class Hello
{
public static void main (String [] args)
{System.out.println ("Hello, world!") ;}
}
はじめてプログラミング言語を見る人はげんなりするかもしれませんね「たかがHello Worldと表示するだけなのに、こんなに書くの!しかも意味がわからない英単語が並んでいる。。。」という感じになるでしょう。しかし、Rubyの場合だったら
puts "Hello, world!"
たったこれだけです。「おお!かんたんだ。じゃあ、Rubyでいいじゃないか!」と思うかもしれません。ところが、それぞれにメリット・デメリットがあります。RubyはJavaに比べて実行スピードが若干劣ります。なので、大量のアクセスなどがある場合やたくさんのデータを処理しなければいけない場合などはJavaの方が向いていると言えるでしょう。実際にTwitterはRubyで開発されていましたが、途中からScalaという言語に移行しました。理由は、やはり処理速度の問題でした。
しかし、Javaの場合は上のコードでもわかるように、Rubyに比べると人間にわかりづらく、プログラミングが面倒で、そのぶん開発に時間がかかってしまいます。なので、迅速に開発、例えばリーンスタートアップを実践するようなものであればRubyの方が向いているでしょう。アメリカのスタートアップの多くがRubyを採用しているのはこういった理由からです。
たくさんの言語があり、言語の中にもいくつものフレームワークが存在します。そして、その特徴が異なり、それぞれにメリット・デメリットがあります。作っていくプロダクトの性質を見極めて、適切な言語を選択することが重要です。Web系で使われる代表的なものを以下にまとめましたので、参考にしてください。
たのしく幸せなプログラミングを目的とした言語。迅速な開発ができるのでスタートアップが採用することがすごく多い。そしてなんといってもRailsの存在が大きい。Railsを使うと迅速な開発と幸せなコーディングを実現してくれるのでプログラマには人気がある。
Ruby on Rails
Twitter、Github、Basecamp, Cookpadなど
Webアプリ開発に特化した言語。HTMLの中に埋め込めて、すぐ動かせるので初心者が習得しやすい。安いレンタルサーバーでもほとんどPHPが動く。WordPressもPHPでできている。
laravel
Facebook、Yahooなど
Googleが採用しているのでGoogle言語とも呼ばれたりする。なんといってもフレームワークでdjango(ジャンゴ)が存在するのが大きい。ニューヨーク・タイムズのWebサイトはdjangoで作られているのは有名な話し。
django
Google、NewyorkTimes、Pinterest、Instagram、Dropboxなど
一昔前であればWebといえばPerlと言われるくらい人気があった言語。しかし、今は人気がなくなりつつあるのは否めない。プログラムを学ぶファーストチョイスとしては難しくなりつつある。
Mojolicious
はてな、mixi、Livedoorなど
実行速度が速く、たくさんのアクセスをさばけるが、コーディングが面倒で、初心者が学ぶのも難しい。Rails並の簡単さでつくれるフレームワークはまだ存在しない。Androidの開発言語に採用されている。
AndroidStudio, GoogleAppEngine, Spring
Evernote、Googleなど
現在のApple製品のプログラム言語。Mac, iPhone, iPadはこの言語で書く必要がある。Objective-Cに比べるとRubyやPythonのような文法になっていて非常に書きやすくなっている。またスピードも速くなっている。
Xcode
iOSアプリ専用なので無し
Webブラウザで動作するプログラミング言語。例えば、GoogleMapのように画面切り替えなく地図を動かせるようなものはJavascriptで実現されている。Web開発するためには必須の言語である。
Node.js jQuery(ライブラリ)AngularJS ReactJS
Javascript自体はすべてのWebサイトで使用されている
特徴はなんとなく解っていただけたでしょうか?しかしながら「でもどの言語を選べばいいのか?」と思いますよね。次回はそのどの言語を選ぶべき?について書こうと思っています。
わかりやすい動画レッスンHTML/CSS, JS, デザイン, WordPress, Railsなどがなんと無料。 募集人数には制限があります。サインアップはお早めに。
無料申し込み期限:
1月31日
まで
募集人数: 100名(残りわずか)