ホチキス先生の「プログラマーと呼ばれたい」

InfoPath & SQL Server !

Archive for the ‘アルゴリズム’ Category

2019年5月18日(土) – 第2回神戸SQL Serverラボ – 神戸SQL Server User Group

leave a comment »

2019年4月から毎月定期開催で「神戸SQL Serverラボ」と題したSQL Serverの勉強会を始めました。場所は神戸三ノ宮駅から徒歩約5分の便利な場所にある、神戸青少年会館をお借りし、毎回テーマを決めて、初心者がSQL Serverデータベースの運用ができることを目指します。また経験者の方にも、それぞれお持ちのノウハウを交流できる場になれば幸いです。

<追記>
第2回からネットワーク環境で SQL Server を利用できるようにします。LAN ポートで有線接続できるか、WiFi 機能を持った PC をお持ちいただければ SQL Server をインストールしなくとも管理ツール SSMS だけ設定すれば実習ができます。用意する SQL Server のバージョンは SQL Server 2014 と SQL Server 2017 です。

場所:神戸青少年会館(神戸市勤労会館の5階6階です)
神戸市中央区雲井通5丁目1番2号 34.694927, 135.197403
kobeshiseishounenkaikan_map bingmapで表示
神戸市青少年会館のアクセスページ
日時:毎月第3土曜日 18:00~19:30

第2回 2019年5月18日(土)18:00~19:30
「テーブル作成、データ型、主キー、テーブル作成とSQL文」
データベースの作成とテーブル作成について実習します。実習の中でデータを一意に管理するテーブルの主キーについてや、Accessの「オートナンバー型」のようにデータに自動的に連番を与える方法、テーブル作成を SQL 文で行う方法などを体験的に身に着けます。
場所:神戸青少年会館 サークル4号室(神戸市勤労会館の6階です)

申し込み方法:電子メールまたはconnpassで
電子メール:kobesqlserverlabo@matsumotoyoshio.net
電子メールのタイトル:第2回20190518神戸SQL Serverラボに参加します
電子メールの本文:お名前、所属をお書きください。
connpassでの申し込み:https://connpass.com/event/130009/
運営費:500円

(定期開催の予定)

第1回 2019年4月27日(土)18:00~19:30(終了しました)
「SQL Serverのインストールと管理ツールManagement Studioの基本操作」

第2回 2019年5月18日(土)18:00~19:30
「テーブル作成、データ型、主キー、テーブル作成とSQL文」

第3回 2019年6月15日(土)18:00~19:30
「ビューによるデータ操作、射影、選択、結合」

第4回 2019年7月20日(土)18:00~19:30
「関数によるデータ処理、ユーザー定義関数の作成と利用」

第5回 2019年8月17日(土)18:00~19:30
「トリガによるデータ処理の自動化」

第6回 2019年9月21日(土)18:00~19:30
「ストアドプロシージャの作成と利用」

※第7回以降の予定は決定次第ここにご案内します。

2019年5月1日

松本 吉生(まつもとよしお)

Microsoft MVP Data Platform
京都に生まれ、神戸で幼少期を過ごす。大学で応用化学を学んだのち、理科教諭として高等学校に勤務する。教育の情報化が進む中で校内ネットワークの構築運用に従事し、兵庫県立明石高等学校で文部科学省の「光ファイバー網による学校ネットワーク活用方法研究開発事業」に携わる。兵庫県立西宮香風高等学校では多部制単位制の複雑な教育システムを管理する学籍管理データベースシステムをSQL ServerとInfoPath、AccessなどのOfficeソフトウエアによるOBA開発で構築・運用する。2015年から2017年まで兵庫県立神戸工業高等学校でC#プログラミング、IoTなどのコンピュータ教育を行い、現在は兵庫県立神戸甲北高等学校に勤務する。2004年からマイクロソフトMVP(Microsoft Most Valuable Professional)を受賞し、現在15回目の連続受賞。2016年にマイクロソフト認定教育者(Microsoft Innovative Educator Experts : MIEE)を受賞し、現在4回目の連続受賞。

