こんにちは、プログラミングもできるWebデザイナーです。
プログラミングを始めたばかりの方からよくこんな質問を受けます。
- 「結局、どの言語を学べばいいんですか?」
- 「HTMLとJavaScriptとPythonってどう違うんですか?」
- 「一つ学んだら、他の言語にも応用できますか?」
答えはシンプルです。
どのプログラミング言語にも“共通している考え方”があります。
この記事では、言語に縛られない「本質的なプログラミングの考え方」を5つのポイントにまとめて、やさしく解説していきます。
これからプログラミングを学びたい方、いま勉強中で迷子になりそうな方にとって、地図のような記事になれば幸いです。
目次
① コンピュータは「命令された通りに」しか動かない
プログラミングの基本は、「命令を順番に伝えること」です。
たとえばレシピのように
1. フライパンを熱する |
2. 卵を割って入れる |
3. 塩を一つまみ入れる |
4. フタを締めて蒸し焼きにする |
これと同じように、コンピュータにも「何を」「どの順番で」「どう処理するか」を細かく伝える必要があります。
つまり、【当たり前】が通じない世界です。
「言わなくてもわかるでしょ?」は通用しません。
一つ一つ、丁寧に命令を組み立てることがプログラミングの基本です。
☝️初学者へのワンポイントアドバイス
「うまく動かない」ときは、自分の命令が“明確かどうか”を疑ってみましょう。プログラムは嘘をつきません。書いた通りに動いているのです。
② データには「型(タイプ)」がある
プログラミングに出てくる数字や文字には、「型(type)」という属性があります。
たとえば
123
→ 数値型(int / number)"こんにちは"
→ 文字列型(string)true
/false
→ 論理型(boolean)
これらは言語ごとに書き方は違いますが、「データには型がある」という考え方自体は共通です。
型によってできる操作も変わります。
たとえば
1 + 3 //答えは4です。(整数型ですので普通に計算します。)
”1” + ”4” //答えは14です。(文字列型ですので文字の並びの結合となります。)
これは、「数値の足し算」ではなく、「文字列(文字の並び)の結合」として処理されているからです。
数字と文字では「+」の意味が違いますよね。
☝️初学者へのワンポイントアドバイス
「なんで動かないんだろう?」と思ったら、まずデータの型をチェックしてみましょう。それだけでバグが解決することもよくあります。
③ 「条件」と「繰り返し」はすべての言語に共通
どんなプログラミング言語でも、次の2つの考え方はほぼ必ず使います。
- 条件分岐(if)
- 繰り返し(for / while)
これは人間の行動にも似ています。
条件分岐の例
雨が降っていたら傘を持っていく
それ以外なら持っていかない
繰り返しの例
5人の生徒に、順番に挨拶する
プログラムでもこれと同じように書きます。
if weather == "rain":
take_umbrella()
else:
go_without()
for student in students:
greet(student)
これらの「分岐と繰り返し」さえ理解できれば、ほとんどのプログラムの骨格が理解できるようになります。
☝️初学者へのワンポイントアドバイス
条件分岐とループは、最初は混乱しやすいですが、日常にある例と重ねて練習すると感覚がつかめてきます。
④ プログラムは「小さく分けて」作る
初心者がつまずく原因の一つが「全部を一度に作ろうとすること」です。
でも、プロのプログラマーでも、いきなり全部完成させることはありません。
やることはいつもこうです
- 小さな機能から作る
- 一つ一つテストして確認
- できたら組み合わせる
たとえば「ログイン機能」を作る場合でも、
- ユーザー名を受け取る
- パスワードを受け取る
- 照合する
- 結果を表示する
とステップに分解して作っていきます。
この考え方を「分割統治(divide and conquer)」といいます。
ざっくりと言い直すと「大きな問題を、小さな問題に分割(細分化)して、それぞれを解決し、最終的に全体を組み立てる(結合)方法。」
☝️初学者へのワンポイントアドバイス
難しそうな機能に出会ったら、「小さく分けて考える」癖をつけてください。1つずつなら、できることが増えていきます。
⑤ エラーは敵じゃない、味方である
初心者の多くが、エラーに怯えてしまいます。
ですが、エラーは「ダメ出し」ではなく、「道しるべ」です。
たとえばこんなエラー
SyntaxError: unexpected EOF while parsing
最初は「意味わからない…」と思うかもしれません。
でも調べてみると、
括弧の閉じ忘れ、記号の間違い
など、ちゃんとヒントが隠されています。
SyntaxError
はプログラムが文法として正しくないときに発生するエラーです。
ちなみにエラー分の種類はそんなに多くないので何となく覚えてしまいます。
ちなみに頻繁に出てくるので気にすることはないです。
エラーが出るということは、
コンピュータがちゃんとあなたのコードを読んでくれている証拠。
実は、エラーに出会うたびに成長しているんです。
☝️初学者へのワンポイントアドバイス
「エラー=成長のチャンス」と捉えてください。怖がらず、ググって、直して、動かしてみましょう。
最後に:プログラミング言語は“道具”、大切なのは“考え方”
Python、JavaScript、Ruby、C言語、PHP……
言語の違いに惑わされる必要はありません。
大切なのは、どんな思考でプログラムを組み立てるかです。
英語でも日本語でも「ありがとう」が言えるように、
プログラミングも言語が違っても、やりたいことは同じです。
あなたが学んだその考え方は、どの言語でも必ず活かせます。
おまけ:これからの学習を楽にするためのコツ
- コメントを書こう:後から見返して理解がしやすい(言語にもよりますが、#や//の後ろにコメントを記入)
- 手を動かそう:読むだけでなく、実際に書くことが上達の近道(運動と一緒)
- 写経もおすすめ:動くコードを真似して書くだけでも効果あり
- 仲間を見つけよう:学習のモチベーションが続きます
まとめ
今回は、「どの言語にも通じる5つの考え方」として以下を紹介しました。
- 命令は順番通りに伝えるべし
- データには「型」がある
- 条件と繰り返しがプログラムの基本
- 小さく分けて作ることが成功の秘訣
- エラーは怖くない、成長のチャンス
プログラミングの世界は広くて奥深いですが、共通する「地図」を持っていれば、迷いにくくなります。
焦らず、少しずつ進んでいきましょう。