プログラミングでできること・作れるもの

プログラミング

プログラミングにもいろいろありますが、規模によって、おおきく下記のように分類できます。

規模の大きい順に並べました。

  • 大型コンピュータ、スーパーコンピュータ、ホストコンピュータ
  • WS(ワークステーション)、小型コンピュータ
  • PC(パーソナルコンピュータ)
  • スマートフォン、携帯電話
  • マイコン(マイクロコンピュータ)、組み込みコンピュータ

規模の大きいコンピュータほど、大量のデータ処理を行います。そのため処理速度も高速です。どのコンピュータであっても、プログラミングによって動きます。

サーバーと呼ばれるコンピュータは、いろいろなサービスを提供するコンピュータ全般の事をさしますが、一般的に、大型やホストコンピュータから、ワークステーション、小型コンピュータで処理されます。

サーバーが提供しているサービスを受けるためにもコンピュータが必要です。それらのコンピュータはクライアントとも呼ばれ、おおよそパーソナルコンピュータ、スマートフォン、携帯電話を使います。

どのコンピュータもプログラムと呼ばれる処理手続きに従って動いていますが、その役割によってプログラムの種類もいろいろあります。

処理の目的によってプログラミングを分類すると、

  • Webサイト(ホームページ、ブログ、ECサイトなど)
  • 数値計算・解析(天気予報、素数の計算、宇宙観測など)
  • アプリ(SNS、メール、写真撮影、動画編集、音声通話など)
  • ゲーム(アプリの一種ともいえる。任天堂スイッチやプレイステーションなどのゲームなど)
  • 業務処理支援(EXCEL、WORD、事務処理)
  • 工業製品(レジやATM、自動販売機などの端末装置)、ロボット(アトム、ロボフォン)
  • AI(検索エンジン、画像認識、自動運転、人工知能)
  • 組み込み(時計、炊飯器、レンジ、テレビなど)
  • 基礎・ミドル(OS、データベース、通信処理、暗号化など)

あまりにもいろんな種類がありすぎて、分類しきれないほどです。身の回りを見渡せば、ほとんどの電気製品にはなんらかのコンピュータが使われており、それぞれプログラミングされています。

コンピュータを動かすための指示がプログラムであって、プログラムを作ることをプログラミングというわけです。

余談になりますが、コンピュータに指示を入力するためにもコンピュータを使います。

コンピュータへの指示は、あらかじめ用意された処理パターンによってしか動きませんが、複雑な処理ができるようになると、画像から人の顔を認識したり、音声データを分析することができるようになり、人間のように扱えるようになってきました。

プログラムを変更すると、コンピュータの動きが変わります。

予期しない動きをしている場合には、プログラムを修正することで正しく動くように直すことができます。逆に、プログラムを修正できなければ、動きの修正することはできません。

プログラム言語

コンピュータへの指示がプログラムですが、そのプログラムを作るための道具がいろいろあります。

いろんな道具をつかってプログラムを作成します。

プログラムは、コンピュータに対する基本的な指示(命令)の組み合わせで作成しますが、その組み合わせは、プログラ言語と呼ばれる文法にしたがった文字列で記述します。

指示の記述方法(文法)を決めるのがプログラム言語です。プログラミングで使用する言語なので、プログラミング言語とも呼びます。

それぞれのプログラミング言語には、あらかじめいろいろな処理命令が組み込まれています。

例えば、画面に文字を表示するとか、変数(メモリ)に数値(データ)を記憶させたり、記憶された数値を読みだしたり、計算したりする処理命令が組み込まれています。

これらの命令をつかってプログラミングするわけです。

作成したいプログラムによって、プログラミング言語の適正も変わってきます。

プログラミング言語の中でも、1つの命令でできる処理の範囲が細かいものからおおざっぱなものまでレベルがありますし、その実行方法もプログラム言語によって種類がいろいろあります。

1行である仕事が簡潔できるような命令の組み合わせができるプログラムは、スクリプトとかマクロと呼ばれることもあります。

スクリプトとかマクロと呼ばれるプログラムは、かかれた順番に逐次処理を行っていきます。

おおざっぱにいうと、Aの処理をやって、次にBの処理、Cの処理を続けて終わり。

こんな感じで処理の順番に手続きを書くことで処理パターンを一つの処理にまとめるプログラムがスクリプトとかマクロです。

このようなプログラムは、処理の順番を変えたり、追加したり削除することがわりと簡単にできます。

どんなプログラムであっても、分解していくと、最終的には単純な命令の組み合わせになっていることがわかります。

よく、コンピュータは2進数で動いているなどと言われることがありますが、ほとんどのコンピュータは、0と1の組み合わせの処理で動いているからです。

画像だろうが、文字だろうが、数値だろうが、最終的には0と1の組み合わせに置き換えられそれらを表す電気信号の処理を制御することでいろんな処理ができるようになっています。

したがって、プログラムもいくつか階層的な構造をしています。

ハード(物理装置)に近ければ近いほど、0と1の処理になっています。これらの0と1の処理を組み合わせて、より大きい数値を表したり、数値をつかって文字を扱えるようにたり、小さな処理を組み合わせ少し複雑な処理ができるよなプログラムを作ります。

さらに、その小さな処理のプログラムを組み合わせて、より複雑な処理ができるようなプログラムを作ります。

こうして、最終的に、「再生」というボタンを押せば、動画ファイルが再生されたり、「印刷」という命令によって書類が印刷されるような単位の処理が出来上がっているのです。

いろんなプログラム言語がありますが、そのどれもコンピュータを動かすという目的を持っています。

プログラミンによって、さまざまなコンピュータが動くようになります。逆に、プログラムがなければコンピュータは動きません。

最後にまとめると、コンピュータを動かすためのプログラムを作ることがプログラミングです。

プログラミングによって、コンピュータが動き、コンピュータをうまく動かすことでいろんな処理が自動的に動きます。

タイトルとURLをコピーしました