初心者のためのプログラム言語の種類と特徴

1日 6月

プログラミング言語とは

プログラミング言語とは、コンピュータと対話するための言語です。英文のように記述するのが特徴で人間にわかりやすくできています。種類もたくさん(ホント無数に)あって、面白いことにそれぞれ書き方が違います。例えば「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を採用しているのはこういった理由からです。

Note: プログラミング言語、誰でも作ることができるのです(もちろん凄い技術は必要ですが)。有名なのは日本人である、まつもとひろゆきさんが開発したRubyでしょう。趣味としてつくった言語が今や世界中ですごい人気になっています。それぞれが理想のプログラミング言語を求めて日夜新しい言語が生まれています。

プログラム言語の種類と特徴

たくさんの言語があり、言語の中にもいくつものフレームワークが存在します。そして、その特徴が異なり、それぞれにメリット・デメリットがあります。作っていくプロダクトの性質を見極めて、適切な言語を選択することが重要です。Web系で使われる代表的なものを以下にまとめましたので、参考にしてください。

言語 特徴 フレームワーク 採用しているサイト PHP Webアプリ開発に特化した言語。HTMLの中に埋め込めて、すぐ動かせるので初心者が習得しやすい。安いレンタルサーバーでもほとんどPHPが動く。WordPressもPHPでできている。 CakePHP Facebook、Yahooなど Ruby たのしく幸せなプログラミングを目的とした言語。迅速な開発ができるのでスタートアップが採用することがすごく多い。そしてなんといってもRailsの存在が大きい。Railsを使うと迅速な開発と幸せなコーディングを実現してくれるのでプログラマには人気がある。 Ruby on Rails Twitter、Github、Basecamp, Cookpadなど Python Googleが採用しているのでGoogle言語とも呼ばれたりする。なんといってもフレームワークでdjango(ジャンゴ)が存在するのが大きい。ニューヨーク・タイムズのWebサイトはdjangoで作られているのは有名な話し。 django Google、NewyorkTimes、Pinterest、Instagram、Dropboxなど Perl 一昔前であればWebといえばPerlと言われるくらい人気があった言語。しかし、今は人気がなくなりつつあるのは否めない。プログラムを学ぶファーストチョイスとしては難しくなりつつある。 Mojolicious はてな、mixi、Livedoorなど Java 実行速度が速く、たくさんのアクセスをさばけるが、コーディングが面倒で、初心者が学ぶのも難しい。Rails並の簡単さでつくれるフレームワークはまだ存在しない。Androidの開発言語に採用されている。 AndroidStudio, GoogleAppEngine, Spring Evernote、Googleなど Objective-C ひとつ前のApple製品のプログラム言語。Mac, iPhone, iPadはこの言語で書く必要がある。きれいな英文に忠実で、英語が分かる人であればしっくりくるらしい。が、コードの量が多くなっていまい、少し面倒。アプリ開発しないなら必要がない Xcode iOSアプリ専用なので無し Swift 現在のApple製品のプログラム言語。Mac, iPhone, iPadはこの言語で書く必要がある。Objective-Cに比べるとRubyやPythonのような文法になっていて非常に書きやすくなっている。またスピードも速くなっている。 Xcode iOSアプリ専用なので無し Javascript Webブラウザで動作するプログラミング言語。例えば、GoogleMapのように画面切り替えなく地図を動かせるようなものはJavascriptで実現されている。Web開発するためには必須の言語である。 Node.js jQuery(ライブラリ)AngularJS ReactJS Javascript自体はすべてのWebサイトで使用されている

最後に

特徴はなんとなく解っていただけたでしょうか?しかしながら「でもどの言語を選べばいいのか?」と思いますよね。次回はそのどの言語を選ぶべき?について書こうと思っています。

無料ビデオ講座のお知らせ

Skillhub [スキルハブ]では無料の動画講座を多数公開しています。他校だと数万円するような講座が無料で受講できます。

無料講座一覧を見る