• Skip to main content
  • Skip to primary sidebar

プログラミング入門ナビ

プログラミング学習初心者のための情報メディア

You are here: Home / Archives for プログラミング入門

プログラミング入門

競技プログラミングとは?初心者にもおすすめの理由を解説!

2020-05-26 By プログラミング入門ナビ編集部

はじめに

オフィスで足を投げ出す女性

プログラミング学習、継続できていますか?

教材でしっかりと基礎を学ぶのはもちろん大切ですが、それだけでは何となくモチベーションが続かない…

そんな方は「競技プログラミング」にチャレンジしてみてはいかがでしょうか。

「でも、競技プログラミングって凄腕エンジニアの人たちが参加するんじゃないの…?初心者レベルが参加したって歯も立たなそう…」と思われるかもしれません。

確かに、少し前まではそのような風潮がありましたが、プログラミングを学ぶ人口が増えるにつれ初心者でも楽しく参加できるような仕組みが整ってきています。

この記事では、競技プログラミングをおすすめする理由と初心者の参加方法について説明します。

競技プログラミングとは

たくさんのディスプレイに向かってコーディングする女性

競技プログラミングとはその名の通り、プログラミングの技術を競うコンテストです。

同じ問題を解き、コーディングにかかる時間や完成したプログラムのパフォーマンスを競います。

Googleやドワンゴ等の有名なIT企業が主宰したり、インターネット上の競技プログラミング特化サイトで定期的に開催されることが多いです。

近頃では新卒学生のスキル判定基準として採用に用いられることもあります。

初心者が競技プログラミングをするメリット

上級者だけのものと思われがちな競技プログラミングですが、初心者にこそおすすめの理由があります。

期待できる主なメリットは下記です。

モチベーションの維持

ステップアップ

競技プログラミングにはレーティングというものがあり、初心者レベルからスタートして上位に入ることで上がっていきます。

単に課題を解いていくのとは違いゲーム感覚で続けられるので、モチベーションを保つうえで良い刺激になるでしょう。

もし解けなくても、どうすれば解けたのか?の答え合わせをするだけで良い勉強になります。

実行速度やメモリ使用量を意識できるようになる

基盤上のCPUとメモリ

プログラミング学習を始めたばかりの時はとりあえず動けば良いという考えになりがちですが、競技プログラミングでは実行速度やメモリ使用量のことも意識しつつ、パフォーマンスの高いプログラムを組まなければなりません。

教材で取り扱うような初歩的なプログラミングでは規模が小さいので、多少のコードの違いではパフォーマンスに大きな差は出ませんが、実際のエンジニアが働く現場では大規模なシステムを取り扱います。

この時に少しでも効率の悪いコードを入れてしまうとシステム全体のパフォーマンスに関わるため、早いうちからこれを意識できるようにしておくのは重要なことです。

就職でアピールしやすい

就職活動の面接

近年は企業の採用活動でも競技プログラミングに注目する動きがあり、有名なコンテストで良い点を納めているというだけで内定が決まる例もあります。

そこまでは目指せないとしても、競技プログラミングサイトに参加してレーティングは○○を持っている、というような話ができればアピールになります。

初心者ならばなおのこと、実務経験でのアピールができない分、こういったものを活用してスキルレベルを提示するのも良いでしょう。

高いスコアである必要はなく、プログラミングに関わりを持とうとする姿勢も評価対象になり得ます。

参加には注意点も…

先述の通り、初心者が競技プログラミングに参加するのは大いにおすすめなのですが、いくつか注意点もあります。

自分なりの目標を決めてチャレンジすること

目標設定

競技プログラミングでは、頂点に近づけば近づくほどやはり初心者にとって縁遠い世界となっているのが事実です。

世の中には天才エンジニアと呼ばれる人々がいて、初心者に限らず、エンジニアを何年もやっているような人でも敵いません。

競技プログラミングで良い順位を取ることが目的になってしまわないよう、自分なりの目標を立てて参加しましょう。

