【超初心者向け】プログラミング完全入門・役割や特徴を知りたい


プログラミングの基礎知識を知りたい

プログラミング言語のそれぞれの特徴や役割を理解してから学び始めたい


近年では最も注目されている職業であるプログラマーですが、初心者の方は上のように疑問を抱くのではないでしょうか。
プログラミングを勉強したいけど、言語がたくさんあって何から始めていいのかわからない・・・
という方に向けて、解説しました。

今回でわかること

・プログラミングを始める前に必要な知識
・プログラミングの基本
・プログラミング言語の役割や特徴

プログラミング初心者が知っておくべき知識を全て織り交ぜて解説しているため、ぜひ参考にしてください!

プログラミングを学ぶ前に知っておくこと

プログラミング入門の前に、必要な準備は、次の3点です。

・プログラミングを学ぶ理由と目標を明確にする
・学習するプログラミング言語を決める
・パソコンやインターネット環境を用意しする

以上の3点の詳しい情報は、下の記事を参考にしてください。

プログラミングを副業にするのはアリ?|未経験から稼ぐまでの手順

そもそもプログラミングとは?

パソコンをはじめ、スマホやタブレット、その他電子機器は全て「プログラム」が組み込まれており、プログラムをもとに動いています。このようなプログラムを作ることが「プログラミング」です。

プログラミングとは、コンピュータにしてほしいことを順番に書き出した指示書のようなものです。例えば、ホームページに表示したい文字などがある場合、プログラミングによって表示させます。

プログラミング言語とは?

人間の世界にも、人種や国などによって様々な言語がありますが、プログラミングもそれぞれのソフトウェアによってして欲しい仕事ややりたいことなどが変わってくるため様々な言語があります。

指示書を書き出す際に、コンピュータは人間の言葉は理解できませんので、コンピュータが理解できる言葉で指示書を書く必要があるためです。

プログラミング言語は様々な種類があり、ホームページを作成する言語や、アプリを開発する言語、日々の業務を自動化したりAI(人工知能)を作成する言語など様々です。

書き方も違いますが根本はどれも共通した部分があるため、一つ覚えれば他も学習しやすいといわれています。

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

プログラミングできることは大きく分けて次の5点です。

・Web開発
・AI(人工知能)の開発
・業務システム(ソフトウェア)開発
・スマホアプリ開発
・ゲームの開発

それぞれ順番に解説していきます。

Web開発

Web開発は、インターネットを通して使えるサービスのプログラムを開発することです。

Webエンジニアは、WebサイトやWebアプリケーションなどを開発し、ネットショップ作成や自社サイトの開発などWebに関わるあらゆる仕事に携わることができます。Web開発分野は、サーバー周りの裏方を制御するサーバーサイドエンジニアと、WebアプリやWebサイトの見た目を実装・開発するフロントエンジニアに分かれます。

代表的な言語

・JavaScript(フロントエンド開発)
・PHP、 Ruby、Java(バックエンド開発)
・Pythonで作られたサービス
・HTML&CSS(両方)

AI(人工知能)の開発

AI(人工知能)開発は、人間における脳の動きをコンピュータで再現する「AI」を開発することです。

AI開発は自動運転や未来予測など、現在でも発達中の分野で特に将来性の高い開発分野となります。
代表的な言語

・Python

業務システム(ソフトウェア)の開発

業務システム(ソフトウェア)開発は、主にパソコンで使う企業向けのシステムを開発することです。

多くの企業にとって、業務システムは欠かすことのできないものなので、安定した需要が期待できる開発分野です。
代表的な言語

・Java、C#、C++、C言語(Windowsアプリの場合)
・Swift(macOSアプリの場合)

スマホアプリの開発

スマホアプリ開発は、スマートフォンにインストールされているアプリの開発をすることです。

IOSアプリとAndroidアプリでそれぞれ開発する言語は違いますが、専門の開発環境を整えればAndroid・IOSいずれも使えるアプリの開発もできます。
代表的な言語

・Swift(IOSアプリの場合)
・Kotlin、Java(Androidアプリの場合)

ゲームの開発

ゲーム開発は文字通りゲームの開発ですが、特にクリエイティブな開発分野です。

また、ゲーム機が必要な「コンシューマーゲーム」の場合、ハードウェアや提供されているライブラリへの知識、ゲーム開発に特化した開発環境である「ゲームエンジン」絵の知識も必要とされるため初心者には難しい言語となっております。
代表的な言語

・C#、C++
※スマホゲームに関しては、スマホアプリ開発に含まれます。

