ITキャリアの悩みをカウンセラーが解決! 無料ITキャリア相談はこちら

プログラミングの始め方。未経験者が踏むべきステップを解説

作成: 2019.02.26 更新: 2020.05.26

>>2020年テクノロジー業界に挑戦すべき5つの理由

不安定な時代を生き残るための限定資料はこちら

プログラミングに興味がある、やってみたいと思っていませんか。

一見すると難しい作業に思えるプログラミング。全く未経験の状態から始めるのは、ハードルが高く感じることでしょう。何から手をつければいいのかすらわからないことと思います。

そこでこの記事では、プログラミングの始め方と初心者におすすめのプログラミング言語などを紹介します。

プログラミングの始め方

プログラミングをやってみたいと思った時、まず何から始めれば良いのでしょうか。プログラミングを始めるための4つのステップを解説します。

何を作るか決める

プログラミング技術を活用して開発されたサービスはたくさんあります。自分もプログラミングをやってみたい、と思ったのであれば、具体的に何を作るのかを決めましょう。

それによってどんな言語を学ぶべきなのか、何を準備するべきなのかも変わってきます。これからの学習方針を決める上でも目標が大切です。
初心者でも開発しやすいサービスとしては、

・スマートフォンアプリ
・Webサイト
・簡単なゲーム

などがあります。あなたが普段色々なサービスを利用するなかで「こんなサービスがあったら便利だな」と思うものがあるのであれば、その開発をゴールに設定して始めてみることもおすすめです。

パソコンを選ぶ

プログラミングを行うためには、パソコンが必要です。プログラミング用のパソコンのスペックは開発するシステムの規模や複雑さによって異なります。

ただ、パソコンは安いものでも数万円、ある程度のスペックを兼ね備えた端末になると10万円以上なることも。初心者がいきなりプログラミング用のパソコンを購入することはリスクがあります。

せっかく高価なパソコンを購入したのに、学習が中途半端に終わってしまっては無駄遣いになりかねません。

まずは今持っているパソコンで試しにやってみて、本格的に始めたくなったタイミングで購入を検討することをおすすめします。基本的なプログラミングであれば、高いスペックは必要となりません。現在お使いのパソコンでも十分でしょう。

パソコンはMacがおすすめ

プログラミング用に新しくパソコンを購入する場合はMacがおすすめです。

WindowsPCでもプログラミングをすることはできますが、作業効率や端末の持ち運びの面でMacのほうが利便性が高いためです。

また、開発したいものがiPhoneアプリの場合は、開発に必要なツールの利用上MacのPCを利用するのが一般的です。Macであれば幅広い開発にも対応できます。

■TECH::NOTE関連記事

プログラミング言語を選ぶ

開発したいものとパソコンを用意したら、次にどのプログラミング言語を用いて開発を行うのかを決めましょう。

プログラミング言語は10年以上使われている歴史のある言語から数年以内に開発された比較的新しいものまで様々です。それぞれの言語には特徴があり、開発に向いているシステムや難易度も異なります。

初心者におすすめのプログラミング言語

初めてプログラミングをする、という初心者の方には以下の言語がおすすめです。

・Ruby
・Python
・PHP
・JavaScript

Rubyは日本人が開発したプログラミング言語で、Webサービスの開発に多く採用されています。構造や文法が比較的シンプルで初心者にもわかりやすい点に加えて、日本初の言語ということで日本語の解説サイトや参考書が豊富にある点も魅力的です。

Pythonはコードがシンプルで読みやすく、学習難易度があまり高くないことから初心者に人気の言語です。YouTubeやEvernote、Instagramなど世界的に有名なWebサービスの他、人工知能(AI)などの開発にも用いられています。

PHPはWebアプリケーション開発におけるサーバーサイドの言語として長きにわたって用いられている言語で、ソースコードが読みやすく、初心者にも学習しやすい言語です。現在でも多くのサービスがPHPを用いて開発されていることから、求人市場においてもPHPを扱える人材の募集が多くあります。

JavaScriptは主にWebサイト上の動的な処理(例:カーソルに合わせてメニューバーが動く)の開発に用いられています。ブラウザとメモ帳などのエディタがあれば開発できる手軽さもおすすめの理由の一つです。

■TECH::NOTE関連記事

フレームワークを使うと便利

多くのプログラミング言語にはフレームワークと呼ばれる仕組みが整っています。

フレームワークとは、アプリケーション開発においてよく使われる処理をまとめて提供するソフトウェアのことです。開発に必要な機能が揃っているパッケージのようなものをイメージして頂くと良いでしょう。

フレームワークを元に開発を行うことで、ゼロから自分でソースコードを書くよりも短時間で開発ができます。各言語でフレームワークが用意されているため、利用するプログラミング言語が決まったらフレームワークについても調べてみましょう。