順位に一喜一憂して振り回されることなく、「エンジニアへ転職すること」等、自分が定めた最終目標に到達するための手段として楽しむことを心がけてください。

あくまで競技用であると意識すること

画面を挟んで向かい合うビジネスマン

競技プログラミングで「良い点を取れるコード」が、実際のエンジニア現場にとって「良いコード」とは限りません。

この2者では目的が違っているためです。競技プログラミングではコーディングの速さや実行速度・メモリの使用効率の良さが最優先とされます。

そのため、業務現場で重要とされる再利用性や、誰が読んでも分かりやすい可読性等は一切無視され、何をやっているコードなのか非常に分かりにくいことが多いです。

ハイレベルに近づくほどこの傾向が高くなりますので、初心者レベルでは問題にならないことが多いですが、上級者のコード等を参考にする際は、この点を意識するようにしましょう。

代表的な競技プログラミングサイト

ここで、多くの人が参加する代表的な競技プログラミングサイトを紹介していきます。

AtCoder

atcoderのTOP画面

AtCoderは、日本初の競技プログラミングサイトです。登録者数は20万人近くに上り、そのうち半分が日本人です。

毎週末にコンテストが開催され、レベルごとに分かれているので初心者でも参加しやすいのが特徴です。

また、日本の名だたるIT企業が主宰するコンテストもAtCoder上で開催されることが多く、優秀なエンジニアと企業の橋渡しの場ともなっています。

Google Code Jam

Google Code JamのTOP画面

Google Code Jamは、Googleが主宰するプログラミングコンテストで、2003年から開始されました。

4万人近くが一挙に参加する年に1度の大きな大会です。数ラウンドに分かれており、勝ち進んだ25名により最終決戦となります。

この一歩前のラウンドで残った1,000人には特製Tシャツが贈られ、エンジニアの中では勲章のように扱われるようです。

Topcoder

TopcoderのTOP画面

Topcoderは、60万人が参加する世界最大規模の競技プログラミングサイトです。

このサイトでトップレベルのレーティングを持つユーザーは「レッドコーダー」と呼ばれ一目を置かれる存在となっています。

競技プログラミングに参加するには?

競技に参加する人

では、初心者が競技プログラミングに参加するにはどうすれば良いのでしょうか。

基本的な言語スキルを身につける

ほとんどの競技プログラミングサイトでは、同じ問題について複数の言語で回答できるようになっています。

例えばAtCoderを例にとればC言語、C++、Python、Java、JavaScript等様々な言語での回答が可能です。

言語の性質の違いから、競技プログラミングで本格的に上位を目指したい場合はC言語やC++が有利ですが、そうでなければ長い目で見て使い道の多いJavaScriptがおすすめです。

まずは言語を決めて一通りの基本スキルを身につけましょう。

まずは登録してビギナー問題を解いてみる

ある程度基本を身につけたら、早速上記で紹介している競技プログラミングサイトや、その他自分がやってみたいコンテストに登録してみましょう。

ビギナーレベルであればかなりシンプルな問題が多いので、最近プログラミングを始めたばかりの方でも練習問題代わりに解くことができるでしょう。

解けない問題が出てきたら学習を深めるチャンスです。そこで投げ出さず、プログラミング学習に使っている教材なり、書籍なりを確認して解き方を確認しましょう。

この往復活動がモチベーションを保ちつつ楽しく学習を進めるコツです。

まとめ

画面を覗き込む仲間たち

競技プログラミングの魅力と初心者へおすすめする理由を説明しました。

ある程度以上のレベルでは数学的知識が無いと十分に競えない問題もありますが、ここで負けじと数学の学習を始めてスキルを磨くも良し、見切りをつけてまたプログラミング学習に専念するも良しです。

モチベーション継続の場としてうまく活用し、プログラミングのスキルアップにつなげていきましょう。

動画で学ぶプログラミング入門

オンラインスクールProglus(プログラス)でプログラミングを学んで、創れる人になろう!

在宅学習応援!今なら複数の基礎コースが無料!!

今すぐ詳細を確認する

