まだまだ人気が伸び続けているプログラミング。2020年からは小学校でも教育が必修化され、ますます私たちの生活に身近な存在になっています。

プログラミングの重要性を理解していても「プログラミングって、具体的には何ができるんだろう?」と思っている方は多いのではないでしょうか。

そこで今回は、

  • プログラミングでできること
  • 人気のプログラミング言語

をご紹介します。

プログラミングとは

プログラミングとは一言でいうと、プログラムを作ることです。プログラムとは「コンピュータへの命令文(指示書)」です。

まず大前提として、コンピュータは命令されたとおりの行動しか行えません。たとえば近年は人工知能(AI)が盛んですが、それらはすべて「多くの命令の上に成り立った人工知能」であり、命令の一切ないコンピュータは何も実行することができません。

そんなコンピュータに対して、人間が命令文を一つひとつ積み上げていき、コンピュータにさまざまなことを実行させる作業がプログラミングなのです。

プログラミングでできること

プログラムがコンピュータへの命令文である以上、プログラミングでできることとはすなわち、コンピュータができることと同義です。

ではコンピュータができることとは何でしょうか。

極めてシンプルに言えば「計算すること」です。ただし、ただ「計算する」といっても、それをプログラミングで何重にも組み合わせていくことで、コンピュータはより複雑なことを実現できるようになります。

できることのうち、代表的なものを以下に7つピックアップしました。

1. 高度な計算をできる

気象予報や地震の予測、さらには遠く離れた天体の動きなど、膨大なデータと複雑な式によって初めて導けるような高度な計算は、プログラミングが得意とすることです。

人の手ではいくら時間があっても計算しきれないようなことも、ハイスペックなコンピュータとプログラミングがあれば瞬時に算出できます。

たとえば学術研究の分野では、国産のスーパーコンピュータ『京』を活用して、高度な計算・シミュレーションが行われています。

2. WEBアプリを作れる

私たちが普段見ているSNSやブログ、さらに自分のスマホの契約状態や銀行口座の残高をネット上で確認できるWebサービスなどは、Web上でプログラムが動くことで実現しているアプリケーションです。

プログラミングでは、以下のようなWebアプリを作ることができます。

  • Googleのような検索エンジン
  • 食べログのようなレシピ検索サービス
  • Amazonのようなネットショッピングサービス
google

▲出典:Google検索

Webアプリはネットにアクセスするためのブラウザさえあれば、スマホやPCなど媒体を問わず利用できるので、利便性に優れています。

3. スマホアプリを作れる

プログラミングで作れるアプリケーションは、Webアプリの他にもあります。普段使用しているスマホにインストールされているアプリ(モバイルアプリ)もまた、プログラミングが使われています。

スマホアプリはWebアプリとは異なり、スマホ上でプログラムが動くアプリケーションです。そのため、カメラや加速度センサーなどスマホの端末に備わっている機能にアクセスすることもできます。

また、プログラムをスマホ自体にインストールできるスマホアプリは、Webアプリに比べて動作が軽く、ログインやWebページにアクセスする手間もかかりません。そのため頻繁に使われるLINEなどのチャット・通話アプリは、スマホアプリとして開発されています。

Line

▲出典:LINE

4. OSを作れる

スマホやPCそのものを動かすためのシステムである「OS(Operating System)」もまたプログラミングでできています。PCならWindowsやMac OS、スマホならAndroidやiOSなどが代表的なOSです。

OSがなければコンピュータを操作するのはもちろんのこと、自身の記憶装置にアクセスしたり書き込むこともできませんし、そもそも何かを画面に表示することもできません。

ただし「OSもプログラミングでできている」とは言っても、そのプログラムはとても複雑かつ長大なものです。個人がまともにそれらしいPCやスマホとして動作するOSをプログラミングで作ろうと思ったら、途方もない量の知識とプログラミングのスキルが必要になります。

もちろん個人開発でOSを作るのも、プログラミングの楽しみ方のひとつです。

▲出典:macOS Catalina

5. 工場で使用される機械や車などの大型機器のシステムを作れる

パンや和菓子を作る製造工場で使われる大量生産用の機械や、自動車や冷蔵庫などの大型機器もまた、プログラミングでその動きを制御しています。

たとえば国産の工業機器では、レオン自動機株式会社の『火星人』シリーズが有名です。火星人は、和菓子や肉まんなどの包餡(餡を生地で包むこと)に特化した工業機器。国内での圧倒的なシェアはもちろんのこと、国外でも100か国以上で使用されています。

大型機器は複雑なものになればなるほど、プログラムは膨大になります。自動車のような高度かつ安全性の高い制御が求められるシステムでは、なんと1000万行を越えるほどのプログラムが書かれていることもしばしば。

一方で簡単なシステムであれば、たった数行のプログラムで済むこともあります。

6. 業務を自動化できる

Excelやスプレッドシートなどの表計算アプリをはじめ、PC上で行うさまざまなタスクはプログラミングで自動化できます。たとえば、プログラミングでは以下のような作業を自動化し、作業効率を上げられます。

  • データの入力/集計
  • ブラウザの自動操作
  • PC上のファイル編集
  • メール自動送信