広告

Visual Studio 2017 で Microsoft Report を使う – Visual Studio 用 Microsoft RDLC レポートデザイナーをインストールする – 拡張機能と更新プログラムを利用する

leave a comment »

従来、Visual Studioで印刷帳票を作るには、Crystal Reports を使うことが主流だった。略称「クリレポ」と呼ばれ、開発者にとって事実上の標準ツールだったと言える。これは純粋のマイクロソフト製品ではなくサードパーティーによる製品だが、Visual Studio 2008までは Crystal Reports の OEM バージョンが利用できた。Visual Studio 2010 以降も現在の開発元である SAP 社のサイトから無償バージョンをダウンロードして使えるようだが、Microsoft 社は印刷帳票に関する開発環境を Microsoft Report という名称でまとめていく方向性を持っているようだ。

Microsoft Report による帳票の開発は、RDLC レポートデザイナーで行う。RDLC レポートデザイナーは Visual Studio のインストール方法によっては標準でインストールされず、Visual Studio 2017 の「プロジェクト」メニューの「新しい項目の追加」で「レポート」が選択できないことがある。

「新しい項目の追加」ウィンドウにレポートアイテムがなければ、Visual Studio 2017 のメニューで「ツール」-「拡張機能と更新プログラム」を選択し、コンポーネントをインストールする。

MicrosoftReport_005_trimming

「拡張機能と更新プログラム」ウィンドウでは、検索対象を「オンライン」にし、キーワードに「RDLC」を入力する。検索すると「Microsoft RDLC Report Designer」が見つかるはずなので「ダウンロード」のボタンをクリックする。

「ダウンロード」のボタンをクリックするとインストールがスケジュールされるので、Visual Studio をいったん終了する。

MicrosoftReport_007_mid_640

Visual Studio を終了すると自動的に VSIX インストーラーが起動し、コンポーネントのインストールがはじまる。

MicrosoftReport_008

Visual Studio 用 Microsoft RDLC レポートデザイナーのインストールが示されるので「変更」をクリックする。

MicrosoftReport_009

ダウンロードとインストールがはじまる。

MicrosoftReport_010

インストールが完了した。

MicrosoftReport_011.png

インストールが完了したら Visual Studio 2017 を再び起動する。C# で Windows フォームアプリケーションの新しいプロジェクトを開始する。

MicrosoftReport_012_mid_640

「プロジェクト」メニューの「新しい項目の追加」を開くと「レポート」と「レポートウィザード」のアイテムが選択できるようになった。

「レポート」を選択し「追加」のボタンをクリックすると、プロジェクトに Report1.rdlc が追加された。

「ツールボックス」を展開すると、レポートにデザインできる「レポートアイテム」が表示されている。

2019年4月30日

松本 吉生(まつもとよしお)

Microsoft MVP Data Platform
京都に生まれ、神戸で幼少期を過ごす。大学で応用化学を学んだのち、理科教諭として高等学校に勤務する。教育の情報化が進む中で校内ネットワークの構築運用に従事し、兵庫県立明石高等学校で文部科学省の「光ファイバー網による学校ネットワーク活用方法研究開発事業」に携わる。兵庫県立西宮香風高等学校では多部制単位制の複雑な教育システムを管理する学籍管理データベースシステムをSQL ServerとInfoPath、AccessなどのOfficeソフトウエアによるOBA開発で構築・運用する。2015年から2017年まで兵庫県立神戸工業高等学校でC#プログラミング、IoTなどのコンピュータ教育を行い、現在は兵庫県立神戸甲北高等学校に勤務する。2004年からマイクロソフトMVP(Microsoft Most Valuable Professional)を受賞し、現在15回目の連続受賞。2016年にマイクロソフト認定教育者(Microsoft Innovative Educator Experts : MIEE)を受賞し、現在4回目の連続受賞。

 

 

 

2019年度毎月定期開催 – 神戸SQL Serverラボ – 神戸SQL Server User Group