Filed Under: プログラミング入門 Tagged With: プログラミング, 初心者, 競技, 競技プログラミング

JavaScriptの「net::ERR_FILE_NOT_FOUND」エラーが出る原因と対処方法を紹介!

2020-04-29 By プログラミング入門ナビ編集部

パソコンの前で頭を抱える男性たち

はじめに

JavaScriptのエラー画面

JavaScriptを実行した時、エラーが出てしまうことがありますね。

ブラウザのコンソールで確認すると発生しているエラーのエラーコードを見ることができます。

この記事では、その中でもよくある「net::ERR_FILE_NOT_FOUND」のエラー発生原因とその対処方法を紹介します。

なお、JavaScriptの開発方法については下記講座で詳しく解説していますので、興味のある方はぜひ受講を検討ください。

  • ウェブ開発入門完全攻略コース -プログラミングをはじめて学び創れる人へ!未経験から現場で使える開発スキルを習得!
  • WE09-JavaScript入門

ファイルは呼び出し元から見たパスで検索される

OK画面

例えば上記画面の左側「Project」の様なファイル配置のプロジェクトがあったとしましょう。

「hello.html」の7行目でJavaScriptファイル「hello.js」を呼び出しています。「hello.html」はweb/js_basicの下にありますね。

さらに同じ階層に「js」フォルダがあり、その中に「hello.js」があるので、呼び出す時のファイルパスは

<script src="js/hello.js"></script>

となります。

「hello.html」のファイルがある場所(web/js_basic/)から見ると、自分と同じ場所に「js」フォルダがあるのでこのようなパスとなるわけです。

JavaScriptの「net::ERR_FILE_NOT_FOUND」エラーが出る原因は?

これは簡単にいいますと指示されたパスにJavaScriptのファイルが見つからないために発生するエラーです。

ファイルパスの指定が間違っている、もしくは、ファイルパスは合っているが呼び出し元のファイルを想定した場所に置けていないことが原因となります。

例えば、先ほどの例で誤って「hello.html」を下記のように web > js_basic > js の下に置いてしまったとしましょう。

NG画面

この場合は、「hello.html」から見ると同じ階層に「js」フォルダが見えないので「js/hello.js」とファイルパスを指定されても見つけられずエラーとなってしまいます。

エラーへの対処方法

このような場合はまず呼び出すファイルパスが正しいかどうか?を確認し、場合に応じて下記の方法でエラーを解消しましょう。

方法1:ファイルを正しい場所に配置し直す

ファイルパスが正しい場合、ファイル呼び出し元のファイル(先ほどの例では「hello.html」)を想定通りの正しい場所に配置し直しましょう。

先に出した例で「hello.html」の7行目に書いたファイルパス:

<script src="js/hello.js"></script>

に合わせて「hello.html」の場所を見直してください。jsフォルダが見えるよう、web/js_basic/jsの下ではなく、web/js_basicの下に置かなければなりません。

なお、「はじめに」で紹介した講座では上記のファイルパスを正としていますので、こちらのパターンとなります。

方法2:ファイルパスを正しく修正する

ファイルパスが正しくない場合は、ファイルパスを修正します。

例えば先ほどの例で「hello.html」はweb/js_basic/jsの下になければならない、という場合はファイルパスを下記のように直さなければなりません。

<script src="hello.js"></script>

呼び出し元の「hello.html」と「hello.js」が同じ階層にあるため、フォルダ名が無しとなるわけです。

まとめ

パソコンの前でショックを受ける女性

JavaScriptの「net::ERR_FILE_NOT_FOUND」エラーが出る主な原因と対処方法について紹介しました。

紹介した方法で解決しない場合でも、ファイルパスとファイルの場所が合っていないことが主な原因ですので、今一度ファイルの場所やパスに間違いがないか確認してみてください。

動画で学ぶプログラミング入門

オンラインスクールProglus(プログラス)でプログラミングを学んで、創れる人になろう!

在宅学習応援!今なら複数の基礎コースが無料!!

今すぐ詳細を確認する

