※本サイトにはプロモーション・広告が含まれています(はづきのブログより)
こんにちは。IT会社員のはづきです
親戚や友人にITエンジニアの仕事内容を説明するときに必ず聞かれることがあります
「そもそもプログラミングって何なの?結局どんなことしているの?」
たしかに普段の生活でプログラマーの仕事ぶりを見ることはないと思います。それゆえに何をしているのかイメージしづらくて当然です
ざっくりいうと、プログラミングはPCなどのコンピューターにやってほしい作業の指示書を書くことを指します
たとえば、炊飯器に「50分後には火を止めて保温にして!」とか、スマホに「送信ボタンを押したらメールを送って!」とか。こういった指示をプログラムとして書いていきます。
この記事ではプログラミングとは何かわかりやすく簡単に解説します!
実際に私たちがプログラミングとして何をしているのか、についても話します!
プログラミングとは、コンピューターへの指示書を書くこと
プログラミングとは、コンピューターにやってほしい作業・動作の指示書を書くことです
このとき書きあげる指示書をプログラムといいます。そして、プログラムはプログラミング言語という言語で書かれています
また、コンピューターの定義する範囲は様々ですが、ここではPC、スマホ、家電などを指しています
プログラミングに対して難しい印象を抱かれている人がたまにいますが、基本文法くらいであれば意外と簡単です。プログラミング言語は書き方が決まっているので、本やネットで調べながらやれば誰でもそこそこできると思います
次に、プログラミングってどんなことをしているの?という疑問についてお答えします
プログラミングを行うときはコンピューターにやってほしい作業を考えます
例として、洗濯機のプログラムをプログラミングするとしましょう。洗濯機が洗濯するときの動作を考え、箇条書きにしていきます
そして、下記の1~5をプログラミング言語を用いてプログラムとして書いていきます
これがプログラミングのざっくりとしてイメージです
- スタートボタンが押されたら”洗い”動作を10分間行う
- "すすぎ"動作を10分間行う
- "脱水"動作を5分間行う
- 2と3を3回繰り返す
- 終わった合図として音を鳴らす
最後に、実際にプログラミングを行う開発現場の様子を紹介します。ドラマのように華麗な感じではなく、現実は結構泥臭いところがあります笑
プロが集まる開発現場でも、思った通りに動いてくれずググっている時間が結構あります
また、"洗い"動作をプログラミングするチーム、"すすぎ"動作をプログラミングするチームなどに分かれて開発を行っていきます。最後にそれらをくっつけて大きなプログラムを作ることが多いです
そのため、黙々とPCに向かい続けるのではなくチームメンバーと話し合うことも多いです
私の技術力が低いからか上手く動くことのほうが少ないです
プログラミングはエラーと戦っている時間のほうが長い気がします笑
(エンジニアの方には共感していただけると思います、、)
プログラミングは何に使われている?身近な活用事例を紹介
プログラミングは、”現代で最も魔法に近い技術”だと言われることもあります
プログラミングは私たちの使うサービス・電子機器を作るのに欠かせない存在です
どんなものを作れるのか、プログラミングの活用事例を見ていきましょう!
- webアプリ(youtube、amazon等)
- スマホアプリ・ゲーム
- 家電・電子機器
- AI・ロボット
- 券売機やETC、飛行機の無人運転
活用事例からプログラミングが私たちの生活に欠かせない存在だということがわかると思います
プログラムがコンピューターで動く仕組み
コンピューターへの指示書を作成することがプログラミングだと話しましたが、実はコンピューターはプログラミング言語を読むことができません
コンピューターが読めるのは機械語です。機械語とは0,1で書かれたバイナリデータというデータのことを指します
この機械語は、コンピューターからは読めますが人間が読むにはなかなか難しいものです
そこで、人が読みやすいプログラミング言語を用いてプログラムを作成し、このプログラムを機械語に翻訳してコンピューターに読み込ませています
このプログラミング言語から機械語への翻訳は、既に翻訳ソフトが完成しているためボタン1つで翻訳できます。なので初学者はそこまで意識しなくてOKです
この翻訳ソフトにはコンパイラやインタプリタといった種類がありますが、専門的な話になるのでここでは割愛します
プログラミング言語の種類は豊富!言語によって得意・不得意がある
プログラミング言語の種類はたくさんあります
プログラミング言語によって処理の得意・不得意があり、作るサービスや用途によって使用する言語を選ぶのが一般的です
例えば、ECサイトなどのwebサービスはJavaやJavaScript、データ分析などはRやPythonが使われることが多いです
実際は、世間で使われるようなサービスには複数のプログラミング言語が使われています。この場合は、1つのサービスを構築する個別の処理に応じて言語を使いわけています
勉強するプログラミング言語選びに悩んでいる人は、何を作りたいのか、そしてそれを作るのが得意な言語は何か、を考えてみると良いと思います
まとめ:コンピューターに作業指示をするのがプログラミング!
プログラミングとは何か、という疑問に対する回答をまとめます!
- プログラミングはプログラムを作成すること
- プログラムはコンピューターに向けた指示書である
- プログラムはプログラミング言語によって書かれている
- コンピューターが読めるのは機械語。プログラミング言語は読めない
プログラミングはとても身近な技術です。この記事で私たちエンジニアがプログラミングをどのように行っているのかイメージできたら幸いです
また、プログラミングに興味を持った方はぜひプログラミング学習をはじめてみてください!少しやってみて合わないと思ったらやめればいいだけです
コメント