プログラミングの基本知識や代表的なプログラミング言語について
今回は、これからプログラミングを始める人や始めたばかりの人のために、プログラミングの基礎のきとも言える話をしていきます。
これからプログラミングの勉強を始めようとする人が多いと思うのですが、プログラミングというものをなんとなく「カラフルなエディタにいっぱい文字列が並んでいるもの」くらいのイメージしか持っていない人が多いと思います。
これからプログラミングを勉強していく上で、そもそもプログラミングとはなんぞやということとか、どんな言語があるのかなのかを理解しておくと、より楽しく、理解を深めながら勉強していけると思います。
みなさん、2019年のラグビーW杯を観戦した人が多いと思いますが、ぶっちゃけラグビーのルールとか歴史とか、どこの国が強くて、どの選手が有名なのかということを全く知らない状態で、観戦していませんでしたか?
かくいう自分も完全なるにわか組だったので、フッカーやプロップのようなポジションもさっぱりわからないし、コンバージョンゴールもなんのことかわからないし、そもそも何人が出場しているのかすらも知らなかったです(笑)
そんなラグビー偏差値3の状態でも、雰囲気だけで楽しいっちゃ楽しいのですが、でもやっぱりラグビーの知識がある方が観戦が100倍楽しくなると思います。
プログラミングに限らずですが、そのものを基本知識だけでも知っておくと、自分は今何を勉強していて、どのようなことに役に立つのかということを理解しながら勉強を進めることができます。
そこで今回は、そもそもプログラミングとは何かということと、代表的なプログラミング言語や勢いのある言語について紹介していきます。
あと、エンジニアとプログラマーの違いなども簡単に説明していきます。
これからプログラミングを勉強するという方は、今回紹介する内容は知っていて当たり前のことばかりなので、ぜひ最後までご覧ください^^
プログラミングって何?
プログラミングとは、コンピュータにさせたい仕事を順番に書いていくことです。
そのため、コンピュータが正確に理解できるように書くことが重要です。
コンピューターにやってほしいことを理解できる言葉にしたものがプログラムです。
つまり、プログラミングとはプログラムを作る作業とも言えます。
「プログラミング」ではなく「プログラム」という言葉なら、イメージできる方も多いと思います。
プログラムとは、和訳すると「番組表」「計画」「予定」という意味になります。実は意識していないだけで普通に使っている言葉です。
しかし、コンピューターは人間の言葉をそのままでは理解できません。
そこで、使われるのがプログラミング言語です。
コンピューターが理解できる言葉=プログラミング言語でコンピューターにやってほしいことを指示します。
プログラミングで何ができるのか
そもそも私たちの仕事や生活でプログラミングは何の役に立つのでしょうか?何ができるのでしょうか?
プログラミングでできることは以下の通り
- アプリケーションの作成
- ゲーム開発
- 業務自動化
アプリケーションの作成
まずアプリケーションの作成についてです。
みなさんは当然、Twitter・Instagram・Facebook・LINEなどのSNSや、GoogleマップやApple Musicなどを使っている方も多いですよね。
これらは全て、プログラミングで作られたアプリケーションなので、プログラミングは実はかなり身近なものです。
プログラミングができるようになれば、自分で考えたものをアプリとして形にすることができます。
アプリ開発の場合、開発したいアプリの種類によって学ぶべき言語は変わります。
例えば、Webアプリケーションの場合は、RubyやPHPが多くて、iOSアプリの場合はSwift、Androidアプリの場合はKotolinやJavaがよく採用されます。
ゲームを作る
プログラミングではゲームも作ることもできます。
市販されているような家庭用ゲームも、スマホのソシャゲも全部プログラミングでできています。
どうぶつの森もパズドラも、ファイナルファンタジーも全部プログラミングで作られています。
ちなみに自分は学生時代に白猫プロジェクトにどハマりしてましたね。
課金を一切せずに、自力で集めたジュエルだけで、めちゃくちゃレアキャラを引けてしまうというガチャ運が最強によかったので、余計にどっぷりはまっていきましたね。
シャルロットがダントツで可愛くて強かったので好きでしたね。
白猫プロジェクトが好きで、就活でコロプラのインターンの選考を受けにいったのですが、余裕で落とされました(笑)
コロプラのインターンの難易度って結構高いんですよ。
白猫プロジェクトのようなソシャゲだけではなく、一見難しそうに見えるVR・ARのゲームも、Unityなどの必要なものが揃っているゲーム向けの統合開発環境を利用すれば難易度がグッと下がります。
Unityは、Unity Technologiesが提供するゲームエンジンですね。
3Dゲーム開発、2Dゲーム開発の両方に対応し、FPS・RPGをはじめ、あらゆるジャンルのゲームを作れます。
Unityには、いま世界中から熱い視線が注がれています。
ある調査によると、Unityをメインで開発に使用している割合が全体の29%。
メインではなくともUnityも使用しているという層も含めると、全体の47%がUnityをゲームエンジンとして採用しているとのことです。
業務の効率化
次に業務の効率化についてですが、単純作業を自動化して効率化できることもプログラミングの醍醐味ですよね。
例えば、
- 仕事でアンケートを取って集計する必要があった際、アンケートに答えてもらった時点で別のチャットツールに通知させ、自動的にアンケートのデータを集計する。
- 販売サイトでどうしても欲しい商品があったときに、プログラムを組んで発売されたと同時に購入するプログラムを組む。
- 趣味で集めている写真や画像をインターネット上から自動で取ってきて、docsシート(WindowsでいうWordのようなもの)に貼り付けるようにする。
など、これからITが発展していく中でプログラミングができれば、もっと仕事やプライベートでできることが広がることは間違いないです。
代表的なプログラミング言語
Ruby
「Cookpad」や「Twitter」など、みなさんもよくご存じのサービスに採用されています。
書きやすさ・学びやすさは他のどの言語と比べてもダントツ一位を誇っています。
言語仕様に関するメーリングリストの議論も普通に日本語で行われており、書きやすさはバツグンで、やはりその使いやすさから人気は高い傾向にあります。
日本だけではなく、アメリカでも大変人気なプログラミング言語です。
アメリカで最も稼げるプログラミング言語はRuby/Ruby on Railsと言われていたこともあるようです。
更にRubyは、数多くのベンチャー企業でも採用されており、求人情報にもこの言語を扱える人材を募集している様子が多く見られるなど、今、最も注目を浴びている言語といっても過言ではないでしょう。
PHP
動的なWebページとは「検索サイト」や「掲示板」のように、訪問者のリクエストに応じながらコンテンツを生成していく仕組みを持っているページの事をいいます。
PHPは初心者でも比較的簡単に修得することができる言語です。
世界中の25%のサイトが使用されている「WordPress」のカスタマイズができるようになりますので、身に付けておけば就職や転職にも役に立つと共に、他の言語を学ぶ際の足掛かりにもなります。
Swift
主に、Apple(iPhone)のアプリを制作するために使われる言語です。
以前は「Objective-C」という言語でした。
Apple社が作った比較的新しい言語であり、誰もが直感的に使えるように設計されています。
制作過程をiPhoneで確認しながら進めていけるので、楽しくプログラミングをすることができます。
iOSの人気は後を絶たず、需要のあるプログラミング言語の一つとされています。
現時点では携帯アプリ開発で主に使われている言語であり、オープンソース化されて今後幅広く使われていく可能性があります。
Kotolin
Kotlin(コトリン)は2011年に開発されたオブジェクト指向型言語で、Javaを簡潔かつ安全になるよう改良を加えた産業利用向けの汎用言語としてリリースされました。
そのためJava仮想マシン上で動作し、文法などもJavaに近いものになっています。
Javaと同様に素早くコンパイルでき、同程度の速度で動作するとされています。
Androidの開発言語として公式認定され、スマートフォンアプリの開発現場でのシェアが広がりつつある言語の一つです。
TypeScript
TypeScript(タイプスクリプト)は、2014年ごろ、Microsoftが開発・発表したプログラミング言語で、現在もメンテナンスされています。
型定義できるところが、JavaScriptとの大きな違いです。
そもそもTypeScriptはJavaScriptを拡張して作られた言語ですが、JavaScriptとは違い静的型付けのクラスベースオブジェクト指向言語になっています。
JavaScriptのいい点を残しつつ、使いにくい点を修正したTypeScriptは、言わばJavaScriptの進化版です。
TypeScriptは、Googleが開発する人気のフレームワークにも導入されています。
さらに現在では、他のフレームワークでも使用できるようサポートが広がっており、今後、JavaScriptに代わって需要が高まる可能性があるため、急成長中しています。
Go
Go(ゴー)言語は、「Go」や「golang」とも呼ばれています。
2009年にGoogleが開発したオープンソースの静的型付プログラミング言語であり、Google社内におけるソフトウェア開発の生産性や拡張性のために開発されました。
Go言語は、シンプルで信頼性があり、無駄のない有能なソフトウェア開発を簡単に実現できるように設計されています。
ゆえに、実用性があり、効率よく作業を行うことが可能なため、Go言語は「軽量・高速・シンプル」なプログラミング言語として広く知られています。
まとめ
ここまでで、プログラミングとはなんぞやといいうことと、代表的なプログラミング言語について説明してきました。
プログラミング言語の方に関しては、RubyやPHPは勢いがあるというよりは、初心者がエンジニアになるための手段としては、かなり有効だという感じですね。
そのほかのTypeScriptやGoなどに関しては、めちゃくちゃ勢いのある言語で、2021年以降も大注目株です。
本記事で、プログラミングの基本知識を理解した上で、よりプログラミングへの興味が大きくなってくれたら嬉しいです^^
本記事の内容は、YouTubeでも解説しているので、動画の方も是非ご覧ください^^
今回もブログをお読みいただきありがとうございます😎 以下のLINE公式では、LINE限定の動画コンテンツやコラム、みなさん一人ひとりにパーソナライズした情報などを配信していますので、ぜひ友だち追加お願いします^^(追加していただいた方だけに配布する限定動画もございます🎁)