Filed Under: プログラミング入門 Tagged With: error, HTML, JavaScript

初心者のプログラミング学習には13インチのMacBook Proがおすすめ!その理由も解説!

2020-04-27 By プログラミング入門ナビ編集部

MacBook Proで作業する男性

はじめに

パソコンでプログラミング学習をする男性

全くの未経験からプログラミング学習を始める方の中には、パソコンを所有したことがない、という方もいらっしゃるかもしれません。

安いものではないし、何度も買い換える訳にはいかないので最初のパソコンは慎重に選びたいですね。

この記事では、講師がプログラミング初心者にこそおすすめしたいイチオシのパソコンとしてMacBook Proをご紹介します。

初心者にはMacBook Proがおすすめ


近年では数万円レベルで買える廉価なパソコンも多くありますが、金銭的に問題がなければApple社のMacBook Proがイチオシです。

実際に、MacBook Proは現役のエンジニアに大変な人気があります。

その主たる理由をご紹介していきます。

エンジニアに人気のmac向けアプリケーションが多い

仮想化ソフトウェアや統合開発環境など、エンジニアにとって欠かせないアプリケーションはmac OS向けのものが多いです。

あらかじめmac OSやそれらのアプリの使用を前提とした解説サイトも多く、Windowsなど他のOSを使っていると環境構築手順から違っていて手間取るケースが多々あります。

このような場合に備え、はじめからmac OSのパソコンを使っておいた方が無難です。

コードの実行に十分なスペック

MacBookのもう一つの商品ラインナップである「MacBook Air」ではダメなの?」と思われる方もいらっしゃるかもしれません。

実際にAirとProでは入っているプロセッサの性能が違っており、Proの方がコードの実行パフォーマンスが良いです。

簡単なコードでは差を感じられないかもしれませんが、大規模で複雑なプログラムになってくると違いを体感することでしょう。

実行結果の確認に適した高画素ディスプレイ

高解像度・高画素密度のRetinaディスプレイを搭載しているので、特に見た目が重要なWeb系プログラミングやゲームプログラミングにおいて実行結果の色合いや見え方を正しく確認できるのが利点です。

また、色合いや形が正しくくっきりと表現されることで、長時間見ても目が疲れにくいのも嬉しいですね。

iPhoneアプリの開発が可能

同じくApple社製品であるiPhone向けのアプリはmac OS上でしか開発できません。つまり、Windowsパソコンを買ってしまった時点でiPhoneアプリを作るための学習や演習はほぼ不可能です。

また同様に、エンジニアになった後もiPhoneアプリの開発案件には応募できません。

iPhoneアプリの開発スキルを身につけることを今は検討していなくても、将来必要になるかもわからないので、最初のパソコン選びで無意識に芽を積んでしまわないのが得策ですね。

画面は13インチがおすすめ

MacBookのラインナップ

MacBook Proのディスプレイサイズは13インチと16インチが主流ですが、膝にも乗り、カフェやオフィスなどどこへでも持ち運びやすい13インチがおすすめです。

また、価格の面からも大きな16インチと比較して13インチは10万円ほどお求めやすくなっています。

大きめのサブディスプレイがあるとさらに吉!

たくさんのディスプレイに向かってコーディングする女性

エンジニアといえばよく上図のようにたくさんの大きなディスプレイに向かっているところを想像する方が多いですね。

この例は大袈裟ですが、実際にプログラミングをする時はサブのディスプレイがあると大変便利です。

20インチ前後のディスプレイをパソコンにつなげば、2画面に拡張することができ、これをデュアルディスプレイと呼びます。

片方はコーディング、もう片方では調べ物や仕様書・設計書などを表示させることが多いです。

価格は1万円ほどなので、金銭に余裕があれば是非入手をおすすめします。

  • I-O DATA モニター 20.7型
  • ASUS フレームレス モニター 23インチ

画面を見ながらサクサク学べる学習サイト

オンライン授業

プログラミング学習においても、片方の画面にオンライン講座の動画や演習問題を表示させつつ、もう一方の画面でコーディングができると作業効率がいいのはもちろん、理解の速さも格段に上がります。