業務自動化の中でも、スプレッドシートやドキュメントなどのGoogleが提供する「Google Apps Script」や、Excel計算の自動化を行える「VBA」は、プログラミング入門者が業務自動化をはじめるのにぴったりのプログラミング言語です。

7. プログラムを学習させてAIを作れる

近年注目されているAIもまた、プログラミングでできています。

膨大なデータを繰り返しプログラムに学習をさせることで、AIは作られます。AIが適切な判断をくだせるようになるには、何千・何万ものデータを学習する必要があるといわれていますが、その長い学習プロセスにも、プログラミングが活用されています。

優れた学習を行えるプログラムがあれば、これまでのIT機器ではできなかったようなことをAIは実現できるようになります。

人間の声を聞き取って会話をするAIや、カメラで撮影した画像から肌年齢を測定するAIなどのほか、近年では医療現場や研究機関で活躍できるAIも作られています。

街中でときおり見かける『Pepperくん』も、AIが活用されている製品のひとつです。感情を生成するAIで、心を持っているかのように振る舞うのが特徴です。

各プログラミング言語でできること

私たちが普段話す言語に「日本語」や「英語」があるように、プログラミングにも性質や特徴の違うさまざまな言語があります。これを「プログラミング言語」といいます。

プログラミング言語は、その言語ごとに得意とする領域が違います。各プログラミング言語でできることを以下にピックアップしてみました。

JavaScriptでできること

JavaScriptは、ブラウザ上で表示される画面を操作することが得意なプログラミング言語です。

たとえばユーザーの操作に合わせて画面を変化させたり、ローディング時のアニメーションを動かしたりできます。

近年では活躍の場を増やしており、ブラウザ上で動くアプリやスマホアプリも作れるようになりました。

現在では、ほぼ全てのWebページにJavaScriptが使われています。

Javaでできること

Javaはさまざまな分野で活躍している、汎用的に使えるプログラミング言語です。

Javaを使えば、Webアプリやスマホアプリの開発のみならず、近年脚光を浴びている『IoT(Internet of Things:インターネットに接続して機能の拡張を実現したさまざまなモノ)』の開発もできます。

Javaは世界中のさまざまなプロジェクトにおいて採用されています。

【Javaが使われているWebサービス例】

  • Twitter
  • Evernote
  • Minecraft
  • Google
  • 楽天

Pythonでできること

Pythonは、AI開発の分野で近年注目を浴びているプログラミング言語です。

Pythonを使えば、大量のデータセットからAIに学習させたり、画像の加工や特徴の取得、データの分析などを行ったりできます。

また、WebサービスやPC上で動くアプリを作ることも可能。

【Pythonが使われているWebサービス例】

  • YouTube
  • Instagram
  • Dropbox

PHPでできること

PHPは、Web開発に特化したプログラミング言語です。

PHPを使えば、ブログやSNSなどさまざまなWebアプリを作成できます。

とくにPHPで構築されたWordPressというフリーのブログソフトウェアを使えば、管理画面や投稿記事、固定ページなどでできたWebサイトやブログを迅速に開発でき、簡単に管理できます。

PHPの扱いに長けていれば、WordPress自体の機能を拡張して、自由にWebサイトをアレンジすることもできます。

【PHPが使われているWebサービス例】

  • Facebook
  • Wikipedia
  • Slack
  • WordPress

Rubyでできること

Rubyもまた、Web開発を得意とするプログラミング言語です。

PHPと比べて習得はやや難しいとされる言語ですが、使いこなせばより複雑なWebアプリを短時間で作れます。

【Rubyが使われているWebサービス例】

  • 食べログ
  • クックパッド
  • Airbnb
  • グノシー
  • Hulu

Go言語でできること

Go言語(Golang)はJavaと同じく、さまざまな分野で活躍できる汎用的なプログラミング言語。2009年にGoogleによって開発された、比較的新しい言語です。

なかでもGo言語が得意とするのが、速度を求められるWebサービスの開発。Go言語ではある特定の情報をピンポイントに高速で取得するWebサービスを比較的簡単に構築できます。

【Go言語が使われているWebサービス例】

  • メルカリ
  • AWA
  • Schoo
  • MIIDAS

プログラミングを学べるおすすめスクール&Webサービス

未経験者がプログラミングを効率よく学習していくには、プログラミングスクールやプログラミング学習用のWebサービスを活用するのがおすすめです。

以下の記事で東京都内の優良スクールをピックアップしているので、現在スクールに悩んでいる方は読んでみてください。

またスクール同様に、プログラミング学習用のWebサービスも豊富です。以下の記事でプログラミング学習におすすめなWebサービスをピックアップしているので、これからプログラミング学習をはじめる人はチェックしてみましょう。

おわりに

プログラミングを使えば、学術用の高度な計算だけではなく、Webアプリやスマホアプリの開発、AI開発などができます。

またプログラミングの能力は、仕事の作業効率を上げるのにも役立ちます。

さらに今後IT化が進んでいけば、いまはまだ存在しない新しい形態のITサービスも、プログラミングの力で生まれていくことでしょう。

興味のある方は、さまざまなことを実現できるプログラミングのスキルを身につけて、仕事やプライベートに応用してみるのがおすすめです。

(執筆:sig_Left 編集:Sato Mizuki)

SHARE

RELATED

  • お問い合わせ
  • お問い合わせ
  • お問い合わせ