2017年4月18日火曜日

プログラミング学習八【世界が広がるスキルの一つ】

その場で実践するプログラミング学習…最後のまとめです。プログラムが組めるようになる方法、肝、心構えをまとめました。

プログラミングとは何なのか、まず知るべきことは何なのか、どうすればできるようになるのかを説明するブログ。

話の内容

○プログラミングができるようになる方法
ポク太郎です。
今回は最終回の学習八-プログラムが作れるようになる方法まとめです。

学習一~七まででプログラミングに必要な知識はほぼすべて出揃いました。
まだどうしていいかわかんない」とおっしゃると思います。「ご安心下さい。当然のことです。

何故プログラマーはできる?…最初から組める訳がない理由

プログラムなんて組めるわけない

ポク太郎はプロのプログラマーではありません。ですが周りにはたくさんのプロがいます。以下のような場面をいつも見ています。
質問者 「なんでプログラムなんて組めるの?」
プロ 「うーん…、……、………、慣れ?」
質問者 「ふーん…。」(←結局質問内容が解決できずじまい。)
慣れ」。
実はこれ、一番正確で的確な表現なんです。ですが、まだできるようになっていない方にこの一言ではなかなか伝わりません。


プログラミング作業とは“各部品を使った命令文を目的の順番に並べる”こと。
「プログラムを組む」=「“結果”を想定して“部品”をどういう“並べ方”で使うのか?を見つける」

これは“発明”です。

水槽の底につなげた細いパイプを電熱線で熱するとパイプのもう一方の口から一滴ずつお湯が落ちてくるな。
ピコーン!コーヒーメーカーに使えるジャン!?
原理をいくつか知ってて、組み合わせたらコーヒーメーカーが作れることを発見。
コーヒーメーカーを作るために、使えそうな原理を見つけて利用。

いずれの方向から進んでも“発明”。
プログラムを組める=常に何かを発明できるということになります。

できますか?」「無理。

プログラミングテクニックというのは、コンピュータが登場してから50年、60年の間、世のプログラマーがずっと考え続け、色んな人が色んなことを思いついてと、そうやって出来上がったもの(現在進行ですが)なので、初めから組める方が不自然なのです。


プログラムが作れるようになる方法…最終まとめ(例外のない処理の順番に関するルール、リファレンスマニュアル、サンプルプログラム使い方)

キモ!!

学習一~八までの最後を締めくくる表題は「キモ!!」。プログラミングができようようになるための肝をまとめます。

そう簡単に発明なんてできるかよ、どーすりゃいいのよ(怒)」と思われてるかと。

例えば、
ギネスに挑戦!というドミノ大会の番組があったとします。そういう番組をいくつか見てると、何らかの手法を自分で思いつきませんか?
そのまま真似るのではなく“自分で思いつく”ってヤツ。同じことを考える人が他にいる、いないは関係ありません。とにかく自分で思いつく

どうでしょう?思いつくはずですね。


プログラミングはまさにこれ。

いくつかのサンプルを1ステップづつ見ていきます。ドミノのように視覚的に楽しくないので辛い作業かもしれません。

少し触ります。どの値がプログラムの動きにどう影響するか見えてきます。

それを繰り返すと“自分で思いつく”状態になります。ドミノ番組を見て自分で思いつくようになるのと全く同じです。

この状態が、プログラムの組める状態です。プロはそれを「慣れ」と表現しています。


まとめます。

最後のまとめ
キモ一 たくさんの部品を覚えるのではなく、どれが部品なのかということを理解。

自分でプログラムが組めるようになるまではリファレンスマニュアルは見ない。
キモ二 コンピュータが実行する命令の順序のルール(先頭から下へ1ステップづつ)をシッカリと把握。

実行の順序を変化させる命令があって、それを駆使して目的を果たしていることを理解。
キモ三 サンプルプログラムを目を皿のようにして1ステップづつ追いかける。
キモ四 サンプルを少し変更して動きに違いを出し、“動き方”を頭に叩き込む。

三と四の中でいくつか部品を覚えるでしょうし、こんなときはこんな順番でということを覚えるでしょう。

そうなってくると、リファレンスマニュアルを眺め、何か使える部品がないか探し自分で思いつくようになります。


それがプログラムを組めるようになる方法です。


小学校等の学校でプログラミング教育を必修とするニュースが流れてましたが、お子さんが困らないかとご心配の方がいらっしゃるかもと、化石コンピュータMSXを使い八回に分けて説明してみました。

どういうものなのか、どうやったらできるようになるのかをつかんでいただけると幸いです。


話の内容

こんな話でしたが内容は伝わりましたでしょうか。
○プログラミングができるようになる方法


コンピュータの歴史追体験企画も面白い…現在の開発環境の新機能の意味を確実に理解できる。

ここから余談

この記事は元々去年の12月に三回に分けて書いた記事でした。
↓の記事で書きましたが、何がなんだかのひどい文章だったので今回書き直したものです。
[ブログ]激怒!俺の文章は無茶苦茶やんけ!
本日の修正にて“ポク太郎 怒りの文章校正”は幕を閉じます。(やっと全部書き直したw)

が、ひとつ気になったことが。
新しくプログラミングを始める方にとっては、新機能の便利さは感じにくいものです。
現在の開発環境で実装している機能が「なんでその機能が便利なの?」と。

昔みんなが苦労した何かがあり、それを解決する手段がその新機能なわけで、当然その苦労を経験していなければ便利さは感じません。それで新機能を使いこなせればよいのですが、そこにモヤモヤがあると使い方を間違ってしまい、うーん…と。

ですので、化石コンピュータで歴史を追体験してみる企画もいいかなと考えています。
またいつか忘れた頃にMSXを使った記事を書き始めるかもしれません。
Alt+Escの操作を覚えてからクリックこんなもんまであるくらいなので、もうちょっとましなコンピュータあるといいんだけどw



プログラミング学習
学習一その場で触って“変数”を理解
学習ニ利用できる“部品”の一つ-四則演算と剰余を理解
学習三利用できる“部品”の一つ-関数を理解
学習四“部品”を使ってかんたんなプログラムを作る
学習五プログラムが「命令の順番を書き記したもの」ということを実感
学習六“順番を変える命令”の一つ-ループを理解する
学習七“順番を変える命令”の一つ-条件分岐を理解する
イマココ→学習八プログラムを組めるようになるにはどうするべきかを理解する


スポンサーリンク



↓ ランキングに参加しています!(Ctrlキーを押しながら) ↓

blogramのブログランキング

ポク太郎の「俺の説明聞いてくれ」 コンテンツ
ポク太郎の「俺の説明聞いてくれ」最キラー記事 IT関連
電気回路やプログラムの記事。元々のメインコンテンツ。
UWSC奮闘記
プログラミングのできる子に
デジタルの世界って
映画・ドラマ・芸能
ハリウッドが主のエンターテイメントの記事。最近は似顔絵多し。
戦士の息抜き
ブログ運営
AnalyticsやSerchConsolなどの使い方、アクセスアップに関する話題。
アドセンス関連
他のGoogleツール
その他
アホのもくろみ
アホの雑記
取りとめもなく好き勝手に書く記事。不本意にも一番人気だったり。
役に立つかも
休むに似たり
好き勝手に書く
落書き漫画
何故人気なのか全く解らない数コマ漫画。結局最大コンテンツに。
物思いに耽る
免責事項 ホームへ戻る

スポンサーリンク





0 件のコメント:

コメントを投稿