初心者のためのプログラミングの始め方!9つのステップ

プログラミングの始め方
  • このエントリーをはてなブックマークに追加
  • Pocket

プログラミングを始めようとしたとき、現役エンジニアに質問すると、

「プログラミング言語とかなんでもいいよ!」

「作りたいものを作ればいい! その熱意が大事だ」

など、プログラミング初心者にとって過酷な回答が返ってくることが多い。

結局、何から手を付けて良いのかわからず、結局プログラミングを始められないまま放置してしまうことが多いはずだ。

そこでこのページではプログラミングの始め方について、初心者でも分かりやすいステップバイステップ形式で紹介しよう。極力具体的にまとめているので、参考にしてほしい。

プログラミングを始める9ステップ

それでは早速プログラミングの始め方を紹介してゆこう。

1. Webサービスを作るかスマホアプリを作るかを選ぶ

プログラミングで作れるものは、PCにインストールして動作するExcelやWordのようなものから、Webサイト上で動作するもの、スマホで動くもの、ATMなどの業務用システムなど様々だ。

まとめると次のようなイメージになる。

Webアプリ・Webサービス

Webサーバーで動作するアプリで、Webに接続できる環境さえあれば利用することができる。

パソコンで使うときのFacebookやTwitter、Googleなどはすべてこれだ。

WebアプリもWebサービスも呼び方が違うだけで同じもの。

デスクトップアプリ

PCで動作するアプリで、Webアプリのように外部に公開せず、PCにログインしたユーザーが利用できる。

Excel・Wordなどがこれにあたる。

スマホアプリ

AndroidやiOSで動作するアプリで、スマホなどの携帯端末にインストールすることで利用することができる。

スマホで使っているアプリそのもの。

業務用アプリ

ATMや銀行・図書館のシステムなどそれ専用に作られたもの。(定義としては業務で使われるもの全般を指すが、わかりやすいようにこのように分類)

他にもあるし、またどれを選んでも良さそうなものだが、初心者は必ず「Webアプリ・Webサービス」もしくは「スマホアプリ」を選ぼう

理由は下記の4点だ。

  • 普段使っていて親しみがある
  • なんとなくどういう動作をするか想像できる
  • 公開して使ってもらいやすい
  • 作りやすい

Webアプリとスマホアプリは比較的作りやすくて、しかも他の人にも使ってもらいやすい。また、現在の開発の主流なので、仕事などにも直結しやすい。

まずはどちらを作ってみたいかを考えて、どちらかを選ぼう。

2. パソコンを選ぶ

もちろんだが、パソコンがないとプログラミングを始めることができないので準備する必要がある。

ここで注意しておきたいのが、作りたいアプリのタイプによっては使用するパソコンが限定されてしまうということだ

例えばiPhone向けのスマホアプリを作りたいのであれば、パソコンはMacを選ばなければいけない。パソコンの選び方について、詳しくは下記の記事で紹介しているので、参考にしてほしい。

もし、あなたが持っているのがiPhoneでiPhoneアプリを作りたいと思っても、持っているパソコンがWindowsだったら諦めよう。

Androidのスマホを買ってもいいし、MacのPCを買ってもいいがそれも大変なので、Webアプリを作るのをオススメする。

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

次はプログラミング言語だ。こちらもパソコン選びと同様、アプリのタイプによって限定されるケースがあるので注意してもらいたい。簡単だが以下におすすめしたい言語をいくつか紹介しよう。

Java

世界でも不動の人気を誇るプログラミング言語。言語の難易度はやや高めだが、しっかりしたプログラミングスキルを身につけたいならおすすめだ。

PHP

Webアプリ向け言語で初心者でも理解しやすい。手軽にアプリを作れるというのも魅力のひとつである。

Ruby

日本製のプログラミング言語でユーザーも多い。PHP同様に理解しやすいプログラミングができるのも特徴だ。

Python

海外で人気のプログラミング言語で、ソースコードの書きやすさで定評のある言語だ。

Swift

iPhoneやiPad向けのアプリ開発に必要な言語。

また、それぞれの言語でどのタイプのアプリが作れるのかを以下にまとめておく。

言語

Webアプリ

スマホ(Android)

スマホ(iOS)

Java

 

PHP

 

 

Ruby

 

 

Python

 

 

Swift

 

 

プログラミング言語全体について知りたい方は下記の記事がおすすめだ。

特にWebアプリを作るときに選ぶべきプログラミング言語については下記の記事が詳しい。

4. 何を作りたいかを考える

プログラミングするということは何らかのシステムやアプリを作るということだ。何を作りたいか考えよう。

が、アイディア満載のかっこいいサービスを作ろうなどと思わなくていい。なぜなら初心者がはじめから凄いものなど作れるはずがないからだ。

何を作りたいかをなんとなく考えることが大事だ。完璧でなくていい。理由は次の項目で説明する。

