paiza開発日誌

IT/Webエンジニア向け総合求人・学習サービス「paiza」の開発者が、プログラミングやITエンジニアの転職などについて書いています。

20200204140738

ITエンジニア向け総合求人・学習サービス「paiza」の開発者が、プログラミングやITエンジニアの転職などについて書いています。

プログラミング動画学習 paizaラーニング

Javaの勉強に最適!プログラミング問題集があるサイト&書籍12選

f:id:paiza:20161207005002j:plain
Evgeny IgnatikによるPixabayからの画像

f:id:paiza:20180910132940p:plainこんにちは。倉内です。

初めてプログラミングを学ぶ方には、比較的文法が分かりやすいPythonやRubyが入門者向けの言語として人気ですが、その先でITエンジニアを目指しているのであればJavaもおすすめです。

Javaは開発案件数が非常に多く、安定した需要があり、業務システムやAndroidアプリの開発で採用されています。

習得難易度はやや高めではありますが、記述の規則が厳格であるためプログラミングの基礎固めによい、Javaを学ぶと他の言語を学ぶハードルが下がる、扱える人が多いので教えてもらえる機会が多い…など初心者にとってメリットもあります。

そこで今回はプログラミング初心者向けに、Javaの習得に適したプログラミング問題が多く掲載されているサイトと書籍をご紹介します。

問題を解く前にJavaの基礎をおさらい

プログラミング問題を解く前にJavaの基礎文法(四則演算、条件文・ループ文、配列、クラス・メソッドなど)を確認しておきたいという方はpaizaラーニングの「Java入門編」講座の受講がおすすめです。

ブラウザ上で動画解説を見て演習問題を解くのがセットになっているため、基本がしっかり身につきます。

プログラミング問題集のあるサイト

一週間で身につくJava言語の基本

プログラミング初心者でも1週間でJavaの基本を身につけることを目標にした学習サイトです。

演算と変数、条件分岐、繰り返し処理、配列、クラスとオブジェクト…といった内容別に学習講座と練習問題が用意されています。

講座は基本編・応用編に分かれており、継承や抽象クラス、インターフェースといった発展的な内容の練習問題にもチャレンジ可能です。

Javaの開発環境構築は同サイトのこちらのページに説明がありますが、もっと手軽に実行環境が欲しいという方はブラウザで使えるpaiza.IOを利用してみてください。

paizaラーニング レベルアップ問題集

レベルアップ問題集」ではさまざまな難易度のプログラミング練習問題を公開しています。

単純な計算問題や文字列を扱う問題から、複雑な条件を整理してじっくり考える問題までレベルに合わせて選ぶことができます。

すべての問題でテストケースの入力値を見ることができ、一部の問題では解答例のコードも用意されています。Javaを学び始めたばかりでまずは基本を定着させたい方には「Dランク早解きセット」がおすすめです。

paizaでは問題の難易度を難しい順にS・A・B・C・Dランクと分けており、この問題集ではDランクの問題を20問ご用意しています。

ECF Tech

問題数はそこまで多くありませんが、運営元が子ども向けのプログラミング教育をおこなっていることもあり分かりやすいのが特徴です。

基礎文法が分かれば解ける問題だけでなく、クラス、コンストラクタといったオブジェクト指向に関する問題も用意されています。

すべての問題に対して解答コードがあり、解説もしっかり書かれています。

プログラミングで彼女をつくる

「楽しみながら問題を解きたい!」という方におすすめなのがpaizaが提供するプログラミングゲームコンテンツです。

「プログラミングで彼女をつくる」はアンドロイド彼女の「安藤杏(あんどうあん)」との同居生活という設定です。プログラミング問題をどんどん解いて、杏の着せ替えアイテムを集めたり、ふたりの親密度を上昇させたりすることができます。

レアアイテムの問題は少々難しめですが、ノーマルアイテムの問題は基本文法が分かれば解けるのでぜひ挑戦してみてください。

paizaでは他にもJavaで問題を解けるプログラミングゲームコンテンツをたくさんご用意しています。


北ソフト工房

他のプログラミング言語の経験がなく、初めてのプログラミングをJavaで始める初心者向けのサイトで、基本を身につけるための問題集が用意されています。

すべての問題に解答例があり、地道な解き方の他に、よりスマートな解き方が掲載されている問題もあるため綺麗なコードの書き方を学びたい方にもおすすめです。

JAVAマスター

練習問題というと数値の足し算や文字列を結合する問題が多いのですが、こちらのサイトではJavaで「ポーカーを作る」「○×ゲームを作る」「素因数分解をする」といった内容の問題が用意されています。

少し高度ではありますが、作っていておもしろいですし実際に実行して遊んでみることができるので作りがいがあります。