■TECH::NOTE関連記事

エディタを選ぶ

言語が決まったら、次は開発環境の構築です。JavaScriptなどブラウザとエディタだけで開発ができる言語もあれば、Javaなどツールをインストールして設定を行い開発環境を構築する必要があるものもあります。

エディタについては、パソコンにすでにインストールされていることが一般的であるメモ帳を使うことも可能ですが、エディタ内での検索や編集、置換などの使い勝手を考慮すると別途高機能なエディタを用意する方がおすすめです。

統合開発環境(IDE)とは

統合開発環境(IDE)とは、ソフトウェアの開発で利用されるエディタ、デバッガ、コンパイラなどのソフトウェア、さらにその他の開発支援ツールなどとを一つにまとめ、一つのツールの中で全ての作業が行えるようにした開発環境です。

プログラミングを使った開発に必要となるツールが一通りそろっています。

IDEを利用して開発を行うことで、作業効率が大幅に向上させることができます。おすすめのIDEについては以下の記事で詳しく解説しています。合わせてご覧下さい。

■TECH::NOTE関連記事

データベース管理システムを選ぶ

データベース管理システムとはデータの保管庫を管理するシステム。ほぼ全てのシステムがデータベース(DB)を使ってデータ管理をしています。

データベース管理システムには以下のような種類があります。開発したいプログラムに応じて選択しましょう。

MySQL

オープンソースのDB管理システムとして代表的なもの。システム規模の大小を問わず、世界で最も使われている。

PostgreSQL

MySQLと並んで評価されているオープンソースのDB管理システム。商用DB管理システムと並ぶ機能性があり、シェアを広げている。

MariaDB

MySQLから派生したDB管理システムで、MySQLとは高い互換性を持つ。

Oracle Database

企業などの基幹システムなど大規模システムで使用されることが多い歴史あるDB管理システム。基本的に有償だが無償版もある。

SQLite

スマートフォンなどの容量に制限のある端末に適している軽量でコンパクトなDB管理システム。Android端末の標準DB管理システムとして採用されている。

Webサーバーソフトウェアを選ぶ

プログラムを開発し、Webサービスを一般向けに公開したいと考えている方はWebサーバーの準備が必要になります。

Webサーバーを立てるためのWebサーバーソフトウェアには、Apache HTTP ServerやIISがあります。様々な企業が提供しているレンタルサーバーを借りて、Webサーバーは立てます。AWSやGoogle Cloud Platform(GCP)といったクラウドを利用して、Webサーバーを立てる場合が多いです。

プログラミングを続けるためのポイント

使用する言語によっては今日からでも気軽に始められるプログラミングですが、3日で飽きてしまった、わからないことがあって続かない、ということもよく起こります。

プログラミングを楽しみながら、学習を続けるためのポイントをいくつか紹介します。

学習用Webサービスを使う

独学でなんとなく学習を続けていると、学習のゴールや成果が見えず挫折してしまいがちです。

ステップを踏みながらちゃんとスキルを身に着けたい、と考えている人は学習用のWebサービスを利用してみましょう。

2020年からの小学校でのプログラミング学習の義務化の影響もあり、現在は、プログラミングを学ぶことができるWebサービスやアプリがたくさんリリースされています。

中には子供向けのもの、「そもそもプログラミングとは」から丁寧に解説してくれる初心者向けのものもあり、その多くが無料で利用することができます。

また、自宅にいるときやカフェなどでも気軽に勉強できる点もメリットです。時間が確保できるタイミングで学習を薄められることで挫折する確率も下げられます。

まずはこれらのサービスをいくつか試してみて、自分にあったものがあればそのサービスをベースに学習を進めると良いでしょう。

一緒に学ぶ人を見つける

一人でやっても面白くない、という方は一緒に学ぶ相手を見つけてみましょう。

身近な友人とともに始めるのもいいですし、例えばSNSなどで一緒に学習する仲間を呼びかけてみたり、企業などが主催する初心者向けのプログラミングセミナーに参加して仲間を見つけるといった方法があります。

また、プログラミングスクールに通うと、教室で一緒に学習する受講生が仲間になることもあるでしょう。受講生たちは目的こそ違えど、同じプログラミングを学ぼうとしているもの同士。意気投合しやすいはずです。

お互いに質問しあいながら進めることで学習意欲も保たれ、また実際に開発したものを披露しあうことで刺激にもなるでしょう。

教材選びをしっかり行う

本やWebサービス、アプリなど色々な学習手段がありますが、どの手段を取るにしても教材選びはしっかりと行いましょう。

自分のレベルにあっているか、説明はわかりやすいかなどを実際に使ってみながら選んでください。

1つの教材だけでなく、いくつか試してみることをおすすめします。

