見出し画像

プログラミングの勉強ってどうやってるの?プログラミングの勉強で重要なこととは?

皆さん、こんにちはギガバイトです😄
前回はプログラミング言語の選定方法についての記事を投稿しましたがご覧いただいていれば幸いです。ご覧になってない方はリンクを以下に貼り付けておきますので、今回投稿する記事と合わせてご覧いただければと思います。
https://note.com/gigabyte/n/nc0df7ba0ad1c

さて、本題ですがエンジニアやプログラマー皆さんはプログラミングの勉強ってどうやっているでしょうか?参考書を読む、スクールで勉強している色々あると思います。しかし、実際に勉強していたけど中々身につかなかったり人が意外と多いんですね。かくいう著者も過去に同じ失敗をしたことがあります。ということで今回はプログラミングの勉強の進め方について投稿します。特にプログラミング初心者やエンジニアなりたての人はご覧いただいたらと思います。

◼︎アウトプットすることを意識する

まず、プログラミングを勉強する上で意識することがあります。それは何を作ってアウトプットしていくかということです。参考書等でプログラミングの基本的なことを勉強するのは大事なことですが、アプリやWebサイトを作成していく中で実際に教科書通りに進むことはプログラミング全般を通して2割いくかいかないかほどです。プログラミングの勉強で身につけないといけないことはプログラムの知識を深めるというより、仕様から導き出された構想をプログラムにて実装できるようになることが目的です。勉強したことは実戦で使えないと意味がありません。

◼︎プログラミングの勉強手順

まず、プログラミングの勉強手順を簡単に纏めたので確認してみましょう。
①作りたいモノ、作れるようになりたいモノを明確化する
②実装する上で必要なプログラミング言語を検討する
③Webサービスでのプログラミング学習・参考書を1周、多くても2週分だけやる
④実際にアプリ・サイト等を自作してみる
⑤実戦(クラウドソーシング等)で成果物を作成してみる
それでは、各項目の詳細について次に説明していきます。

■①作りたいモノ、作れるようになりたいモノを明確化する

まずはあなたが作りたいものを決めましょう。エンジニア未経験でエンジニアに転職したい方はWeb系に行きたいのかアプリケーションを作るれるようになりたいのか等、どのようなエンジニアになりたいかを明確化することが大切です。
例えば、Webエンジニアになりたいのであれば、Webサイトを作成できるようになる→この言語を勉強しないといけないといった風に作るモノを明確化しておくことで、どの言語が必要かが絞ることができます。

■②実装する上で必要なプログラミング言語を検討する

作るモノが決定しましたら、実装に必要なプログラミング言語を決めていきましょう。①であげさせていただきました例を参考にしますと、Webサイトを作成するにはフロントエンドサイドとバックエンドサイドを実装する必要があります。フロントエンドサイドはHTML/CSSで組めること、アニメーション等のWebページに動きをつけたいのであればJavaScriptで実装する必要があります。バックエンドサイドを実装する場合の言語選定はPHP、Ruby、JavaScript等様々です。国内の使用率で決定する場合はPHPになります。また、LaravelやRuby on Rails等のフレームワークから決定する場合もあります。

■③Webサービスでのプログラミング学習・参考書を1周、多くても2週分だけやる

勉強するプログラミング言語が決まったら早速、勉強を進めていきましょう。参考書を利用するのもいいのですが、著者はWebサービスのProgateかドットインストールをオススメします。この2つのWebサービスはプログラミングの使用機会の多い部分を言語・フレームワークごとに纏め上げてくれているので要点を押さえやすいのが特徴です。リンクを下に添付しておくのでご覧になってください。Webサービスや参考書を一周・多くても2週分終えたら、アプリやWebサイトを作ってみましょう。中には勉強したことをマスターするまで何周もやる人もいますがそれは時間のムダです。何故なら、エンジニアの仕事はわからない部分は調べて対応していくモノ、つまりカンニングが許されています。ですので、わからない部分や勉強で覚えきれてない部分は逐次調べていくことを意識してください。

・Progate
https://prog-8.com/

・ドットインストール
https://dotinstall.com/

◼︎** ④実際にアプリ・サイト等を自作してみる**

プログラミングの勉強を一通り終えたら、実際にアプリやWebサイトを作ってみましょう。すでに作るアプリやWebサイト等の構想がある方はそれを作ってみてもいいですし、構想ができていない方は実際に世の中に出てるアプリやツール等を参考に作ってみるのもアリです(Pro gtaeやドットインストールの課題に出てくるモノを作るのもOK)。ここでシッカリとしたものを作る必要はなく、出来が小さくても構いませんとにかく何かを作るというのが大事です。

⑤実戦(クラウドソーシング等)で成果物を作成してみる

アプリやWebサイト等を作る感覚がわかってきたら、実戦で実装してみましょう。友達や知り合いから案件を取れる方はそこから案件を取ってみるのも良いですし、それ以外で著者がおススメするのはクラウドソーシングを利用してみることです。クラウドソーシングはネットワーク上で案件のやり取りができる上でエンジニア関係の案件も豊富です。代表例はランサーズやクラウドワークスをやってみるのがいいかと思います。

・ランサーズ
https://www.lancers.jp/

・クラウドワークス
https://crowdworks.jp/?category=online_assistant&utm_expid=._QA-cxY-TWqwh6sITYY9pQ.1&utm_referrer=https%3A%2F%2Fwww.google.com%2F

◼︎最後に

さて、大きく5項目に分けてプログラミングの勉強法について述べさせていただきました。これを読んだことでエンジニアの皆さんやこれからエンジニアを目指す方々のプログラミングの勉強の効率等が上がれば幸いです。
最後になりますが、プログラミングの勉強においてのアウトプットとインプットの比率は約7:3です。これは僕だけでなく、ほとんどのエンジニアの方々がおっしゃってることでもあります。皆さんも作りたいモノを開発していくための勉強をお互いに楽しみながらやっていきましょう。


この記事が気に入ったらサポートをしてみませんか?