プログラミング言語の役割と特徴

これまではプログラミングのできることから解説しましたが、次はそれぞれの言語の詳しい役割や特徴について説明していきます。
プログラミングで代表的な言語は以下の8点です。

・HTML&CSS
・JavaScript
・PHP
・Java
・C(C#、C++)
・Python
・Ruby
・SQL

それぞれ解説していきます。

HTML&CSS

HTML&CSSはホームページを作ることができ、最も基本的な言語です。

HTMLとCSSという二つで一つの言語になっており、それぞれの役割は以下の通りです。

HTML・・テキストや画像をホームページのどこに配置するのかを決める言語
CSS・・HTMLによって配置されたテキストや画像の、色やサイズを変更したり、その他のカスタムを指定する言語

HTMLとCSSの詳しい説明は、下の記事で解説しています。

【初心者必見】HTMLとCSSについて

JavaScript

JavaScriptはHTML&CSSによって作られたホームページをよりダイナミックにする言語です。

JavaScriptはなくてもホームページは作れますが、現在のほとんどのホームページにはJavaScriptが使われており、現在最もプログラマーが多いのがこのJavaSctiptです。

PHP

PHPはHTML&CSSで作られたホームページをカスタマイズするもので、ユーザーからデータを受け取り、それを表示させるなどをすることができる言語です。

HTML&CSSのみのWebサイトだと、製作した本人が指定したものしかホームページに表示されませんが、PHPを用いいると掲示板のような第三者が書き込みをできたり、商品紹介ページに口コミを書くことなどができるようになります。

Java

Javaは、チーム開発に適した言語で大規模開発の際によく用いられます。また、様々な場面で活用されています。

・Web、PC、スマホなどでのアプリケーション開発
・Webサイトの開発
・ソフトウェアの開発
・家電などの組み込みシステム開発
・金融機関の基幹システム開発

Javaは高性能な分、難易度が高く初心者には向いていません。

Javaで作られた代表的なサービス

・Evernote
・楽天
・Androidアプリ

C(C++、C#)

C言語は大きく分けて二つのことができます。一つは「ロボット・組み込み系の開発」でもう一つは「ソフトウェア・OS作成」です。

ロボット・組み込み系というのは、電子機器などの制御装置を作るもので、ソフトウェア・OS作成というのは、「Windows」や「Mac」などを作るものです。

また、C++はC言語を拡張したもので、C#はJavaを拡張したものになります。

C言語で作られた代表的なサービス

・全ての家電製品
・Google Chrome
・Safari

Python

Pythonは近年で最も人気な言語で、AI(人工知能)を作成する際に用いられます。
他にも、次のような様々なことができます。

・AI(機械学習、深層学習)
・Web上の情報収集ツール
・データ処理、分析、解析
・ブロックチェーン開発
・Webアプリ作成
・Python
・ゲーム作成
・SQL

下の記事で、Pythonのより詳しい説明をしています。

【初心者必見】Pythonとは?特徴やできること
Pythonで作られた代表的なサービス

・YouTube
・インスタグラム
・Dropbox
・ペッパー君

Ruby

Rubyは、SNSの開発やWebAPIなどに特化しています。
WebAPIとは、会員登録をFacebook経由で登録したりなど、アプリケーションを連動させるものです。
また、機械学習やスクレイピング(Web上からの情報収集)などもできます。

Rubyで作られた代表的なサービス

・クックパッド
・Airbnb
・グノシー
・ツイッター
・クラウドワークス

SQL

SQLはデータに対しての命令をする言語です。
他のプログラミング言語とは違い、SQLのみデータベース言語と言われ、データの管理をすることができます。

まとめ

今回は以下のポイントからプログラミングの基礎を説明しました。

・プログラミングを始める前に必要な知識
・プログラミングの基本
・プログラミング言語の役割や特徴

プログラミング入門の前に、まずは自分がどの言語を学び始め、どのようなサービスを作りたいかを明確にするところから始めると良いでしょう。

サブスクリプション形態で運営しているプログラミングスクールのPerTechは、運営者が4年間のフリーランス経験を活かしており、超実戦型のプログラミング教室で、Pythonのカリキュラムも非常に充実しております。

自社でのIT人材教育を検討されているご担当者様に対しては、講座内容からスケジュールまで、ご要望に合わせて研修内容をカスタマイズしてご提案することが可能です。また、HP制作依頼や業務効率化、データサイエンスからのマーケティングコンサルティングも行っております。

ぜひお気軽にお問い合わせください。

無料相談

コメントを残す