本を購入する場合は、最初から中級者向けの内容を含んだ分厚い本を購入してしまうと内容が難しくなった時に挫折してしまいがちです。初心者向けの薄い本を選び、まずは一冊読み切る(やりきる)ことを目標に始めてみると良いでしょう。

アウトプットをする

プログラミングスキルは、実際に手を動かして開発してみることで身についていきます。本やアプリでの学習に並行して、少しずつでもアウトプットを出していきましょう。

また、学習した内容をブログに書いて発信したり、これからプログラミングを学ぼうとしている人に教えることでさらなる定着が図れます。

アウトプットを少しずつでも出していくことで、学習の成果を実感することができ、モチベーションの維持にも繋がります。

期間限定で受講料が60,000円お得!オンラインでエンジニア転職を実現

テックキャンプ エンジニア転職9/16~22限定で60,000円お得!
◎受講生の3人に1人がオンライン受講。満足度は4.4/5点の高評価
まずは、ITキャリアの悩みを無料カウンセリングで相談!

プログラミングの基礎を学べる本5選

プログラミングに関する書籍はたくさん出版されていますが、今回はその中からおすすめをいくつか紹介します。

リーダブルコード

リーダブルコードは、そのタイトルの通り「読みやすいコードを書くこと」を目的とした参考書です。

プログラミングの目的は意図した通りにプログラムが動作することですが、メンテナンス性や安定した動作のためには余計な処理が書かれていないわかりやすいコードを書くことが求められます。

初心者はもちろん、これから本格的にエンジニアとして働いていこうとしている人にもおすすめです。

Webエンジニアが知っておきたいインフラの基本

Webアプリケーションエンジニアやフロントエンドエンジニアを対象とした本書には、Web開発を行う上で知っておきたいインフラ面の知識が多く紹介されています。

Webサービスの動作や描画が遅い、サーバー構成なども含めて最適なサービスを構築したいという方におすすめです。

プロを目指す人のためのRuby入門

Ruby学習者のための超実践的入門書である本書は、Rubyの基礎から現場で使えるテクニックまで幅広く解説されています。

なお、他のプログラミング言語をすでに学習している人向けに「Rubyと他の言語との違い」などが解説されている一方で、プログラミングの基礎知識(変数など)についての解説は最小限となっているため、未経験者の方は本書の前にあらかじめ基礎知識を得ておく必要があるでしょう。

退屈なことはPythonにやらせよう

非エンジニアや未経験者、超初心者向けの本書では、手作業だと膨大に時間がかかる処理を一瞬でこなすPythonプログラムの作り方について学ぶことができます。

本の中のサンプルコードはPythonで書かれていますが、考え方は他の言語でも応用できます。作業の自動化に興味のある方や、ExcelやWordなどで普段行っている作業を効率化させたいと考えている人におすすめです。

情熱プログラマー ソフトウェア開発者の幸せな生き方

プロのジャズミュージシャンからソフトウェアエンジニアになった後、最優秀のソフトウェアエンジニアとしての評価を受けた著者によるエッセイです。

「プログラマはビジネス視点を持って意識的なキャリア開発をすべき」という視点から、その実践方法を独特の生き生きとした共感できる語り口で伝えられています。

独学が難しければスクールを利用する

プログラミング学習はアプリやWebサービスなどを活用して独学で始めることもできますが、実際には未経験から独学でプログラミングを始めた人の8〜9割が挫折しています。

原因としては、プログラミング独自の構造や文法などを理解することができずに諦めてしまう他、自分に最適な教材が見つけられないことや質問できる人がいないことなどがあります。

独学での学習に挫折してしまった方や就職や転職などを見据えて実践的なスキルを身に着けたいと考えている方は、プログラミングスクールに通うことがおすすめです。

さいごに

プログラミングを続けていくことで物事をより論理的に考えられるようになったり、問題の原因を細分化して考えられたりと、プログラミング以外の仕事の場面でも役立つスキルが身につきます。

アプリなど無料で始めることも出来るので、面白そうと思ったのであればぜひ気軽に始めてみましょう。

3人に1人がオンライン受講!60,000円お得な今がチャンス!

「オンライン受講だと、学習をやりきれるか不安…」と悩んでいませんか?

転職成功率99%のテックキャンプ エンジニア転職では、「やり切れる」オンラインスタイルが大好評!

9/22までの期間限定で受講料が60,000円お得な今がチャンス。

まずは無料オンラインカウンセリングで、エンジニアへの第一歩を踏み出しましょう!

無料カウンセリングの予約はこちら

この記事を書いた人

石田ゆり
元システムエンジニア・コンサルタント。ERPパッケージソフトウェア会社にて設計から開発、品質保証、導入、保守までシステム開発の一通りの業務を経験し、その面白さと大変さを学ぶ。働く人々を支援するバックオフィス系システム・業務効率化ツール等に特に興味あり。趣味は旅行、ヨガ、読書など。