「プログラミング言語」の種類と特徴をご紹介!

Web

2021.03.17

programming

コンピューターにやってほしいことを言葉にしたものがプログラムであり、コンピューターが理解できる言葉・言語をプログラミング言語といいます。
プログラミングでWebサイトやWebアプリケーションの作成、ゲーム開発、業務の自動化などができるのですが、開発したい種類によって学ぶべき言語は変わります。
この記事では、どんなプログラミング言語があるのかをご紹介します!

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

さまざまな特性を持ったコンピューターは使える言語が違うため、プログラマーと呼ばれる人でもいくつもの言語を扱えるわけではありません。ただ書き方が似ているものもあり、習得するハードルが低いものもあります。
主要なプログラミング言語とその特徴を以下にまとめました。

CSS(シーエスエス)

Webサイトのパーツのデザイン(色、形、大きさなど)を適用し、レイアウトできるプログラミング言語です。

  • ユーザーのアクションには対応できないが、「ホバー」のみ可能
  • アニメーションなどを駆使すればjsなしでもスライドショーなどの作成が可能
  • Sass、Scss、LessなどのCSSプリプロセッサ(CSSが簡単で不完全であるがゆえに起こる破綻を回避すべく開発されたメタ言語)が存在

Javascript(ジャヴァスクリプト)

スライドショー、カルーセルなど、Webサイト上の動きのあるもののほとんどがJavascriptで作られていると言えます。

  • ユーザーのアクションに呼応してイベントのトリガーを設定できる(クリックしたらメニューを開く/閉じる、スクロールされたら表示する など)
  • サーバーサイドでも動作するので、サーバーからデータを取得して表示することも可能
    例)郵便番号を入力すると住所が自動入力される機能
    例)facebook、slack、Google系アプリなどに見られる非同期更新
  • node.jsの使用により、サーバーサイドのシステムの構築も可能
  • Webデザイナーが比較的使い慣れているJavascriptでサーバーサイドの開発も行えるが、実際の開発難易度は高い
  • フレームワーク「React Native」により、AndroidとiPhoneどちらにも対応したアプリを作れる(Facebook作成のフレームワーク「React」のアプリ版)

jQuery(ジェイクエリ)

Javascriptのライブラリ。Javascriptを少ない記述で直感的に書くことができます。

例)test01というIDの要素を取得するコード比較
var sample= document.getElementById(‘test01’);
var sample = $(‘#test01’);

メリットも多いですが、「jQuery自体がそれなりに長いコードなのでサイトが重くなる」「バージョンによってはライブラリ(スライダーなど)が動かない」「不具合が発生した時に要確認箇所が増えてしまう」というデメリットもあります。

PHP(ピーエイチピー)

サーバーサイド言語であり、ローカルではMamp、Xamppなどで仮想サーバーを建てないと動きません。

  • 動的に描画するページの生成(ユーザー、状況によって表示内容を変えるなど)
  • WordPress、Concrete5、EC-CubeなどのCMSに使用
  • html内に記述してif文などを組み込めるため、CMS的な外部ファイルの出し分けや表示分けを静的サイトでも実装できる
  • 変数も使えるので、ページタイトルやmeta descriptionなど、ページ内に複数使われる文章などに使うと更新時のメンテナンス性が向上する

Python(パイソン)

Webアプリの構築、AI、データ分析に使われます。
youtube、instagram、dropbpxなどに使用されているそうです。
例)ある程度会話ができるように学習するチャットボットなど

Java(ジャバ)

Androidアプリ制作で使用されています。
また業務系システム、Webサービス(Twitter、Evernoteなど)、家電製品、カーナビなど様々な分野でも使用されています。

  • iOSでは動かないため、iOSアプリには使用しない(変換すれば一応動くようだが現実的でない)

Objective-C(オブジェクティブ シー)

学習難易度が高いAppleアプリの基盤言語です。

  • 2014年以降、徐々にApple開発のSwiftに置き換わっているが今も現役
  • Windowsでも使用可能
  • Javaとは逆にAndroidで動かないが、変換すると使える(多分現実的でない)

Swift(スウィフト

2014年にAppleが開発した、Apple向けアプリに使用されている言語です。

  • Objective-Cより高速かつ学習コストが低い
  • 開発環境がAppleのXcodeに限られるため、windows環境では開発ができない。そのためアプリ開発はAndroidとiOSで異なる言語で同じものを開発する必要がある

Dart(ダートもしくはダーツ)

GoogleがJavascriptの代替を目指して2011年に開発した言語です。

  • フレームワーク「Flutter」を使用することで、AndoroidとiPhoneのアプリを一つの言語で開発可能
  • 比較的新しいため、日本語の情報が少ない

Ruby(ルビー

まつもとゆきひろ氏という一人の日本人が開発した言語です。

  • 開発にはフレームワーク「Ruby on Rails」を使用することが多い
  • CSSのプリプロセッサ、Sassの開発環境の構築に使用
  • 1995年製だがまだ需要は多い言語
  • Webアプリケーションが得意(CMS、ECサイト、SNSなど)
    例)クックパッドairbnb

Perl(パール)

Webアプリ、システム、ECサイトなどに使用されています。
万能な言語ですが1980年代製と古く、PythonやRubyなどの特化した言語に押され気味。 

Kotlin(コトリン)

25年前から使われているJavaの冗長性を解決するために開発された言語で、Javaと互換性を保ち、Javaよりも簡単に安全に、という目標で開発されました。
Kotlinとはフィンランド語で「やかん」の意味です。

  • Androidアプリなどに使用
  • 2011年製

C#(シーシャープ)

まぎらわしいですが、C言語、C++とは関係ありません。(C++とJavaを元に作られた言語だが互換性なし)

  • マイクロソフト開発の言語であり、MSN、Bingなどで使用
  • Webアプリ、ゲーム開発などが得意

C++(シープラスプラス)

C++はC言語を機能拡張した言語で、略して「シープラプラ」または「シープラ」とも呼ばれています。

  • ゲーム、ロボット、OSなど様々なものに使用される
  • コンパイル型であり、処理速度はとても速い
  • Google Chromeとその拡張機能に使われている

Go(ゴー)

Googleが2009年に開発したプログラミング言語です。

  • 2018年度のプログラミング言語年収ランキングで1位を獲得
  • シンプルで学習が容易でありながらWebサーバ構築、スマホ向けネイティブアプリなどの作成が可能
  • シンプル故に例外処理ができない(代替措置あり)、拡張性の低いコードになりやすいなどのデメリットもある

プログラミング言語の用途別まとめ

上記で紹介したプログラミング言語を用途別にまとめました。

【Webサイト】

  • HTML(正確にはプログラミング言語ではなくマークアップ言語)
  • CSS
  • Javascript(jQuery)
  • PHP

【Webアプリ】

  • Ruby
  • C#
  • C++
  • Python
  • Perl

【Androidアプリ】

  • Kotlin
  • Java
  • GO
  • Dart

【iPhoneアプリ】

  • Swift
  • Objective-C
  • Dart

さいごに

身近な生活でコンピュータは活用されています。2020年度からは小学校においてもプログラミング教育が必修化されましたよね。
プログラミング言語は弊社事業部においても関わりは深いので、トレンドは常に追いかけ、情報収集しています。
Webやデジタルコンテンツに関してご相談などありましたらお気軽にお問い合わせください!
お問い合わせ

お気軽にお問い合わせください。

CONTACT