ゼロからアイディアを出す必要はなくて、Webサービスやスマホアプリの中でなんとなくこれ作ってみたいな、というものを選んでおくくらいで十分だ。

例えば、Facebookでもいいし、Twitterでもいい。インスタでも構わないし、Gunocyでもいいだろう。

5. 本を買いに走る

言語と作りたいものがなんとなくイメージ出来たら、本を買いに走ろう。

Web上にもたくさん情報はあるが、本を買ったほうがいい。理由は2つある。

  • 人間はお金を払った分しか学べないという不思議な性質がある
  • 本は有料だ。必ず誰かが校閲しているし、著者も真剣に書いている

だからこそ本を買うべきだ。小さいお金を節約するよりも、払って自分にプレッシャーをかけたほうが、結果的に効率がいい。

プログラミング本の選び方

教えてくれる人がいるのであれば基礎からしっかりと学べるタイプの本を選ぶことだ。時間はかかるかもしれないが、結果的に力が付く。

教えてくれる人がいなければ、次の基準で選ぼう。

  • とにかく簡単そうな本
  • 上の項目で、自分が作りたいと思ったアプリに多少でも似ているものが作れる本

この条件で本を買っておこう。

Javaだったら、次の本たちがおすすめだ。

ここまでで準備は完了だ。

本に沿って、プログラミングの勉強に入っていこう。書籍に頼って、そのままプログラミングをとにかくサンプル通りに打っていく。

はじめは、わからなくても構わない。プログラミングコードを打ち切って、動いた瞬間、理解が必ず進んでいく。

プログラミングの始め方 +α 部分

ここからは蛇足的なものだ。ついでに知っておいて頂いた方がいいことをお伝えしておく。

6. エディタを選ぶ

プログラミングを打ち込むツールとなるエディタの準備だ。

フリーテキストエディタでもプログラミングすることは可能だが、初心者向けにはフリーの統合開発環境(IDE)と呼ばれるエディタがいいだろう。

多くのIDEはフリーテキストエディタの機能に加え、次に書くコードの候補を表示してくれるコード補完機能や、必要なファイルをまとめて管理できるプロジェクト管理機能などが備えられているので、プログラミングするにあたって便利なツールだ。

ただ、はじめ使い方覚えるのが大変なので、挫折しそうになったら早々に逃げてメモ帳などを使って構わない。

Eclipse

EclipseはJavaをはじめ多くの言語に対応した人気IDEだ。プラグインと呼ばれる拡張機能をインストールすることで、さまざまな機能を利用できる。

Visual Studio

Microsoft社が提供しているIDEで、主にWindows系アプリの開発で広く使用されている。有償であるが、無償のエディションも入手可能だ。

Xcode

XcodeはApple社が提供しているIDEで、主にiPhoneやMac向けアプリの開発等で使用されている。

Apanta Studio

Apanta StudioはRubyプログラミングで広く使われているIDEで、Eclipseをベースにして開発されている。

Android Studio

Androidアプリに特化したIDEで、これまでAndroidアプリは主にEclipseで開発されていたが、今後はAndroid Studioが主流となるだろう。

Visual Studio Code

Visual Studio Codeは厳密に言うとIDEではないが、コーディングに特化したIDEにも劣らないテキストエディタだ。言語によって提供される機能は異なるが、コード補完やハイライト表示なども対応している。

また、それぞれのIDEが標準対応している言語をまとめておいた。IDEによってはプラグインを追加することで対応できる言語もあるので、興味があれば調べてみよう。なお、Visual Studio Codeはテキストエディタなので全言語対応しているが、言語によってサポートしている機能が異なるので注意してほしい。

IDE

Java

PHP

Ruby

Python

C#

Swift

Eclipse

 

 

 

Visual Studio

 

 

 

 

Xcode

 

 

 

 

 

Aptana Studio

 

 

 

Android Studio

 

 

 

 

 

Visual Studio Code

テキストエディタに関しては上記以外でも初心者におすすめのものはたくさんある。下記を参考にして頂きたい。

7. データベースを選ぶ

どんなシステムでもほとんど必ずデータベース(DB)が使用されている。

データベースとはデータの保管庫だ。要はExcelだ。顧客の名簿や電話番号などをExcelで管理できるのは想像できるだろう。

Excelよりも難しいけれど、さらに色々とできるようになったものだと理解しておこう。

データベースはプログラミングをするときに必ず使う。書籍に載っているものを使えばいいが、種類は紹介しておこう。

MySQL

オープンソースDB代表格と言えばMySQLだ。システム規模の大小を問わず、世界で最も使われているDBだと言える。

PostgreSQL

PostgreSQLはMySQLと並んで評価されているオープンソースのDBだ。商用DBに匹敵する機能を持ち、近年シェアを広げている。

MariaDB

MySQLから派生したDBで、MySQLとは高い互換性を持ち、独自の特徴も兼ね備えた期待のDBである。

