見出し画像

高等学校「情報Ⅰ」のプログラミングのために(6) 教科書会社の対応状況

 2022年からの「情報Ⅰ」のプログラミングに対して,各教科書会社がどのように対応するか,現時点では教科書見本がないので不明だが,それぞれのWebページにいくと,ある程度方向性はわかるので調べてみた。

日本文教出版

現行の教育課程の時点で,IT・Literacy というシリーズの副教材を出している。

https://www.nichibun-g.co.jp/textbooks/joho/support/it_literacy/

Scratch・ドリトル編
 Scratch がバージョン3になったので,現在供給中止
Excel VBA編 
 目次は見ることができる。それによると,やはり「表計算」思考であることがわかる。Exercise にあるのは,「個人成績表」と「アドレス帳」だ。そのために,セルの操作と条件分岐,繰り返し,変数,イベントプロシージャなどを学ぶ。
 なお,初めにオブジェクト,プロパティ,メソッドの説明がある。
JavaScript編
入力,乱数,配列,繰り返し,ユーザー定義関数の基本を学んだのち,次のような課題を設けている。
1. ステータスバーやタイトルバーに文字を表示してみよう
2. 時刻を調べて1秒ごとに表示してみよう
3. 文字の色や背景の色を変えよう
4. 画像の大きさを変えよう
5. 表示画像を切り替えよう
6. 画像を繰り返し表示しよう
7. フォームを利用して文字列入力を処理しよう
8. フォームを利用してシミュレーションしよう
9. 入力された文字を読み出して別のフレームに表示しよう
10. 入力された文字を読み出してリアルタイムで表示しよう
11. 文字入力に応じてブラウザを制御しよう
12. 正規表現を利用しよう
13. 応用問題1
14. 応用問題2

資料として,オブジェクト,プロパティ,メソッドの説明がある。
目次を見る限り,VBAとは方向性が全く違うことがわかる。HTML指向だ。

数研出版

https://www.chart.co.jp/goods/joho_list/mini_manual.html

 ミニマニュアルシリーズとして出している。
・Excel VBA編
・Python編 
・JavaScript編

店頭販売はしていないが,データファイルがダウンロードできる。
どんな内容かは,この中の学習指導計画案.doc を見るとわかる。
それによると,次のようになっている。
VBA編
InputBox,MsgBox による入力と表示
変数,Range()を使ったセルへのデータ書き込み
「オブジェクト」「プロパティ」「メソッド」の用語の意味
RGB関数による色指定
条件分岐 If Elseif , Select Case
繰り返し For〜Next , Do Until〜Loop
Borders を使って連続模様を描画する
Range().Speak を使ったセル範囲の読み上げ
Application.Speech.Speak による文字読み上げ
ボタンでマクロを実行する
イベントとイベントプロシージャの作成
Application.Wait を使った処理の停止
数字合わせゲームの作成
画像が動くプログラムの作成

JavaScript編
HTML,CSSとJavaScriptの関係
HTMLのtable,th,tr,td 要素(表を作成する),CSSの記述方法
変数(配列は総合演習でコラム扱い)
「オブジェクト」「プロパティ」「メソッド」の用語の意味を理解させる。Math.Pl および Math.random() , Math.floor()
prompt() による入力
条件分岐 if, かつ(&&)または(||),switch〜case
繰り返し for,while , do〜while
フローチャート(自分が作ったプログラムのフローチャートを作る)
ユーザー定義関数
イベントとイベントハンドラ。onclick を使ったイベント処理,getElementByld を使った タグの id 属性へのアクセス
HTMLの要素の操作
setinterval() メソッド,setTimeout() メソッドを使ったタイマー処理と画像が動くプログラムの作成
シューティングゲームを作る
パズルを作る

エディタとして 「Atom を使えば」となっている。

Python編
Pythonのインストール手順
IDLE,シェルウィンドウ,エディタウィンドウを使う
変数と演算,データ型(文字型と整数型)
リスト,タプル,辞書型
input() による入力と文字列の結合,データ型の変換
条件判断 if ,else と繰り返し for ,while
ここで,イテラブルオブジェクトとは何なのかということを理解させる。
ユーザー定義関数,変数のスコープ
標準ライブラリ(math , random , tkinter)とモジュール
Tkinterを用いた描画:線,円,長方形
オプションをつけて Buttonウィジェットを設定する
ウィジェットにマウスイベントを関連づける。bind()の使い方
キーボードイベント
after() を使ったタイマー処理(Tkinter)
ファイルの読み込み
シューティングゲーム型のタイピングソフトを作る
ピンポンゲームを作る
AI風会話システムを作る