leave a comment »

2019年4月から毎月定期開催で「神戸SQL Serverラボ」と題したSQL Serverの勉強会を始めます。場所は神戸三ノ宮駅から徒歩約5分の便利な場所にある、神戸青少年会館をお借りし、毎回テーマを決めて、初心者がSQL Serverデータベースの運用ができることを目指します。また経験者の方にも、それぞれお持ちのノウハウを交流できる場になれば幸いです。

場所:神戸青少年会館(神戸市勤労会館の5階6階です)
神戸市中央区雲井通5丁目1番2号 34.694927, 135.197403
kobeshiseishounenkaikan_map bing mapで表示
神戸市青少年会館のアクセスページ
日時:毎月第3土曜日(4月のみ第4土曜日) 18:00~19:30

第一回 2019年4月27日(土)18:00~19:30
「SQL Serverのインストールと管理ツールManagement Studioの基本操作」
場所:神戸青少年会館 サークル4号室(神戸市勤労会館の6階です)

申し込み方法:電子メールまたはconnpassで
電子メール:kobesqlserverlabo@matsumotoyoshio.net
電子メールのタイトル:第一回20190427神戸SQL Serverラボに参加します
電子メールの本文:お名前、所属をお書きください。
connpassでの申し込み:https://connpass.com/event/128749/
運営費:500円

第二回 2019年5月18日(土)18:00~19:30
「テーブル作成、データ型、主キー、テーブル作成とSQL文」

第三回 2019年6月15日(土)18:00~19:30
「ビューによるデータ操作、射影、選択、結合」

第四回 2019年7月20日(土)18:00~19:30
関数によるデータ処理、ユーザー定義関数の作成と利用」

第五回 2019年8月17日(土)18:00~19:30
「トリガによるデータ処理の自動化」

第六回 2019年9月21日(土)18:00~19:30
「ストアドプロシージャの作成と利用」

※第七回以降の予定は決定次第ここにご案内します。

2019年4月20日

松本 吉生(まつもとよしお)

Microsoft MVP Data Platform
京都に生まれ、神戸で幼少期を過ごす。大学で応用化学を学んだのち、理科教諭として高等学校に勤務する。教育の情報化が進む中で校内ネットワークの構築運用に従事し、兵庫県立明石高等学校で文部科学省の「光ファイバー網による学校ネットワーク活用方法研究開発事業」に携わる。兵庫県立西宮香風高等学校では多部制単位制の複雑な教育システムを管理する学籍管理データベースシステムをSQL ServerとInfoPath、AccessなどのOfficeソフトウエアによるOBA開発で構築・運用する。2015年から2017年まで兵庫県立神戸工業高等学校でC#プログラミング、IoTなどのコンピュータ教育を行い、現在は兵庫県立神戸甲北高等学校に勤務する。2004年からマイクロソフトMVP(Microsoft Most Valuable Professional)を受賞し、現在15回目の連続受賞。2016年にマイクロソフト認定教育者(Microsoft Innovative Educator Experts : MIEE)を受賞し、現在4回目の連続受賞。

Amazon で BBC Micro:bit を注文した

leave a comment »

本家、英BBCの Micro:bit を使ってみたいと思い Amazon で検索するとバルク品の英BBC Micro:bit がいくつかの業者から売られていることがわかった。

BBC_Microbit_Amazon_mid_640.png

リテール BOX と書かれた箱入りの英 BBC Micro:bit はおよそ 3,000円。それ以外にバルク品と書かれたものが、およそ 2千百円台からある。今回は試しにバルク品で 2,160円のものを発注した。アマゾン Prime 対応でクリスマスイブまでには届くようになっている。

Microbit_bulk_Amazon_mid_640.png

英 BBC 本家の Micro:bit がスイッチサイエンス社の Micro:bit と違いがあるのか、興味深い。

2018年12月22日

松本 吉生(まつもとよしお)

