はじめに
私は大学からプログラミングを学んでおり、業務経験4年目のエンジニアです。
知人から「プログラミング」や「システム開発」について聞かれることがよくあるので
なるべくわかりやすく説明する記事を書いてみようと思い、本記事を書きました。
そもそもプログラミングとは何か
難しく言うと
「プログラミング」 = 「プログラムを作る作業」
プログラムとは、何かというと「コンピュータ(PCやスマホ)にさせる処理を順番に書き出したもの
」
簡単に言うと
コンピュータにお願いすること
もう少し詳しく言うと、お願いごとの手順(プログラム)を書くこと
例えると
料理のレシピ
のようなイメージ

これの次にこれをして、その次にこれ・・・・というように
手順をまとめて書いておくことで、
コンピュータ(PCやスマホ)がその指示を理解し その通りに動いてくれます。

Twitterのように世界で何億ものユーザーがリアルタイムで
いいねしたりフォローしたりユーザー登録したりするのを
人間だけで処理することは不可能です。
人間には到底不可能な作業をコンピュータにお願いして
やりたいことを実現(しかも高速で正確に)することができるのがプログラミング
です。
このお願いをうまくしていくことでTwitterのようなアプリがつくれたり、人間の生活を豊かにするサービスを生み出すことができます。
つまりプログラマーとは「コンピュータにお願いするのがうまい人」
ですね。
プログラミングの活躍事例
プログラミングを使った活用事例の一例を紹介します。
- Webアプリケーション
- ゲーム開発
- AI分野
Webアプリケーションの開発
SNS、YouTubeなどの動画共有サイト、ショッピングサイトなど、PC/スマホ・アプリ/ブラウザ問わずWebアプリケーションと言います。
Web系のプログラミング言語で作られており、私たちの生活にも非常に身近なものです。
ゲーム開発
スマホのゲーム、家庭用ゲーム、パソコンゲームなど、あらゆるゲームはプログラミングによって作られています。
近年はスマートフォンが急速に普及したため、スマートフォン向けアプリゲーム開発は成長が著しい業界の1つです。
Android向けかiOS向けかによっても、使用されるプログラミング言語が異なってきます。
またVRゲームもこれから普及すると言われており、当然プログラミング言語を利用して作られています。
AI分野
注目が集まるAI分野にもプログラミングは活用されています。
例えば今注目のAI分野の1つに自動車の自動運転がありますが、車の周囲の状況をリアルタイムでデータに変換して、加速したりブレーキをかけるといった一連の動作はすべてプログラミングで成り立っています。
プログラミング初心者が学ぶべき言語
プログラミングを初めて学ぶ初心者はWebサイトを自分で作ることをおすすめです。(上記の「Webアプリケーションに該当するもの」)
プログラミング言語について
プログラミング言語は以下のような様々な言語があります。
HTML, CSS, JavaScript, Java, PHP ...etc
プログラミングをするにしても、数多くのプログラミング言語があり初心者は困惑すると思います。
そもそもなぜこんなプログラミング言語が多いのか? 1つにまとめれば楽なのではないか?
そのように思われる方がいると思います。
結論から言うと「用途によってそれぞれのプログラミング言語を使い分けて無駄を省くため」
です。
あるプログラミング言語で
特定の領域ではうまく問題を解決できても、
別の領域ではそれほどうまく問題を解決できない。という事があります。
例えば、
Webブラウザを使ったアプリケーションを開発する場合に適したプログラミング言語は「PHP,Ruby,Go」など
iPhoneのアプリを作る場合に適したプログラミング言語は「Swift,Objective-C」など
iPhoneのアプリを「PHP,Ruby,Go」では作ることが難しいです。
それぞれのプログラミング言語に得意分野があるので、システム開発する側は言語を使い分ける
ことをします。
また使うプログラミング言語によって、「書き方」が変わってきます
。
そのためそれぞれのプログラミング言語ごとに「書き方」を学習する必要があります。
参考記事