Oracle

歴史の古いDBで、大規模システムで使用されるケースが多い。有償版だが、開発用に無償で使えるエディションもある。

SQLite

軽量でコンパクトなDBで、スマホなど容量制限のある端末に適している。Android端末の標準DBとしても採用されている。

8. Webサーバー

Webアプリを作りたい場合は、Webサーバーというものの準備が必要だ。作るだけならパソコンだけで構わないのだが、世の中に公開してみたい!といった場合には、Webサーバーが必須になる。Webサーバーとは?については下記で説明している。

もう少し詳しく説明をすると、Webサーバーと呼ばれるものには主として3種類ある。一番上のApacheが使う時には無難だ。

Apache HTTP Server

世界中で最も使用されているWebサーバーソフトウェアで、規模の大小を問わないWebサーバーの構築が可能。

IIS

Windows向けのWebサーバーソフトウェアで、Apache HTTP Serverと並んで使用されるWebサーバーのひとつ。

nginx

「エンジンエックス」と読み、高速処理が可能で大規模Webサイトを中心に人気のあるWebサーバーだ。

ただ、あまり深く考える必要はない

レンタルサーバーを借りてそのまま、そこで動いているものを使えばいい。そういうものがあるんだなとだけ知っておけば十分だ。

9.フレームワークを選ぶ

効率的にプログラミングをしたいのであれば、フレームワークを選ぶといいだろう。

フレームワークとは簡単に言えばアプリの動作に必要な機能をまとめて提供しているもので、プログラムからフレームワークの機能を呼び出しことでさまざまな機能が利用できるのだ。主にWebアプリ開発で使用するフレームワークが中心になるが、以下にSTEP4で紹介した言語の代表的なフレームワークを紹介しておく。

Java

Struts

歴史あるフレームワークで広く利用されているが、最近では利用者が減少傾向にある。

Spring

オブジェクト間の依存度を低くした構成が可能で、Web以外のアプリ作成もできる。

Play Framework

JavaだけでなくScala言語でも使えるフレームワーク。自動コンパイルが便利。

JSF

JSFはJava EEの仕様にも採用されており、Strutsからの移行例も増加している。

PHP

CakePHP

PHPの代表的なフレームワークで、快適なプログラミングが可能。

CodeIgniter

初心者にも覚えやすく、軽量でスピーディーな開発ができる。

Symfony

Ruby on Railsの影響を受けたフレームワーク。Yahoo!での採用例がある。

ZendFramework

クラスライブラリが豊富で拡張性が高く、柔軟なシステム設計ができる。

Ruby

Ruby on Rails

Rubyのフレームワークでは最も有名で、チュートリアルが豊富にそろっている。

Sinatra

小規模Webアプリの特化したフレームワークで、簡潔なコーディングができる。

Padrino

Sinatraをベースとして作られたフレームワークで、中~大規模サイト向けだと言える。

Python

Bottle

軽量でシンプルなフレームワークで、1ファイルだけで構成されている。

Django

高速さが特徴の完成度の高いフレームワークで、負荷の高いWebアプリにも対応できる。

CherryPy

Bottleに負けないくらい軽量なフレームワークで、Webサーバーとしても動作する。

最初は簡単に準備できるものから

プログラミングの始め方についてステップバイステップ形式で紹介したが、いかがだっただろうか?

全てのステップを完璧に抑えておく必要はなく、5ステップ目までで、後は「書籍に従って進める」で構わない。

まずは、できる範囲から初めて、エンジニアの入り口までたどり着いてほしい。

  • このエントリーをはてなブックマークに追加
  • Pocket

このページの続きや関連ページは下記から一覧で確認できます。

IT講師に興味はありませんか?

・「今までIT講師をやってきたが、更に多くの講義を行いたい」

・「エンジニアとしてやってきたが講師業に魅力を感じている」

・「講師として活躍するためにベースとなる知識を知りたい」

・「様々な分野や言語の講師にチャレンジしてみたい」


という方はぜひIT講師募集のページをご覧ください。


リスキルテクノロジーでは「受講している方々にITを好きになってもらう」ことを目標に、同じ目標に向かって歩んで行ける講師の方を常に探しています。


システム開発やインフラ構築などのエンジニアリング経験を活かし、新入社員などの未経験者や経験の浅い初学者の方々に対してITトレーニングを行っていただくことになります。


テキストやカリキュラムは事前に用意されており、それらを元に講義を進めていくため、IT講師をはじめて実施する方でも安心してトレーニングを実施できます。


IT講師募集のページを見る

SNSでもご購読できます。

コメントを残す

*

未経験からの育成制度も充実
IT講師に興味はありませんか?

リスキルテクノロジーでIT講師の積極募集を開始! 経験・未経験問わずご応募可能。育成制度で講師スキル向上も目指せます

IT講師に応募する