文系でもわかるJavaプログラミング

2019年12月5日

まだまだプログラミング歴、知識ともに浅いエンジニアではありますが、これまで学んできたJavaのプログラミング学習をまとめて入門書のようにしてみようと思いました。

プログラミングは文系でもできるのか、30歳で始めても大丈夫なのかと色々不安でしたが、やってできないことはありません。パソコンとインターネット環境さえあれば手軽に始められて、学習もある程度なら自分でできて、将来の目標も立てられるプログラミングの魅力を多くの人に伝えたいと思っています。

ただし、金銭的に余裕があるのならばプログラミングスクールに通うことをおススメします。理由は色々ありますが、「わからなくなっても聞ける人がいない」というのが大きいかと思います。プログラムを勉強しているとエラーがたくさん出て困ることがありますが、独学だと自分で調べることしか解決の方法がないのです。

【PR】プログラミングスクール【PR】独学で挫折しそう、やっぱり難しい、手早く学びたい。そんな人にはやはりプログラミングスクールがお勧めです。

【プログラミングスクールを利用するメリット】

JavaはWebアプリケーションなどを作ることができるプログラミング言語です。しかし、独学だと基本事項からなかなか抜け出せず、アプリを作るイメージができずに挫折してしまう人も多いです。紹介する二つのプログラミングスクールのJavaコースはWebアプリケーションを作ることを前提にカリキュラムが組まれていますので、より実用的な内容を学ぶことができます。

 

おすすめ1▶TechAcademy
Javaコース

おすすめ1▶CodeCamp
Javaマスターコース

しかし金銭的、時間的な事情で独学で始めざるを得ない人も多いでしょう。そんな時に頼りになるのがインターネットです。




インターネット上にはエンジニアの方たちの記事があり、とても勉強になります。初歩的な内容を記してくれているサイトもたくさんあって大変助かります。しかし、説明が不十分だったり、既にある程度の知識がある人なら理解できるのかなという内容のものが多いのも事実です。

特に、もともと文系で高校や大学で理系科目を学んでいない人は、とっつきにくい用語がたくさんあって途中で挫折しやすいと思います。

そこで、文系出身で30歳からプログラミングを独習し始めた私がつまづいたところ、わかりにくかったところなどをまとめていこうと思いました。プログラミング経験とするとまだまだ未熟ですので誤っている知識などがあるかと思いますが、コメント欄でご指摘いただけると助かります。

本記事は一つの学習到達目標として、Oracle Java SE 7/8 Bronzeの取得とします。これはJavaの最も基礎的なプログラムの仕様を問うベンダー試験です。この試験に関してはこちらで記事にしていますので参考にしてください。※現時点ではBronzeの内容を網羅していません。

目次

記事の概要を示します。

1.初めの一歩

「どこにどうやってプログラムを書くのか」、「どうやってプログラムを動かすのか」という基本的事項について書いています。

プログラムは基本的にテキストエディタに書きます。テキストエディタとは、代表的なアプリケーションとしてメモ帳があります。メモ帳にプログラムを書いた後、コマンドプロンプトを起動して実行します。

JavaではJDKという開発環境のインストールが必要になってきます。この記事ではJDKのインストールから始めて、コードを書いて、動かすという一連の流れを学びます。

その後、プログラミングを効率的に進める統合開発環境Eclipseの導入を行います。




2.プログラムの書き方の基礎

この記事ではプログラムの基本的な書き方を学びます。 プログラムに必須の知識であるリテラル、変数、配列の扱いについて実際のプログラムを示して記述しています。内容としてはかなり単調なものですが、重要な知識です。

3.制御文

第2章に続き、プログラミングに必須の知識である制御文について学んでいます。 制御文は大きく分けて選択構文、繰り返し構文からなります。

プログラムの多くはこの二つの構文を組み合わせて成り立っています。これらを使えるようになるとだいぶプログラムらしくなってきます。




4.クラスとメソッドの扱いとコンストラクタ

Javaプログラミングの肝といえるのがクラス、メソッド、コンストラクタです。大きなプログラムを構築していくうえで大切な考え方は「オブジェクト指向」と呼ばれます。

Javaを学ぶ上で大きな壁となるのがこの概念ですが、サンプルプログラムを書いて動かすことで徐々に慣れていきましょう




5.継承とインターフェース(未執筆)

クラスやメソッドを学びながらオブジェクト指向の基礎を学んだうえで、応用的な知識となるのが継承とインタフェースです。

応用的とはいえ、Javaプログラミングにおいてはかなり基礎的な知識となるものです。

この記事を学んでできるようになること

率直に言って、この記事で紹介されている内容でできるようになることは、ほとんどないです。

Oracle Java SE 7/8 BronzeというJavaの資格がありますが、それに合格するほどのJavaの知識があっても実は自分ではシステムはおろか小さなアプリも作ることができないです。

実は、例えばWebアプリを作るときは、Javaのプログラムの書き方に加え、Webアプリを作る知識も必要だからです。 Webアプリを作り知識にはもちろんJavaのプログラムの知識も含まれます。それに加え、Webの知識、データベースの知識などが必要となってきます。つまり、ここで書いたJavaの知識はWebアプリを作る知識のほんの一部にすぎません

Webアプリを作るまではかなり長い道のりです。独学でもやってできないことはありませんが、やはりプログラミングスクールに通うなどしたほうが近道でしょう。 当サイトでおススメしているプログラミングスクールは、Javaのプログラムを学ぶとともにWebアプリを作るための知識も身に付けられるようになっていますので検討してみてはいかがでしょうか。

おすすめ1▶TechAcademy
Javaコース

おすすめ1▶CodeCamp
Javaマスターコース

Javaの知識について

ここに書いたJavaの知識は、Javaだけではなくて他のプログラミング言語にも共通する知識が多いです。変数や配列、クラス、メソッドなどは様々なプログラミング言語に共通する知識です。特にC言語系のプログラミングでは似たようなプログラムがたくさん出てきます。

これだけではWebアプリも何も作れるようにはなりませんが、プログラムを学ぶ上での土台として身に付けておく知識としてはかなり重要なものですのでじっくり学んでいくことをおススメします。