Microsoft MVP Data Platform
1961年京都に生まれ、神戸で幼少期を過ごす。大学で応用化学を学んだのち、理科教諭として高等学校に勤務する。教育の情報化が進む中で校内ネットワークの構築運用に従事し、兵庫県立明石高等学校で文部科学省の「光ファイバー網による学校ネットワーク活用方法研究開発事業」に携わる。兵庫県立西宮香風高等学校では多部制単位制の複雑な教育システムを管理する学籍管理データベースシステムをSQL ServerとInfoPath、AccessなどのOfficeソフトウエアによるOBA開発で構築・運用する。2015年から2017年まで兵庫県立神戸工業高等学校でC#プログラミング、IoTなどのコンピュータ教育を行い、現在は兵庫県立神戸甲北高等学校に勤務する。2004年からマイクロソフトMVP(Microsoft Most Valuable Professional)を受賞し、現在15回目の連続受賞。2016年にマイクロソフト認定教育者(Microsoft Innovative Educator Experts : MIEE)を受賞し、現在4回目の連続受賞。

Micro:bit の学習用拡張実験モジュールを作る – CR2024 ボタン電池による給電と外部 LED のコントロールボード

leave a comment »

Micro:bit は本体に LED 表示機能を有し、加速度センサや磁気センサ、CPU の温度測定機能を利用した温度センサ機能、LED を照度センサとして利用できるなど、他のマイコンボードとは違い単体で様々な実験ができるところが特徴だ。さらに Micro:bit によるプログラミング実習を、外部 LED のコントロールやウエアラブルに使うことを考え、拡張ボードを作っている。

P1950915_Microbit_module_mid_640

市販のフレキシブル基板を使い、Micro:bit にあわせて穴を開ける。CR2032 ボタン電池ホルダーと接続ケーブル、赤、緑、青の LED を取り付ける。まだプロトタイプなので抵抗など必要な部品の全ては配置できていない。

Micro:bit 本体とは距離をあけて取り付けなければならないので、プラスチックのスペーサーを使う。

P1950917_Microbit_Bolt_mid_640

P1950918_Microbit_Module_Attach_mid_640

ここで問題点がひとつある。それは Micro:bit をボルトとナットで止めるときに、隣の I/O ピント接触してしいそうなところだ。

P1950922_Microbit_Module_Bolt_mid_640

なぜいま少し、1mm でも内側に穴を配置してくれていればこのような問題はおこらなかったのに、と設計者に恨みを言いたくもなるが、Micro:bit はこのような設計であり、ボルトには頭の下側が斜めになった「皿ネジ」を使うことが推奨されている。しかし皿ネジは見た目が悪く、安定感に欠けるのでできれば使いたくない。このあたりはどう解決するか試行錯誤している。

P1950925_Microbit_Battery_Connector_mid_640

給電コネクタ部分はこのようになる。あえてスイッチを設けず、コネクタを付け外すことでスイッチとするシンプルな構造とした。

P1950920_Microbit_Module_Attach_Overview_mid_640

2018年4月18日

松本 吉生(まつもとよしお)
Microsoft MVP Data Platform

1961年京都に生まれ、神戸で幼少期を過ごす。大学で応用化学を学んだのち、理科教諭として高等学校に勤務する。教育の情報化が進む中で校内ネットワークの構築運用に従事し、兵庫県立明石高等学校で文部科学省の「光ファイバー網による学校ネットワーク活用方法研究開発事業」に携わる。兵庫県立西宮香風高等学校では多部制単位制の複雑な教育システムを管理する学籍管理データベースシステムをSQL ServerとInfoPath、AccessなどのOfficeソフトウエアによるOBA開発で構築・運用する。2015年から2017年まで兵庫県立神戸工業高等学校でC#プログラミング、IoTなどのコンピュータ教育を行い、現在は兵庫県立神戸甲北高等学校に勤務する。2004年からマイクロソフトMVP(Microsoft Most Valuable Professional)を受賞し、現在15回目の連続受賞。2016年にマイクロソフト認定教育者(Microsoft Innovative Educator Experts : MIEE)を受賞し、現在4回目の連続受賞。

