Photo by Ruth Hartnup
こんにちは。谷口です。
先日paizaが行ったアンケートで、「好きなプログラミング言語」の2位(※社会人1位・学生3位)にJavaがランクインしました。
paiza.hatenablog.com
Javaは、1990年代前半にサン・マイクロシステムズ(2010年Oracleにより吸収合併)でジェームズ・ゴスリン氏、ビル・ジョイ氏らによって開発されて以降、長年世界中の幅広い開発分野で使用されています。Javaエンジニアの求人は、これまでは金融関係のシステム(ATM等)などの比較的大規模開発案件が中心でしたが、近年ではAndroidのネイティブアプリ開発現場等でもかなり増加しています。
Javaを習得できれば、Webサービスだけではなく組込み系やデスクトップアプリ等、大小様々なシステムに活用することができます。JavaはOSに依存せず、ライブラリも豊富なため、開発の幅が広く、有名なサービスではTwitterやEvenoteなどでも使われています。
paizaにも「もっとJavaの勉強がしたい」「Javaでもっといろいろな問題が解きたい」という声が多く寄せられていますので、今回はJavaの練習問題がたくさん解ける学習コンテンツを9件ご紹介します。
【目次】
■Javaの問題がたくさん解ける学習コンテンツ
◆プログラミング問題
◇北ソフト工房 Java 練習問題集
Java用のほかに、C#やC言語用の問題なども公開されているサイトです。文法や処理ごとに基礎的な問題がたくさん公開されているので、問題を解きながらJavaを学びたい方は重宝するかと思います。
◇エンジニアの入り口 【初心者向け】勉強になるJavaの演習問題まとめ
アルゴリズム編・構文編・知識編・オブジェクト指向編の4分野ごとに複数の問題が公開されていますので、たとえば「プログラミングの経験はあるけど、オブジェクト指向言語は使ったことないんだよな~」という場合なども効率よく学べるかと思います。
◇CodingBat
CodingBatでは、JavaとPythonの問題をオンラインで練習することができます。海外のサービスで英語にしか対応していませんが、その場で回答コードを書けば結果を判定してくれますし、とにかくたくさん問題を解いてJavaを使う練習がしたい人にはぴったりだと思います。
◇paizaのスキルチェック問題
paizaでは、JavaはもちろんPHP、Ruby、Python、C、C++、C#、JavaScriptなど多数の主要言語に対応したスキルチェック問題を公開しています。
プログラミング問題を解いた結果によりS・A・B・C・D・Eの6段階で自分のスキルのランクが分かります。問題はレベルごとに分かれており、初心者から上級者の方まで挑戦していただけますので、「自分のプログラミングスキルを客観的に知りたい」「とにかくたくさん問題が解きたい」という方は是非チャレンジしてみてください!!
ただ、スキルチェック問題は就職・転職活動におけるスキルレベル測定が目的となっており、プログラミング自体まったく未経験の方が挑戦するには少しハードルが高いかと思いますので、未経験者・初心者の方は、以下のpaizaラーニングやコードガールこれくしょんから始めていただくのがよいかと思います。
◇paizaラーニング
オンラインでプログラミング学習ができる「paizaラーニング」には、JavaはもちろんPHP、Ruby、Python、JavaScript、HTML/CSS、SQL、などなど多数の言語から、Webアプリ開発入門、ITエンジニアのキャリア入門などのレッスンもございます。
「paizaラーニング」では、動画レッスンを見て、その場でレッスン内容をプログラミングすることで理解を深め、その後に練習問題を解いて応用力をきたえることができます。また、わからない点は担当の現役エンジニアに質問をして、アドバイスをもらうこともできます。
◇コードガールこれくしょん
paizaが公開している「コードガールこれくしょん」略して「ガルこれ」は、ナビゲーターと一緒にプログラミング問題を解き、「コードガール」を集めながらストーリーを進めていく、プログラミング学習ゲームコンテンツです。JavaはもちろんPHP、Ruby、Python、C、C++、C#、JavaScriptに対応しています。
ゲーム内ではクエスト報酬やログインボーナス・ミッションクリア等の各種特典として手に入る「コイン」や「ダイヤ」を使って、ガチャでさまざまな「コードガール」を収集することができます。クエストで有利になる特殊スキルを発動させたり、「これくしょん」に入れてマイページに飾ったりと、コードガールをたくさん集めるほど楽しみ方が広がります。
◆選択問題
◇TECH Projin Java練習問題
Oracle主催のJavaスキル認定試験の勉強用練習問題が多数公開されています。資格に興味がない人でも問題を解くこと自体はJavaの勉強になりますし、問題が選択式なので気軽に挑戦できます。こちらのサイトは解答に簡単な解説もついていて、問題も最新のものがどんどん追加されているので、私もちょくちょく拝見しています。
◇はじめてのJava入門
こちらは項目別にわかれたJava問題集です。問題は選択問題か一問一答の記述問題で、Web上で採点してくれます。出題がランダムになっているため、何度か挑戦して完璧を目指すのもよいかと思います。回答欄を埋めないまま模範解答だけ見ようとして解答ボタンを押すと「ちゃんと答えてからね」のポップアップが出るところが好きです…。
◆書籍
◇Java8問題集 理解を深める500問

Java8問題集 理解を深める500問 (SCC Books 388)
- 発売日: 2016/03/05
- メディア: 単行本(ソフトカバー)
■まとめ
前述の通りJavaは開発の幅が非常に広いため、募集求人も多く、習得できればエンジニアとしての対応範囲も格段に広がるかと思います。ご興味のある方はぜひともJavaの学習を始めてみてください、そしてある程度の基礎が身につきましたら、ぜひpaizaでご自分のスキルをはかってみてくださいね。
paizaは、技術を追い続けることが仕事につながり、スキルのある人がきちんと評価される場を作ることで、日本のITエンジニアの地位向上を目指したいと考えています。
自分のスキルを磨いていきたいと考えている方におすすめなのが「paizaラーニング」。オンラインでプログラミングしながらスキルアップできる入門学習コンテンツです。初心者でも楽しくプログラミングの基本を学ぶことができます。
そして、paizaでは、Webサービス開発企業などで求められるコーディング力や、テストケースを想定する力などが問われるプログラミングスキルチェック問題も提供しています。
スキルチェックに挑戦した人は、その結果によってS・A・B・C・D・Eの6段階のランクを取得できます。必要なスキルランクを取得すれば、書類選考なしで企業の求人に応募することも可能です。「自分のプログラミングスキルを客観的に知りたい」「スキルを使って転職したい」という方は、ぜひチャレンジしてみてください。