いずれも結構レベルは高いと言えるだろう。
筆者はまだ tkinter,マウスイベント,キーボードイベントについては調べていないことを考えると,これを指導する教師はかなりの量の勉強をしなければならない。
また,VBAの Application.Speech.Speak など,オブジェクト指向プログラミングでの記述は長くなる傾向があり,キーボードがろくに打てない生徒にとって,大変な負担となる。わずか数行のプログラムで1時間が終わってしまうこともありうる。(打つのが遅い,正しく打てない)


実教出版

http://www.jikkyo.co.jp/highschool_r03/jouhou/subtext/r03/

・Excelでまなぶプログラミング
 目次が見られて,例題のプログラムデータがダウンロードできるが,学習計画例などは会員専用となっている。
  Amazonなどでも購入可能
「流れ図を使わないプログラムング学習」となっている。
1章 プログラミングをはじめよう
 1 プログラミングとは何か  
 2 Excelとプログラミング  
 3 はじめてのプログラミング  
 4 セルに表示してみよう  
 5 コンピュータと会話をしよう  
 6 コンピュータと遊ぼう
2章 ゲームをつくろう
 1 テキストRPG
 2 占いの館へようこそ
 3 ドキドキ!相性診断  
 4 自分タイマー  
 5 スロットゲーム  
 6 モグラたたき
3章 プログラミングを活用してみよう
 1 電卓アプリ  
 2 素数をさがせ  
 3 四択クイズ  
 4 名前シール作成システム  
 5 データの抽出システム  
 6 データの並べ替えシステム

・事例でまなぶ プログラミングの基礎
 言語はScratchが主体でVBAも含まれている
 目次が見られて,プログラムデータなどのダウンロードができる。
 Amazonなどでも購入可能
1章 プログラムの基本
 1 問題解決の手順を考えよう  
 2 手順をフローチャートで表してみよう  
 3 プログラミングを学ぼう
2章 アルゴリズムの作成
 1 順次構造の基本を学ぼう  
 2 選択構造の基本を学ぼう  
 3 繰り返し構造の基本を学ぼう  
 4 選択構造と繰り返し構造を組み合わせてみよう
3章 プログラミング基礎編
 1 プログラミングの基礎知識を学ぼう  
 2 順次構造のプログラミングを学ぼう  
 3 選択構造のプログラミングを学ぼう  
 4 繰り返し構造のプログラミングを学ぼう
4章 プログラミング実践編
 1 合計を求めるプログラムを作成しよう  
 2 エンゲル係数を計算するプログラムを作成しよう  
 3 ボウリングのスコアの平均を求めよう  
 4 最大値を探すプログラムを作成しよう  
 5 配列を使って金種計算をしよう  
 6 関数を定義して使ってみよう
付録
 Scratch操作説明編  
 Excel VBA操作説明編  
 デバッグ(エラー処理)  
 落ちてくるリンゴを拾うゲームを作ろう  
 番号順に並べ替えるアルゴリズムを作ろう

・トレース Python
 「すでに完成しているプログラムをトレースし、変更を加える作業を通じて、短期間でプログラミングを学ぶことができます。」
「入力作業は変更する部分だけなので、キーボードの操作が苦手な生徒でも短時間で作業を終えることができます。」
となっているが,詳細は不明。
 2021年03月20日発行予定


東京書籍・第一学習社

今のところ,プログラミングの副教材は出していないようだ。


以上,出版社によって,方向性,難易度にかなりの違いがある。プログラミングは「情報Ⅰ」の中の一つの節に過ぎないが,数研出版の副教材を使い,これをきちんとやろうとすると,これだけで1学期分近い時間を要するだろう。
 教える教員も大変だ。これを使って教えるためには,掲載されている内容については理解をしておかなければならない。どうやって勉強するか。次回はこれについて考える。