10分でわかる – Visual Studio と C# で理解するオブジェクト指向プログラミング

leave a comment »

オブジェクト指向は現代プログラミングにおいては強力な手法だが、高度に抽象化された概念を伴うため理解するには適切な学習と訓練が必要である。そこで Visual Studio 2017 を使った C# プログラミングにより、具体的な例をあげて、オブジェクト指向を説明してみよう。

たとえばフォーム上にボタンがあり、ボタンの大きさをスライダの操作によって変化させるようなプログラムを考えよう。Visual Studio ならツールボックスにボタンコントロールとトラックバーが用意されているので、マウス操作だけでフォーム上に配置することができる。

OOP_001

OOP_002

トラックバーで変化させる値の範囲を、0から300にしよう。それには作成した trackBar1 のプロパティをプロパティウィンドウで変更する。Minimum の値は 0 のまま、Maximum の値を 300 に変更する。

OOP_003

次にトラックバーをマウスでダブルクリックし、トラックバーのスクロールイベントを作成する。ここに次のコードを書こう。これはオブジェクト指向ではないプログラミングの例だ。

————————————————————————————–

button1.Height = trackBar1.Value;
button1.Width = trackBar1.Value;

————————————————————————————–

OOP_004

ビルドして実行する。すると、スクロールバーを動かすことでボタンの高さの値と幅の値がスクロールバーの値になるので、大きさが変化する。ちゃんと動くプログラムができる。

OOP_005

OOP_006

OOP_007

フォームの大きさに対して 300 というボタンのサイズは大きすぎるので、スライダを右端によせればボタンがフォームからはみ出すようになる。

では、ここからだ。

スライダの値範囲は 0 ~ 300 のままとし、スライダを操作してもボタンのサイズが 100 ~ 200 の範囲に留まるようにプログラムを書き換えよう。if 文を知っていれば、たいてい次のようにコードを書くだろう。

————————————————————————————–

if (trackBar1.Value > 100 && trackBar1.Value < 200)
{
button1.Height = trackBar1.Value;
button1.Width = trackBar1.Value;
}

————————————————————————————–

OOP_008

もちろん、これで求める動作をするアプリケーションが得られる。しかし、オブジェクト指向では、こう考える。ボタンのサイズが 100 から 200 の範囲に留まるのは操作をする側で調節するのではなく、ボタン自体の性質にするべきだと考える。サイズを 100 以下にする指示や 200 以上にする指示を無視するように実装するのだ。

ではオブジェクト指向でやってみよう。

それにはもともと用意されたボタンオブジェクトに変更を加える必要がある。そこでオブジェクト指向の「継承」という概念を用いる。「継承」は、あるオブジェクトの性質を引き継ぐ別のオブジェクトを作る方法である。次のコードでは「継承」を利用して custumButton のオブジェクトを作っている。

————————————————————————————–

class CustomButton : Button
{

}

————————————————————————————–

そして Form1 クラスに myCustomButton の名前で CustomButton オブジェクトを作り、フォームの Load イベントで myCustomButton のインスタンスを生成してフォームに表示する。

————————————————————————————–

CustomButton myCustomButton;

————————————————————————————–

myCustomButton = new CustomButton();
this.Controls.Add(myCustomButton);

————————————————————————————–

OOP_009

この状態でビルドすると、フォームの左上にボタンができているが、これは Button オブジェクトを継承して作った CustomButton である。ただ、この CustomButton には何もコードを付け加えていないので、このままでは単なるボタンと同じである。

OOP_010

次に、この CustomButton に自分のサイズを変更するメソッドを定義する。こんなかんじだ。

————————————————————————————–

public void changeSize(int x)
{
this.Height = x;
this.Width = x;
}

————————————————————————————–

これにより CustomButton オブジェクトは changeSize メソッドを持つことになり、myCustomButton.changeSize(100) のようにしてサイズを変更できるようになる。

ここでさらに、ボタンのサイズを 100 ~ 200 に限定するため、次のようにコードを書き加える。

