プログラミング初心者が勉強のために事前に理解すべき5つのポイント

IT資格

更新日:2018年6月10日 公開日:2018年6月3日

プログラミング初心者の計画的な勉強

初心者の方がプログラミングを勉強すると、次のようなことが分からず、もやもやしたまま学習を進めることが少なくありません。

  • プログラミングで何ができるのか?
  • どの言語から勉強すればよいのか?
  • 学習方法は正しいのか?
  • 自分にはプログラミングの適性があるのか?
  • 仕事のニーズはあるのか?

そこで上述の疑問に対する回答を、理論的かつサイト管理者の経験も交えながら、プログラミング初心者の方が計画的にかつ効率よく勉強できるようコメントします。

1.プログラミングで何ができるのか?

一般的な説明では、「人間が意図した行為を、コンピュータに行わせるために指示することができる」がこの疑問に対する回答になります。

ここではより深く掘り下げて具体的にコメントしました。それが次の説明です。

  • (1)プログラミングを使えば、より高速にかつ正確に実行することができる
  • (2)プログラミングを使わなければ行えないことが実行できる

まず(1)ですが、例えば、Excelを開いてセルA1からセルA1000までの1000個のセルに「あいうえお」と入力するとします。

手作業で行うこともできますが、1000回「あいうえお」と入力するのは時間がかかります。
しかし、VBAというプログラミング言語でツールを作ってしまえば、ものの数秒で完了してしまいます。

次に(2)について。例えば、WindowsのPC画面の左下にある「スタートボタン」をクリックして画面表示させるという行為は、人間でもプログラミングなしで行えます。

これはWindowsが手作業で簡単に操作できるように設計されているからです。

これに対して、例えば、Windows上で高度なセキュリティ設定を行う場合には、「Windows Pro」のバージョンでは該当するセキュリティ設定画面が存在するため、手作業で設定できます。しかし、「Windows Home」のバージョンでは設定画面がないため、コマンドプロンプトやPowerShellというプログラミング(Windowsに指示するためのコマンド)を知らなければ設定できません。

また、皆さんが今閲覧しているこのページは、WEBという技術を使用していますが、HTMLとCSSというプログラミング言語を知らなければ同じものを作ることはできません。

以上は一例にすぎません。プログラムを使えば手作業ではできない沢山のことを、コンピュータ上で実現できます。

2.どの言語から勉強すればよいのか?

この質問に対する回答は、その人がゴールを設定しているかどうか、また、その人の好みによって、ふさわしい回答は異なります。

以下、いくつかの項目に分けて説明します。

(1)将来の目標が決まっている方

プログラミング言語は、それぞれ強みを持っています。

例えば、AIという分野で活躍したければ、Pythonというプログラミング言語を習得する必要があります。

また、組み込み制御であればC言語、Androidのスマートフォンアプリを開発したければJavaが、最もニーズがあります。

さらに、WEBページはHTMLやCSS、データベース操作はSQLというように、強みではなく、そのプログラミング言語でなければ操作できない(いわゆる独占状態)、といったケースもあります。

従って、将来の仕事など目標が決まっている場合には、目標に最もニーズがあるプログラミング言語を学習することが、最も効率的といえます。

(2)プログラムが動くことを実感したい方

次に、特に将来の仕事や、何のためにプログラミング言語を使用したいのかが決まっていない方は、様々な学習アプローチがあります。

取り合えず作って実際に動くことを実感したい方であれば、例えばHTMLやCSSを学習して簡単なWEBページを制作してみるといいかもしれません。

または事務職の方であれば、VBAを勉強してExcel上でマクロを実行してみるのも、プログラミングを実感できるでしょう。

(3)一通りプログラミング言語を学習したい方

将来的な目標はなく、まずは学習してみて適性を見極めるといった場合など、とりあえずプログラミング言語を学習したいという方もいらっしゃると思います。

そのような方は、代表的なプログラミング言語を一つ学習してみることをお勧めします。

実はプログラミング言語は、HTMLやCSS、SQLといった特別な言語を除き、同じ構成で成り立っている部分が多く存在します。

