
「プログラミング言語って実際、何をするのに使われているの?」

パソコンやスマホの中でたくさん動いているよ~
プログラミング言語という言葉は知っていても、これから学習を始めようと思っている人にとってはイメージがつきにくいですよね。
私はシステムエンジニアとして20年間活躍する中で、さまざまなプログラミングを行ってシステムを開発してきました。世の中の身近なところはもちろん、普段の生活では目にしないところでも、いろんなプログラムが使われていることを知ったことは衝撃的でした。
そこでこの記事では、プログラミング言語が世の中のどんなところで使われているのか、エンジニアしか目にすることがない世界も含め、文系の人でも分かるようにざっくり解説していきます。
プログラミング言語のポテンシャルの高さを感じることができれば、プログラミング言語を学ぶモチベーションアップにもきっとつながるはずです。
プログラミング言語は「コンピュータに任せたいこと」を伝える言葉
プログラミング言語とは、コンピュータにやってほしいことを指示するための言語です。

う~ん、「コンピュータに指示する」って例えばどういうこと?

じゃあ、身近なスマホアプリで説明します!
たとえば、スマホのカメラアプリを考えてみてください。
シャッターボタンを押すと、「カメラの映像をスマホ本体に取り込む」「SDカードにファイルを保存する」「シャッター音を出す」「画面の下部に撮った映像を小さく表示する」など、様々な処理が行われますよね。
このような「ファイルを保存する」「シャッター音を出す」といった動作は、プログラミング言語で書くことで実現できているのです。
以下は、Androidのカメラで撮影したファイルをSDカードに保存するプログラムの一部です。Javaというプログラム言語で書かれています。
File cameraFile = new File(context.getExternalFilesDir(Environment.DIRECTORY_DCIM), "example.jpg");
Uri cameraUri = FileProvider.getUriForFile(
MainActivity.this,
context.getPackageName() + ".fileprovider",
cameraFile);
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
intent.putExtra(MediaStore.EXTRA_OUTPUT, cameraUri);
startActivityForResult(intent, RESULT);

これがプログラム??難しそう・・。

File, DCIM, Media, CAPTUREといった単語、スマホで見かけたことはないかな?こういった単語を組み合わせて、文章を作っていくんだ。
Webサイトやアプリ、業務システムなどプログラムはいろんなところにある
では、世の中では、どのようなところでプログラムが動いているのでしょうか?
- Webサイト:ECサイトやブログなど
- スマホアプリ:Chrome、Twitter、Yahoo!天気など
- OS:Windows 10やMac OS X、Android OSなど
- 業務システム:販売管理システム、配送システム、決済システム、Webサイトコンテンツ管理システムなど

「業務システム」ってイメージが湧かないんだけど・・・

企業が日々、仕事をするために使っているシステムやツールのこと。たとえばECサイトを運営している企業は、売り上げを確認するために販売管理システムを使ったりしているよ。
Webサイトやスマホアプリでプログラムが動いているのは、イメージがつきやすいと思います。
スマホアプリはサーバーと通信していて、サーバー上でもプログラムが動作しています。たとえば、Twitterサーバーでは、データベースに保存されている最新のツイート情報をアプリに送信する、というプログラムが動いています。
最後の業務システムは、イメージがつきにくいかもしれないですね。主に企業活動で使うシステムなので、一般の人が目にすることはありませんが、実際のところ、さまざまなソフトウェアが動作しています。
このほか、データベース上で動くプログラム言語などもあります。
このように、プログラミング言語を学べば、世の中の様々なシステムのプログラミングに携わることができるんです。

プログラミングって私たちの生活になくてはならないものなんですね!

その通り。プログラミング言語を学ぶと、とても役に立つんだ。
プログラミング言語の種類
プログラミング言語は、さまざまなプログラムに使われているのですが、種類もたくさんあります。
その中で、主なプログラミング言語を挙げてみました。

プログラミング言語っていっぱいあるんだね。違いってあるの?

プログラムが動く場所や処理内容によって、プログラム言語が決まってくるよ。
プログラミング言語は、それぞれ得意分野や不得意分野があります。なので、用途によってプログラミング言語を使い分けたりしています。
たとえば、最近はやりの「AI」関係だと、Pythonが人気です。金融系の処理だとJava、一般的なWebサイトやブログならPHPやJavaScriptが多いです。
学習するプログラミング言語をこれから決めるという方は、将来、自分が活躍したい業界から決めると役に立つと思います。
プログラミング言語にもトレンドがある
プログラミング言語には10年周期で流行り廃りがあります。
私が大学生のときに始めて触れた20年前は、C言語やPerl、Fortranが主なプログラミング言語でした。
今も一部のプログラムでは使われてはいるものの、利用シーンが限定的です。
これから学習するなら、現在主流になっているPythonやRuby、PHP、JavaScriptなどを選びましょう。
C言語やPerlは一切勉強する必要はありません。
まとめ
プログラミング言語の用途や種類、トレンドについて説明してきました。
知っておいてほしいことは、今流行りのプログラミング言語を1つ学んでおけば就職・転職にものすごく役立つ、ということです。
自身の将来のためにも、プログラミング言語を習得してみてはどうでしょうか。