————————————————————————————–

public void changeSize(int x)
{
if (x > 100 && x < 200)
{
this.Height = x;
this.Width = x;
}
}

————————————————————————————–

このことにより、ボタン自身がサイズの変更を 100 ~ 200 の場合のみ受け付けるようになる。トラックバーのスクロールイベントには次のようなコードを書く。

————————————————————————————–

myCustomButton.changeSize(trackBar1.Value);

————————————————————————————–

OOP_011

OOP_012

OOP_013

OOP_014

これにより、ボタンのサイズを変更するプログラムは、全体のコードでは changeSize メソッドを利用して「大きさ変われ」と指示を出し、それを受けたカスタムボタンオブジェクト自身が指示通り動くかどうかを判断して動くようになる。カスタムボタンは 100 ~ 200 の値しか受け付けないので、それ以外の指示を出しても無視する挙動をする。オブジェクトにふるまいを実装することで、値の指示範囲を主プログラム側で気にする必要がなくなるのだ。

さらに CustomButton クラスの記述を分離コードの Form1.Designer.cs に移動すると、プログラム全体はより見やすくなる。

OOP_015

OOP_016

さらに c# には、オーバーロードという概念があり、同じ名前のメソッドでも引数の型が異なれば重複して実装することができる。たとえばこのカスタムボタンに、サイズが 150 × 150 の決まった「mid」サイズの定義があるとして、それを次のように定義することができる。

————————————————————————————–

public void changeSize(string x)
{
this.Height = 150;
this.Width = 150;
}

————————————————————————————–

OOP_017

全体のコードでは、数値で大きさを変える changeSize メソッドと同じ名前でカスタムボタンに「ミッドサイズになれ」と指示を出すことができる。

————————————————————————————–

myCustomButton.changeSize(“mid”);

————————————————————————————–

新しくフォームに作ったボタンをクリックして「ミッドサイズ」にするコードは次の通りだ。

————————————————————————————–

OOP_018

このようにオブジェクト指向プログラミングでは「ふるまい」をオブジェクトの側に実装し、全体のプログラムからは

180 × 180 の大きさになれ

myCustomButton.changeSize(180);

ミッドサイズの大きさになれ

myCustomButton.changeSize(“mid”);

といった指示を出すように書くことができるようになる。このことでオブジェクトのふるまいがオブジェクト自身に記述され、プログラム全体が見やすく、また合理的にコントロールできるようになる。

2018年3月8日

松本 吉生(まつもとよしお)
Microsoft MVP Data Platform

1961年京都に生まれ、神戸で幼少期を過ごす。大学で応用化学を学んだのち、理科教諭として高等学校に勤務する。教育の情報化が進む中で校内ネットワークの構築運用に従事し、兵庫県立明石高等学校で文部科学省の「光ファイバー網による学校ネットワーク活用方法研究開発事業」に携わる。兵庫県立西宮香風高等学校では多部制単位制の複雑な教育システムを管理する学籍管理データベースシステムをSQL ServerとInfoPath、AccessなどのOfficeソフトウエアによるOBA開発で構築・運用する。現在は兵庫県立神戸工業高等学校でC#プログラミング、IoTなどのコンピュータ教育を行う。2004年からマイクロソフトMVP(Microsoft Most Valuable Professional)を受賞し、現在14回目の連続受賞。2016年にマイクロソフト認定教育者(Microsoft Innovative Educator Experts : MIEE)を受賞し、現在3回目の連続受賞。

小学校の先生はオブジェクト指向を知らなくてよいか – 高度な領域を知ることで教え方も変わる

leave a comment »

プログラミング教育において「オブジェクト指向」を学ぶことは重要だが、もちろん小学生にオブジェクト指向を教えろと言っているのではない。もちろん将来的に小学校のプログラミング教育にオブジェクト指向が取り入れられることになれば、それは歓迎すべきことだが、今すぐそうはならないだろう。また近い将来にオブジェクト指向ではない別のアプローチがプログラミングの主流になるかもしれない。ただ、現代プログラミングにおいてはオブジェクト指向は強力な手法であり、およそ個人レベルで使われるアプリケーションのほとんどがオブジェクト指向によって作られているといえる。このことから高等学校レベルではオブジェクト指向を身につけることをプログラミング教育の目標のひとつにしたい。