例えば「データ型、配列、繰り返し処理、条件分岐、イベント、API、関数、エラー処理」といった言葉や概念は、どのプログラミング言語でも登場します。

また、概念だけでなく、コード自体もほとんど同じである場合も少なくありません。

以上から、プログラミング言語とは、「共通で使いまわしできる知識+言語特有の論点」と考えておきましょう。

従って、例えば、「VBA、Java、JavaScript、PHP、C言語、Python、Ruby」など、現在主に使用されている代表的なプログラミング言語であれば、どれから勉強を開始しても構わないと思います(但し、上述の固有論点については難易度、とっつきにくさなど個人によって感じ方は異なります)。

上記のプログラミング言語を一つマスターしてしまえば、2つ目以降は、共通の部分はほとんど習得済みですので、あとはその言語特有の論点を習得するだけです。

複数のプログラミング言語を習得しているプログラマーが大勢存在するのは、このような理由からです。

そして、皆さんも上記のプログラミング言語を1つでも習得してしまえば、複数のプログラミング言語を操れるようになります。

(4)サイト管理者の場合

参考までに、サイト管理者(文系出身)は、次のような流れでプログラミング言語を習得してきました。今後も少しずつ裾野を広げていきます。

(20代前半)C言語を学ぶも簡単な計算プログラムで挫折→プログラミングから離れる。

(30代後半)事務職だったが、ITへの興味は冷めず、プログラミングに再チャレンジ
①HTMLとCSSを習得してブログを立ち上げ
②仕事でVBAを使用するきっかけが発生。VBAに興味を持ち、学習しはじめる。
③仕事でデータベース操作やシステム運用に携わり、SQLやバッチ、Linuxコマンドを使い始める。

(40代になった現在)
①ExcelとAccessのVBAを習得
②VBAで文法の基本は理解。Javaを学習してオラクルJava Silverを取得
③30代から使用していたJavaScriptやPHPも使える領域が増える。

3.学習方法は正しいのか?

この点は、まず上述2.で間違ったプログラミング言語を選択していないかどうかによります。

次にできるだけ具体的な目標を立てます。
最終の大目標だけでなく、大目標を達成するための中小の目標をいくつか立てます。

そして、定期的に進捗状況を把握して、必要に応じて計画を見直しましょう。

また、生活スタイルに合った学習方法を選択しましょう。
ちなみに、社会人で会社勤務しているサイト管理者は、通勤時間などに電子書籍を利用して学習しています。

4.自分にはプログラミングの適性があるのか?

一般的には理系脳がプログラミング言語習得には適していると言われることがありますが、かといって文系出身が理系脳でないとは、一概には言えません。

サイト管理者も20代で挫折したプログラミング言語ですが、使っていくうちに段々と理系脳の領域が脳内で開発されたことが実感でき、今では複数のプログラミング言語を駆使できるようになりました。

現在のITビジネスのトレンドでは、事務職であってもExcelなどでマクロを使用することは珍しくありません。このような傾向は今後、一層顕著になることでしょう。理系脳ではない(と思っている)人であったとしても、プログラミング言語を使って仕事をする機会はますます増大します。

以上から、プログラミングに興味を持ったのであれば、適性があるかどうかは使ってみてから判断してみることをおすすめします。また、以前学習したが諦めてしまった方も、興味を持った都度、再チャレンジしてみることをお勧めします。

5.仕事のニーズはあるのか?

皆さんもご存じの通り、現在IT化の流れはますます進んできています。従って全体としてプログラミングを使用した仕事ニーズは今後も増加することは容易に想像できます。

但し、IT分野は広いため、プログラミング言語によってニーズは異なります。従って、将来的にニーズのある言語を選択する必要があります。

そこで、トレンドキーワードを中心にIT情報をキャッチしておき、将来的にニーズのあるプログラミング言語を調べる習慣をつけることをお勧めします。

6.まとめ

以上、プログラミング初心者の方が計画的に、かつ効率よく勉強するために理解しておく5つのポイントについてコメントしました。

プログラミング学習をする場合に、皆さんに参考となる情報が、少しでも載っていれば幸いです。

最後までお読み頂きましてありがとうございました。