知りたい
プログラミングとかデジタルのこと
Q.プログラミングをもっと分かりやすく説明して
Q.プログラミングは実際にどこで使われる?
Q.プログラミングを学ぶペースは?
Q.プログラミングを学ぶメリットは?
プログラミングに関する疑問
分かりやすく回答します
デジタル系の疑問質問 プログラミングやパソコンなど
デジタル系の疑問質問
従来は専門家が専門家のために解説しているものばかりだった。
その為、初心者や素人が調べてみてもチンプンカンプンにしか見えなかった。
ここでは、初心者及び素人向けに解説します。
Q.プログラミングを分かりやすく説明して
A.プログラミングとは、手順やルールを作ることです。
なんの手順やルールなの?それは、「○○のプログラム」や「○○のアプリ」など、の○○にあたるものがそうです。例を挙げてみましょう。
『ゲームのプログラム』であれば、方向キーが押されたらその方向に動く、弾に当たったら負け、などの動作のルールが決まっています。
『運動会のプログラム』であれば、運動会の進行順や参加する条件などが決まってますよね。
『写真加工アプリ』であれば、写真を開き、範囲を指定し、加工内容を指定したら、元の写真に反映する、といったように手順と動作指示が決められています。
このように、ある対象の事柄について、上手に回すための手順やルールを作ること、それがプログラミングです。
なので、厳密に言えばパソコンが必要なものではないのですが、生活を豊かにする機器のほとんどがコンピューター制御されているので、コンピュータとお話をする言語がプログラミング言語、その会話術や文法がプログラミングのスキルになるわけですね。
Q.プログラムをもっと分かりやすく説明して
A.プログラムとは、決められた手順やルールのこと。
プログラムを作ることをプログラミングと言います。たったそれだけです。
では、プログラムってなに?って疑問が出てきますよね、解説します。
プログラムという言葉を聞いたことあるという人は多いかと思います。運動会のしおりに書いてありますよね。
要するにアレです。
開会式が最初にあって、競技が順に行われて、お昼を食べて、午後の部が始まって、対抗リレーがあって、閉会式が行われると完了です。
また、雨が降ったら延期か中止ですね。
このように、条件によってやることが決まるのがプログラムです。
プログラムナンバー1、開会の言葉、これが実行され完了するとプログラムナンバー2ばんに移ります。1を飛ばすとこはありませんよね。
このように、「あらかじめ決められた行動の手順」をプログラムと言います。
そして、それを作る作業がプログラミングです。
ではなぜそこにパソコンやらプログラミング言語が出てくるの?
上で説明しているのは人を動かすためのプログラムなので、その人に通じる言葉、つまり母国語を使えば良くて、日本の運動会であれば日本語で書かれたプログラムでみんなが理解して従いますよね。
では、メカやコンピュータにルールを理解させるには?
メカやコンピュータの母国語であるプログラミング言語を使いますよね。それは話し言葉ではなく書き言葉なので、パソコンを使って書いていくわけです。
Q.プログラムは実際にどんなところで使われてるの?
A.コンセントや電池を使うものの大半に使われています
パソコンやスマホのアプリなど、コンピュータの中の出来事は全てプログラムが使われているのは想像に難くないでしょう。
ですが、それだけではありません。
「電子制御」や「マイコン制御」なんて言葉を耳にしたことはありますか?そういうものにもプログラムが使われております。
すごく雑に言うと、分解して中に電子基板があり、その中に足がたくさんある黒い石が付いていたならその中にプログラムが書きこまれております。
逆に言うと、プログラムが不要の物は、動作が単純なもので、スイッチを入れたら決まった動きしかしないものです。懐中電灯など単純に明かりがつくだけのものや、ミニ四駆のようなモーターを動かすだけのものなど、「制御が不要なもの」にはプログラムが使われておりません。
なお、保護としてヒューズやサーモスタットが組み込まれたものは「異常が起きたら切る」という重要な働きをしますが、これは機械的に行っているのでプログラムではありません。ですが、センサーとプログラムによって同様の機能を実装しているものも多々あります。
センサーも付けただけでは働きません。入力回路と、その値を読み取るプログラムがあって初めて機能を実現するのです。
Q.プログラミングを学ぶペースは?
A.短くても毎日が理想
覚えたことはすぐ忘れてしまいます。普段使わない知識ならなおさらです。なので、覚えたことはなるべく早く復習しましょう。
プログラミングはパソコンがないと出来ない、って思われがちですが、確かにその通りなんですが、だからと言ってあきらめることは全くありません。
今日覚えたことを使って、何をやってみようかな?そう考えるだけでも全然違います。というか逆に、頭で想像する、考えることが記憶の定着に必要なので、何も考えずにパソコンを触っているだけでは効果はありません。
すぐ忘れちゃうのが、こまったところ
勉強してもすぐに忘れてしまいます。ですが、それが人間ってもんです。
脳みそに負担をかけないように、いらないことは忘れる仕組みが備わってます。だから、使いもしない知識を頭に入れてもすぐに忘れてしまうのは仕方のないことなんです。
継続できないことは、副作用が怖い
やる気と体力があれば、忘れる前に勉強を続けることでどんどん能力は伸びるでしょう。
ですが、こんなことができるのはテスト前の数日だけ、ってことは皆さん自身の経験から身に染みているでしょう。
緊張の糸が切れた瞬間、危険なことがあります。それは、やりたくい、見たくないっていう拒絶感を覚えてしまうことです。
無理してもいいことなんてありません。
『覚える⇒使う』をバランス良く
覚える一方だと頭がまいってしまいます。覚えたことは使いましょう、すると、頭の中で整理整頓が行われます。本棚にとりあえず突っ込みまくった情報を、使いやすいように並べ直す作業ですね。
そのとき、覚えたことを気軽に使える環境があると良いのは言うまでもありませんね。勉強が終わった子供に、聞いてみたり褒めてみたり、親が実際にやってみて子供に教えてもらうと最強です。
だれかに『教えること』が脳への接着剤です。
親が子供に適切にツンツン刺激を与えてあげることが、忘れることを防ぐとても良い手段となるでしょう。
また、教えた後に「ありがとう」と感謝されることも、脳が『有用な情報』だと認識する良い事実になります。
気軽にクイズを出し合うとかも、いい刺激になりますよ。
Q.プログラミングを学ぶメリットは?
A.意味と表現の違い、Yes/Noと余裕度の違いを分けて認識できるようになる
物凄く簡単に言うと、『バカにならない』ってことです。
では、『バカ』とはなんでしょう?
それは、『思考が停止している状態』の事と言っていいでしょう。
プログラミングは、機械にルールを伝える作業だと何度も行っていますが、機械はピュアなんです。
例えばヒトなら、『気を付けろよ』って指示は伝わります。
ですが、機械にはそれができない。なぜなら、『気を付ける』という命令は高次元の言葉で、つまりその短い言葉の中に意味がたくさん含まれているんですね。なので、具体的にどうしたらいいのかがわからない。
教える方が、高次にいる
そこで、危険と安全の境目を教える必要があります。例えば崖なら、崖から0mより手前なら安全、それ以上は危険、とまずこんな感じで教えます。
ですがそんなYes/Noの分け方では何か危ないですよね、危なっかしい。移動速度やブレーキ性能、重心の高さなどの内的要因と天候や路面はたまた他車や動物などの外的要因が絡んでくるので、こんどは注意する範囲を決めてあげます。
安全な範囲なら気を付けながら全力で走っていい
注意領域なら速度を落として警戒を強め、安全な方に戻る努力をする
危険な領域に入ってしまったら被害を最小限にとどめる対策を施す、周囲への迷惑に対応する
こんなルールを決めたら、機械でも分かるように具体的な数字を入れて指示してあげましょう。
シンタックス(表記)とセマンティクス(意義)
ところで、冒頭でも言いましたが機械はピュアなんです。
プログラムの命令語が1文字でも間違っているとエラーが出てしまいます、やろうとしていることが正しくても、表記を間違えると伝わらない。
なんか昨今のSNSでの炎上や、マスコミ取材の揚げ足取りに似ています。それだけ、見ている方もピュアなんでしょう。別に『ピュア=幼稚』だなんて言ってませんよ。
逆に、表記は正しいけど思ったように動かない場合があります、って言うかソフトのエラーの大半はこっちです。
表記が正しいので言われた通りに動いちゃいます、その結果、おかしな動きが成果物として残ります。
表記のミスは凡ミスなので、修正は容易です。やり方のミスは深刻な場合も多く、直し難いことも多いです。
この状態って、前出の『意味と表記の問題』に似てて、おかしな動きが成果物として残っているのに改修していない状態なんです。
自分の従っているルールが本当に正しいのか、停止した思考を再度動かして定期的にエラーチェックしてみましょう。
『私が崖から落ちたのはサクがなかったからだ!』
柵の無い崖って知ってましたよね?
策が無かった自分の責任です
Q.疑問のタイトル
A.簡単な解説
詳細
一般社団法人ピンタニーニャ・プログラミング学習協会
最後まで読んでいただきありがとうございます