発達段階に応じたプログラミング教育を考えたとき、小学校では手続き型のプログラミングに留めるべきだろう。またキーボードから文字入力をするコーディングではなく、ブロックを視覚的に組み合わせてプログラムを作る、いわゆる「ブロック型」の開発環境が望ましいだろう。そして構造化プログラミングとしてまとめられる「順次構造、繰り返し構造、条件分岐」を理解しプログラミングができること、センサやアクチュエータをマイコンボードやロボットで制御し、入出力を体験的に理解し活用できること、などが目標になるだろう。では小学校の先生はオブジェクト指向を知らなくてよいのかといえば、そうではない。小学校の先生もオブジェクト指向を理解するべきである。

オブジェクト指向は高度に抽象化されたプログラミング手法である。中学校、高等学校と発達段階がすすむにつれ、どこかの段階で身につけさせたい概念である。小学校の授業では教えなくても、これを知っているのと知らないのとでは教材の作り方や教え方が違ってくるだろう。

たとえば数学なら、中学校では連立方程式を学習する。よくある問題として「予算が290円あります。鉛筆は1本30円、消しゴムは1個50円です。予算を全部使って7人に渡すには、鉛筆と消しゴムをそれぞれ何個ずつ買えるでしょう。」がある。中学校の数学では、鉛筆を x 本、消しゴムを y 個として連立方程式を作って求めるだろう。小学生にとって連立方程式は抽象化度が高いので学ばないが、小学校6年生では「文字と式」の単元で数字を○や□にあてはめた計算方法を学習する。また「鉛筆を1本だけ買った場合、2本買った場合、3本買った場合・・・」と実際の数をあてはめながら答えを求めることもさせる。そしてこれは、中学校で連立方程式を学ぶ前段階として位置づけられている。もちろん教師は中学校では連立方程式を学習することを知っており、それを前提に授業を組み立てる。学問は系統だっており、学習も発達段階に応じて系統的に組み立てられるからだ。

したがって小学校の先生がプログラミング教育を行う時も、学習の先にオブジェクト指向があることを知っているのと知らないのとでは授業のアプローチも違うはずだ。その意味でも、小学校の先生もオブジェクト指向を理解しておくべきだ。オブジェクト指向は難しいと言われるが、すぐれた教材と学習メソッドがあれば理解できる。小学校からプログラミング教育を、と言われて奮闘する小学校の先生には頭が下がる思いであり、先駆的な実践を始めている先生方は子どもたちの未来を切り開く希望の星だと言えるが、そこを、あえて、さらに質の高いプログラミング教育を実現するために、オブジェクト指向を学んでいただきたいと望んでいる。

2018年3月8日

松本 吉生(まつもとよしお)
Microsoft MVP Data Platform

1961年京都に生まれ、神戸で幼少期を過ごす。大学で応用化学を学んだのち、理科教諭として高等学校に勤務する。教育の情報化が進む中で校内ネットワークの構築運用に従事し、兵庫県立明石高等学校で文部科学省の「光ファイバー網による学校ネットワーク活用方法研究開発事業」に携わる。兵庫県立西宮香風高等学校では多部制単位制の複雑な教育システムを管理する学籍管理データベースシステムをSQL ServerとInfoPath、AccessなどのOfficeソフトウエアによるOBA開発で構築・運用する。現在は兵庫県立神戸工業高等学校でC#プログラミング、IoTなどのコンピュータ教育を行う。2004年からマイクロソフトMVP(Microsoft Most Valuable Professional)を受賞し、現在14回目の連続受賞。2016年にマイクロソフト認定教育者(Microsoft Innovative Educator Experts : MIEE)を受賞し、現在3回目の連続受賞。