様々な学習サイトがありますが、このような学習形態でおすすめなのがProglusです。動画の解説が豊富で、わからないことがあれば講師に質問することもできます。

まとめ

クリエイティブなオフィス

プログラミング初心者におすすめのパソコンとしてMacBook Proとその魅力を紹介しました。

エンジニアに人気の理由が伝わったでしょうか。もちろん金銭的に余裕がなければ他のパソコンから初めても問題ありません。

形から入りたい方、最初に思い切った投資をしないと学習意欲がわかない方にはとてもおすすめです。

パソコンは一生ものではありません。どんどん良いハードウェアが開発され、それに合わせて開発すべきソフトウェアの規模も大きく複雑になるので、多くのエンジニアが数年に一度は新機種に買い替えをします。

そのため肩の力を抜いて選びたいところですが、やはりパソコンはエンジニアの商売道具なので愛着も沸きやすく、最初に選んだ機種から頻繁に変更する人は多くありません。

ある程度の期間は使うことを意識し、この記事で紹介した観点を参考に選んでみてください。

なお、一番大切なのは学習を続けることですので、お気に入りのパソコンを手に入れた後はしっかりと学習に取り組みましょう!

動画で学ぶプログラミング入門

オンラインスクールProglus(プログラス)でプログラミングを学んで、創れる人になろう!

在宅学習応援!今なら複数の基礎コースが無料!!

今すぐ詳細を確認する

Filed Under: プログラミング入門 Tagged With: 13インチ, MacBook Pro, おすすめ, ディスプレイ, パソコン, 初心者

  • « Go to Previous Page
  • Go to page 1
  • Go to page 2
  • Go to page 3
  • Go to page 4
  • Interim pages omitted …
  • Go to page 15
  • Go to Next Page »

Primary Sidebar

Twitter

Follow @programmingnavi Tweets by programmingnavi

Facebookページ

プログラミング入門ナビ

メルマガに今すぐ登録!

ブログの更新情報やお得なクーポン情報などをお知らせします。

登録はこちらから。

人気の記事

まだデータがありません。

最近の投稿

  • 【7/9更新】Udemyプログラミング入門講座等の割引クーポン配布
  • JavaScriptの「this」は呼び出し方によって値が変わる?違いを徹底解説!
  • JavaScriptのfor文で配列要素の足し算をするとNaNが出るのはなぜ?原因と対処法を解説!
  • プログラミング学習を成功させるポイントを3つお送りいたします
  • 初心者がスマホアプリを開発するには?iOSとAndroidの両方について必要なスキルを確認しよう

カテゴリー

  • エンジニアのしごと
  • エンジニアへの道
  • ツールの使い方
  • ニュース
  • プログラミング入門

タグクラウド

AI AWS AWS Cloud9 Bootstrap Cloud9 CodeWing CSS Git GitHub Heroku HTML JavaScript Linux macOS MySQL MySQL Workbench node.js Nuxt.js Proglus Python Ruby Ruby on Rails SQL Udemy Vue.js Web開発 Windows Windows10 エラー エンジニア オンライン学習 サーバ サーバー スクリーンショット セキュリティ セール データベース プログラミング プログラミング入門 プログラミング学習 ユーデミー 初心者 未経験 機械学習 開発環境構築

アーカイブ

  • 2020年7月
  • 2020年5月
  • 2020年4月
  • 2020年3月
  • 2020年2月
  • 2020年1月
  • 2019年11月
  • 2019年9月
  • 2019年7月
  • 2019年6月
  • 2019年5月
  • 2019年4月
  • 2019年3月
  • 2019年2月
  • 2019年1月
  • 2018年12月
  • 2018年11月
  • 2018年10月
  • 2018年9月
  • 2018年8月
  • 2018年7月
  • 2018年6月
  • 2018年5月
  • 2018年4月
  • 2018年3月

検索

Copyright © 2025 · programmingnavi.com ・About・プライバシーポリシー