ただし、解説があまりないので解答コードを読み解く必要があります。簡単な問題に飽きてきた方は挑戦してみてください!

paizaスキルチェック

プログラミング問題を解く力がついてきたなという方は、paizaのスキルチェックで問題を解いてみてください。

スキルチェックでは、プログラミングスキルをS・A・B・C・D・Eの6段階評価(ランクづけ)します。負荷試験と実行速度の測定、そしてさきほど紹介した「レベルアップ問題集」と異なるのは制限時間があるため解答時間もスコアに影響します。詳しくはこちら

また、ランクは就職・転職の求人応募に関係しているのでスキルチェックの本番問題は1度のみ*1の挑戦となります。

yukicoder

20200123105830

競技プログラミングサイトですが、コンテスト期間外にいつでも解ける問題がたくさん用意されています。

AC(Accepted:正解)した他ユーザーのコードを見ることができるため、分からなかった問題やもっと綺麗なコードを書きたい場合に複数のユーザーの解答を参考にすることができます。

番外編

【 基本情報技術者試験(午後問題) 】

基本情報の午後問題(出題分野「ソフトウェア開発」)ではプログラミング問題を選択式で解く問題が出題されます。公式の過去問題一覧はこちら

問題文がそこそこ長く、プログラム自体も初心者には難易度が高めではあるのですが、とにかく過去問がたくさんあるのでJavaを習得したい方は一度のぞいてみてください。

ちなみに公式だと解説はないため(解答はあります)基本情報受験者にはおなじみの「基本情報技術者試験ドットコム」を参考にするとよいでしょう。「ソフトウェア開発」のJavaの問題はこちら

おすすめ書籍3選

新・解きながら学ぶJava

新・解きながら学ぶJava

「たくさんの問題を解いてJavaによるプログラミング開発能力を身につける」ことを目的として作られた本書。

作って学ぶプログラム作成問題202問、スキルアップのための錬成問題1115問の合計1317問が掲載されています。脱初心者を目指してアウトプットに重きをおく方におすすめです。

Java8問題集 理解を深める500問 (SCC Books 388)

Java8問題集 理解を深める500問 (SCC Books 388)

  • 発売日: 2016/03/05
  • メディア: 単行本(ソフトカバー)

実力を養成するために厳選された演習問題が500問掲載されています。

Javaの参考書の1冊目としては難しいですが、ある程度基本を学んだあとに問題を解いてみたい方には役に立つ1冊になるでしょう。

新・明解Java入門 (明解シリーズ)

新・明解Java入門 (明解シリーズ)

Javaの基礎からオブジェクト指向までをマスターするためのテキストです。

サンプルプログラムが258掲載されており、問題集とは少し違いますがていねいな解説もありおすすめの1冊です。

まとめ

Javaの基本を定着するための練習問題から、少し難易度の高い実用性のあるコードを書く問題までさまざまな問題を集めたサイトと書籍をご紹介してきました。

冒頭でも述べたとおり、Javaはシステム開発案件において安定稼働の実績が豊富であり、金融系のシステムや公共性の高いシステム、そしてWebサービスやAndroidアプリなど幅広い分野で採用されています。

今後この需要の高さがずっと続くかは分かりませんが、今のところ急激に衰えることはなさそうなので興味を持った方は学習を始めてみてはいかがでしょうか。

また、入門編が終わったあとは、JavaでのWebアプリケーション開発を環境構築なしで試せる「Webアプリ開発入門 Servlet/JSP編」もぜひ受講してみてください。




paizaラーニング」では、未経験者でもブラウザさえあれば、今すぐプログラミングの基礎が動画で学べるレッスンを多数公開しております。

詳しくはこちら

paizaラーニング

そしてpaizaでは、Webサービス開発企業などで求められるコーディング力や、テストケースを想定する力などが問われるプログラミングスキルチェック問題も提供しています。

スキルチェックに挑戦した人は、その結果によってS・A・B・C・D・Eの6段階のランクを取得できます。必要なスキルランクを取得すれば、書類選考なしで企業の求人に応募することも可能です。「自分のプログラミングスキルを客観的に知りたい」「スキルを使って転職したい」という方は、ぜひチャレンジしてみてください。

詳しくはこちら

paizaのスキルチェック

*1:再挑戦は可能ですが、ランクの取得はできません

paizaのおすすめコンテンツ

Webセキュリティ入門 ハッカー入門 Webセキュリティ講座がスタート!CVは内田真礼さん! Python✕AI 機械学習入門講座 CVに上坂すみれさんを起用!人気の機械学習講座を公開中!
paiza転職 paiza新卒 EN:TRY paizaラーニング Copyright Paiza, Inc, All rights reserved.