初心者でも一瞬でわかるプログラミングの考え方・思考法
はじめに
プログラミングとは?
プログラミングって聞くと、
・「良く分からないし、難しそう」
・「スキルや資格が必要で、挑戦する事が出来ない」
など明確なイメージがなく、毛嫌いしてまう人が多いと思います。
そもそもプログラミングとは何なのか、何が出来るのかなど、基礎的な事から説明していきます。
そもそもプログラミングって何?
プログラミングを簡潔に言うと、問題を解決する為の手順を明文化する事です。
一般的に使われるのが、コンピューターに問題を解決させる命令(プログラム)を作る作業をプログラミングと言います。
問題を解決する為の手順を明文化すると言われてもわかりにくいですよね?
券売機に言い換えて解説していきます。
①券売機で必要な切符の値段を選択する
↓
②値段以上の金額を投入する
↓
③選択された切符を発券する
↓
④発券した金額以上のお金が投入された場合、おつりを返却する
上記の行動をプログラムと呼び、そのプログラムを作る事をプログラミングです。
そのプログラミングを行い、様々なサービスを作っていきます。
プログラミングで出来る事
では、そのプログラミングで何が出来るのが気になると思います。
それを以下で解説していきます。
・業務効率化
毎日行っている単純作業を効率化することが出来ます。
Excelやgoogleスプレッドシートなどの自動化など、ビジネスシーンで多岐に渡って使われています。
代表例としてExcelVBAなどがあります。
ExcelVBAの学習方法について詳しく解説してあるのは以下の記事になりますので、興味がある方はぜひご覧ください。
https://web-camp.io/magazine/archives/4034
・Webサイト作成
プログラミングに興味ある方の中にWebサイトを作りたいと考えている方は少なくないと思います。
簡単なWebサイトから企業に必要とされるレベルのWebサイトまでご自身で作る事が出来ます。
ただの文字と画像だけではなく、アニメーションや動画を配置するなど自分好みの魅力的なサイトを作ってください。
具体的にはCSS/HTML/JavaScript/Java/PHP/Pythonなどの言語を使用します。
詳しい内容は以下の記事で解説してあるので、上記の言語に興味がある方はぜひご覧ください。
https://web-camp.io/magazine/archives/9860
・Webアプリ・サービス・スマホアプリを作成
今、皆さんが利用しているWebサービスやアプリは全てプログラミングによって作られたものです。
上記の画像にあるTwitterやFacebookのようなサービスを作る事が出来る可能性を秘めているのがプログラミングです。
プログラミングで作られている有名サービスを紹介します。
Java→Twitter Evernote
Hack→Facebook
PHP→Yahoo
Python→Instagram Dropbox
上記のような人々の生活に根付くようなサービスを作りませんか?
より詳しい内容が気になる方は以下の記事をご覧ください。
(趣味にしたい方~実務レベルのスキルを身に付けたい方にまず一読いただきたい記事です)
初心者が趣味でプログラミングを始める5ステップ!活用例やメリットをご紹介
「今の働き方に不満はあるけど、日々の業務が忙しくてゆっくり考える時間がない…」
そんな悩みを持つ方に向けて【DMM WEBCAMP】では無料のキャリア相談を実施しています。
ビデオ通話で相談をすることができるため、仕事で忙しい方でもスキマ時間に気軽にカウンセリングを受けることも可能です!
プロのキャリアカウンセラーと一緒に、今後のキャリアについて考えてみませんか?
プログラミングの為の考え方
初心者でも一目でわかるプログラミングの考え方
ここから本題であるプログラミングをする時の考え方を初心者の方でもわかるように解説していきます。
上記のプログラミングの例で使った券売機の例えを使って解説していきます。
思い出して頂く為にもう一度説明しますと、
①券売機で必要な切符の値段を選択する
↓
②値段以上の金額を投入する
↓
③選択された切符を発券する
↓
④発券した金額以上のお金が投入された場合、おつりを返却する
この手順の事をコンピューターに命令する事をプログラムといい、それを作る事をプログラミングと言います。
この動きをプログラミング言語的に表現すると以下の画像になります。
より詳しく解説していきますと、
・青がパソコンに命令(プログラム)させた行動
・黄色がユーザー、消費者の行動
①待機
↓
②買いたい切符代以上のお金を投入する(ユーザーの行動)
↓
③入金された金額以上の価格のボタンを点灯させる
↓
④点灯されたボタンを押す(ユーザーの行動)
↓
⑤切符を発券する
↓
⑥おつりがあるか判断する
↓
⑦おつりがある場合 おつりが無い場合
↓ ↓
⑧おつりを返却する ①待機に戻る
↓
①待機
このように問題を解決する手順を分けて、考える事がプログラミングの基礎となります。
この思考法を身に付けてからプログラミングを学ぶ事が上達への近道になります。
初心者が陥りやすい注意点
初心者の方が陥りやすい注意点をこれから解説していきます。
上記の手順の内、難しい部分や簡単な部分などももちろんあると思います。
初心者の方は真面目に初めから順番に進めてしまい、全体像が見えず、スケジュール通りに進めない事が多々あります。
そのため、まず全体像を見つめ、全体感を掴み全体的に構想を作る事が必要です。
その構想を持っていることで、時間をかけるべき箇所やある程度の労力でも間に合う所を認識する事が出来、スケジュール調整が可能になります。
そのスケジュール作りが出来上がるものの完成度に繋がります。
初心者がプログラミングを学ぶには?
初心者の方がプログラミングを学ぶ方法の選択肢は3つあります。
・通学型スクール
・オンラインスクール
・独学
上記の3つになります。
1つずつメリット、デメリットを紹介していきます。
通学型スクール
通学型スクールとはプログラミングを学ぶ為のスクールに通い、講師の方に直接教えて頂けるスクールになります。
メリットはやっぱり講師の方に直接教えて頂ける事です。
プログラミングは
・プログラミング言語の使い方を覚える
・自分で作りたいサービスを考える
・コードを書いてみる
・実際に動かして、エラーを解消する
・一般公開やリリースする
上記の手順を踏む事になります。
この中で一番大変な作業がエラー解消になります。
自分だけでエラーを解消する事が出来ず、挫折してしまう人が非常に多いです。
しかし通学型スクールなら直接講師の方に、エラーの見つけ方や改善の方法などを教えてもらえるため、挫折することなく、最短距離でスキルを身に付ける事が出来ます。
デメリットは通学時間や、近くに良いスクールがない場合は通う事ができない事です。
わざわざ遠くの通学型スクールに通うのは非常に大変です。
そのため、諦めてしまう人がいるのがデメリットです。
オンラインスクール
メリットは時間や場所にかかわらず、どこでも学習する事が出来る事です。
オンラインスクールはインターネット上で授業を受ける事が出来る為、忙しい社会人の方や、近くに良いスクールがない方には非常におすすめです。
最近はオンラインスクールの講師をプロのエンジニアの方がしているスクールもあるため、実践的なスキルを身に付ける事が出来ます。
デメリットは直接質問する事が出来ないので、インターネット上での質問になってしまう事です。
自分から質問しにくい方や、どこがエラーになっているか分からない方にとっては、これは大きなデメリットであると思います。
独学
独学の一番大きなメリットは費用が安いという事です。
スクールごとによって費用が違いますが、独学で学ぶ場合、10万円以上安く学ぶ事が出来ます。
さらにオンラインスクールと同じで、時間や場所を気にせず、学ぶ事が出来ます。
デメリットは躓きやすく、挫折しやすい事です。
スクールに通うことで、自分独自のミスやエラーの解消方法を教えてもらう事が出来ますが、独学だとそこは自力で解消しなければなりません。
さらに独学だと、ついついサボってしまい、挫折される方が非常に多いです。
プログラミングを学びたいと考えている方は以下の記事を是非一読ください。
様々なスクールを比較し、さらに言語ごとの特徴から、失敗談まで初心者の方が気になる事は全て解説しています。
プログラミングスクールのおすすめ厳選9校を徹底比較【2022年】
「今の働き方に不満はあるけど、日々の業務が忙しくてゆっくり考える時間がない…」
そんな悩みを持つ方に向けて【DMM WEBCAMP】では無料のキャリア相談を実施しています。
ビデオ通話で相談をすることができるため、仕事で忙しい方でもスキマ時間に気軽にカウンセリングを受けることも可能です!
プロのキャリアカウンセラーと一緒に、今後のキャリアについて考えてみませんか?
まとめ
プログラミングとは何か、プログラミングの考え方、初心者がプログラミングを学ぶ方法を解説しましたが、いかがでしたか?
分かりやすい文章を心掛けましたが、もしわからない事があれば、プログラミングスクールの無料説明会に参加するとさらに詳しく説明して頂けると思います。
この記事がきっかけになり、プログラミングを学ぶ人が一人でも増え、エンジニアが増える事が一番の幸せです。
思い立ったら行動する事が一番の成功法だと思いますので、ご自身でさらに調べて、プログラミングを学んでください。
スキルを身に付けてIT業界に乗り込みませんか?