内定期間中からできる未経験者向けプログラミング学習の方法。基本中の基本から学ぼう
クラウドサービスやAI分野の発達により、現代はプログラミングに触れる機会が多くなっています。未経験者がプログラミングを学ぶ場合、どのように学習を進めて行けば良いのか、方法やポイントを解説します。ジョブサポートでも若手、新人SE・PG向けのJava研修を行っていますが、内定者管理の期間内にプログラミングを学ばせたいと考えている企業の採用担当者もご活用いただけると思います。いきなり学習をさせるのではなく、勉強方法や基本から学ぶのが良いと思います。
目次[非表示]
- 1.プログラミング学習で大切なこと
- 1.1.実際にプログラムに触れること
- 1.2.完璧を求めすぎて時間を浪費しない
- 2.学習を始める前に必要な基礎知識
- 2.1.プログラムでどんなことができるか
- 2.2.学習環境を整える
- 3.学ぶ言語の選び方は3通り
- 3.1.目的に合った言語を学ぶ
- 3.2.すぐに実行できる言語から選ぶ
- 3.3.人気のある、仕事でニーズの高い言語を学ぶ
- 4.学習には楽しい要素を取り入れる
- 5.リアルとオンラインはどちらが良いの?
- 6.GitHubを使って学習効率を上げる
- 6.1.使えるようにしておきたいツール
- 6.2.学習記録としての活用方法も
- 7.意欲を維持することで効率的な学習が叶う
プログラミング学習で大切なこと
Webサイトやブログなど、身近なところでもプログラムは利用されるようになってきており、プログラミング学習を行う人は増えてきました。
しかし、プログラミング未経験の人の中には、「どうやって学習を進めて行けば良いか分からない」という人もいるのではないでしょうか。
プログラミング学習の方法について解説する前に、まずは学習するために重要なポイントを解説します。若手、新人エンジニアの成長を阻む 人材育成5つの失敗と解決策はこちら
実際にプログラムに触れること
書籍や動画など、個人でもプログラムを学習するための資料は簡単に入手できます。しかし、プログラミング学習においては、知識だけを得ても有効とは言えません。重要なのは、実際にプログラムに触れてみることです。
例えばSQLというプログラム言語の中には「重複しない行を抽出する」というunique関数というものがあります。これだけを聞くと、何のことか分かりません。 しかし、実際にデータベースを使い、この関数を使ってみると「こういうことだったのか」というのがすぐに分かるでしょう。実際にプログラムに触れることは、学習効率を高める上で重要な要素です。
完璧を求めすぎて時間を浪費しない
プログラムを記述することを「コーディング」と呼びますが、実際に動かそうとしても、思ったように動かない、エラーを吐いてしまうといったことは、熟練のプログラマーでも起こりえます。
加えてプログラムの概念の中には、「他の知識がないと絶対に理解できないもの」がいくつもあります。Javaで言えば、カプセル化やクラスの概念は初心者では理解が難しく「完璧に理解してから進もう」とすると習得までに時間がかかり、挫折率も高くなります。ジョブサポートの若手、新人SE・PG向けのJava研修はこちら
完璧に理解するのではなく、要点だけを捉えつつ学習を進めていきましょう。一つの要素にこだわるあまり、時間を浪費しすぎないよう注意する必要があります。
学習を始める前に必要な基礎知識
プログラミング学習を始める前に、以下の知識についてはあらかじめ得ておくようにしましょう。
プログラムでどんなことができるか
プログラムと一口に言っても、自動車の駆動系の制御から電子レンジや洗濯機の操作、ゲームやアプリケーションのシステムなど、さまざまなものができます。
自動車の駆動制御をするプログラムと、ゲームで使うプログラムは言語内容も、業務自体もまったく異なります。
プログラムを使って、何ができるかを事前に把握しておき、目標ややりたいことから学習する言語や工程や職業について考えましょう。
学習環境を整える
プログラミング学習をするのにPCを持っているのは前提です。他にも、スマホアプリの開発であればスマホ、サーバーやデータベースについて学ぶなら、それらを用意しておく必要があります。
加えて、プログラムによっても開発環境を別途に用意する必要があるでしょう。
例えば、プログラミング言語の中でも有名なJavaは、開発環境としてJDK、Eclipseなどが必要になります。コードを書くにも、メモ帳よりもエディタの方が便利です。
プログラミング学習のための環境構築も、効率良く学習を進めて行くためには必要不可欠と言えます。プロエンジニア育成コース(Java1~3ヶ月)-株式会社ジョブサポート
■関連記事
学ぶ言語の選び方は3通り
実はプログラミング言語は数百種類以上あり、初心者はその中からどの言語を学習するかを選ばなければなりません。
言語を選ぶ基準として、以下のポイントを押さえておきましょう。
目的に合った言語を学ぶ
前述した通り、プログラムには車を制御するためのもの、Webアプリやゲーム開発に使うものなど、さまざまな種類があります。
自分がどんなものを開発したいか、どんな仕事に携わりたいのか、目的に合わせて選ぶようにしましょう。
加えて、WindowsやMac、AndroidなどのOSによって、それぞれ向き不向きがあります。OSや開発環境に合わせて選ぶことも重要です。
すぐに実行できる言語から選ぶ
プログラミング言語は、書いたコードをそのまま実行できる「スクリプト言語」と、ソースをコンピューターが実行できるようモジュールを作成する「コンパイラ言語」の2種類があります。
スクリプト言語として有名な言語は、Python、JavaScript、PHPなどがあります。こちらの言語の場合、書いたコードが即実行できるので、初心者が始めてプログラミング学習するのであればスクリプト言語の方がおすすめです。
中でも、HTMLやCSSは、サイトのデザイン、サイトに文字や絵をつけるためのプログラミング言語です。実行がとても簡単なため、Webサイトを操作するプログラミングを学びたい人にとってハードルが低い言語と言えます。
人気のある、仕事でニーズの高い言語を学ぶ
JavaやJavaScript、HTMLやCSSは人気の高い言語です。学習するプログラミング学習を選定する際には、人気の高い言語を選ぶことも重要です。Java短期講座(入門5日・基礎10日)はこちら
なぜなら人気のある言語は、企業がプログラマーの人材を募集する際などに、習得していることを条件にされている可能性も高いためです。大規模なプロジェクトや長期案件では複数人のプログラマーが関わることになるため、人気のある言語が選ばれます。
加えて、人気のある言語はプログラミングスクールや情報を載せているWebサイトも多く、学習がしやすいというメリットがあります。
特に日本でマイナーな言語の場合は、英語でしか学習サイトがない、エンジニアがいないなどの理由で、学習には不向きです。若手、新人エンジニアの成長を阻む 人材育成5つの失敗と解決策はこちら
学習には楽しい要素を取り入れる
プログラミングは、数字や命令文と向き合い続ける必要があるので、人によっては退屈で、単調に感じてしまうかもしれません。学習を楽しめる要素を取り入れましょう。
絵やゲームの作成でプログラミングに慣れる
実際にプログラムの動くところを見ながら学んでみる、というのがプログラミング学習を長続きさせるコツです。
有名なものとしては「Unity」があります。Unityとは、総合開発環境を内蔵したゲームエンジンで、企業開発から、個人がミニゲームを作ることも可能です。Unityでは、JavaScriptやC#を使ってゲーム開発が行えます。
学習ソフトの中には、絵やゲームをテーマにした教材も多くあります。自分が興味のあったり、遊びながら学べたりするテーマだと、学習を継続させるハードルが下がります。
HTMLやCSS、JavaScriptの知識を活用したアプリ開発
HTMLやCSSは主にWebサイト上のデザインやレイアウトの操作、文章を整えるのに用いられます。JavaScriptは、フォームやアニメーションの組み込みなど、よりWebサイトを動的にするための言語です。フロントエンド(HTML・CSS・JavaScript)入門5日-株式会社ジョブサポート
これらの言語を使うことで、スマホアプリを作ることも可能になります。
実装できるレベルのスマホアプリとなるとハードルは高めですが、簡単なアラームやメモ帳などを作るのはそこまで難しくはありません。アプリの完成やWebサイトの公開など、成果として見える目標を立てるのも学習する上でのポイントです。
リアルとオンラインはどちらが良いの?
プログラミング学習を進める上では、プログラミングスクールやセミナーに参加するなどの「リアル」学習を進める方法と、プログラミングサイトやウェビナーなどを利用した「オンライン」学習があります。
どちらの方が、プログラミング学習を効率的に行えるのでしょうか?
実際に講師から学べるのはやる気につながる
リアルのメリットは、講師がその場で手本を見せてくれる、指導してくれるなどのコミュニケーションがとりやすい点でしょう。スクールに通う仲間や実際の講師との交流を通して、やる気のアップにもつながります。
しかし、学校まで通う交通時間や通学費、授業料などの実費はオンライン学習よりも高くなる傾向があります。
オンラインは自由度や費用面がメリット
一方のオンライン学習は、自分の好きな時間に勉強ができる、費用が安く済むといったメリットがあります。オンラインでプログラムを学べる学習サイトでは、月額1000円前後でプログラムを学べるようなサービスもあってお得です。
コミュニケーションの問題も指摘されていましたが、最近はオンラインで講師と直接やりとりをしながら学べるといったサービスも多く提供されています。オンライン・リモート講座(入門5日・基礎10日)-株式会社ジョブサポート
■関連記事
GitHubを使って学習効率を上げる
プログラムに興味がある方なら「GitHub」(ギットハブ)という言葉を聞いたことはあるでしょうか。GitHubの概要や使い方について解説していきますので、ぜひ使ってみてください。
使えるようにしておきたいツール
GitHubではGitというサービスが使われています。Gitはファイルに対して「誰がいつ更新したか」を記録し、更新時点まで復元することや、どの部分を変更したかを見ることができます。GitHubは、このGitの仕組みを利用して、プログラミングで記載したソースコードを管理するサービスになります。
GitHubは、実際のプロジェクトでもよく利用されます。GitHubが他に持つ特徴として、書いたコードを公開したり、別の人が書いたコードを取り込むことができるという点です。
自分の書いたコードが動かなければ、それを誰かに見てもらったり、他の人がどのようにコードを書いているのかを閲覧したりすることで、学習効率を高めることにつながります。
学習記録としての活用方法も
前述したようにGitHubは更新履歴を記録できるので、自分の学習記録として使うことも可能です。
過去の自分はどのようなコードの書き方をしていたのか、また過去に学習した項目の見直しにも使えます。プログラマーとして将来的に運用していく可能性もあるので、使えるようになっておくと、就職活動にも役立つでしょう。
意欲を維持することで効率的な学習が叶う
プログラミングは、今や生活に身近なものになっています。プログラミングで行えることの幅は広く、何をするかによって言語の選択、学習環境の構築が必要です。
最大のポイントは、意欲をどう維持していくかということです。プログラミングの作業は、数字やコンピューターの命令文と向き合う作業のため、人によっては学習の挫折や問題が起こったとき、大きなストレスを感じてしまうでしょう。
学習を継続するため、モチベーション管理を適切に行いましょう。ゲーム感覚で学習するための手法や、人とコミュニケーションをとりながら学習できる環境を整えることも重要になります。