令和四年度からは、『社会と情報』・『情報の科学』から『情報Ⅰ』(必須)・『情報Ⅱ』(選択)への移行しました[1]

本書はまだ、『社会と情報』と『情報の科学』当時の記載が中心であることに注意してください。


この教科について 編集

高校の「情報」教科では、データの圧縮のしくみや、エラー訂正のしくみといった情報科学・情報工学および関係する数学、あるいは関する法律など社会的な知見など、中学より高度な内容を学びます。

単なるマウスの使い方、キーボードの使い方などは中学校卒業までに習っている前提で教科書は書かれています。

大学入試の新共通試験に『情報I』が加わりましたが、内容は情報科学と数学、および関係する法律など社会科的な知識です。基本的にはマウスやキーボードの操作は、共通試験には出ません。国の大学入試センターから共通試験サンプル問題などが公開されていますので、もし疑うなら確認できます(ただし、前提知識になる可能性はあります。ですが学校で普通に実習などをしていれば操作知識については対応できる範囲内でしょう)。

実際、旧科目名の『社会と情報』及び『情報の科学』を踏襲したものになっています。

共通試験での実習の出題の有無の、傾向と対策 編集

文科省の指導要領などでは実習なども要求されていますが、しかし大学入試の新共通試験(センター試験)では、けっして直接的には、Officeソフトの Word の使い方とか Google アプリの使い方 などといった実習で遭遇するだろう特定アプリの操作については、出ないことに注意してください。(大学入試センターのサンプル問題で確認できます。)

教科書会社が Word や PowerPoint などの実習用の教材も出していますが、しかしあれは検定教科書ではありません。「副教材」とか「副読本」とか言われる教材です。副教材の内容は、基本的には大学入試には直接は出ません。

出題傾向については、センター試験時代の『情報関係基礎』のような出題を基本的には踏襲していくものと思われます。過去問については、 情報処理学会で、センター試験『情報関係基礎』の過去問がアーカイブされています。(なお、新共通試験の対応する情報の科目名は『情報Ⅰ』になるものと思われます。)


ただし、直接的には共通試験では問わなくても、もしかしたら設問文などの状況設定で、実習のような状況設定にする可能性は今後はあります。

たとえば

次の事例を読んで、設問に答えなさい。

【タロウくんの高校の事例】
タロウくんは、文化祭の紹介ホームページを作る際、つぎのような事に注意してプロトタイプを作りました。(以下略)
・・・

みたいな、実習体験を前提にした複合問題が出題される可能性です。文化祭に限らず体育祭とか部活動とか委員会とか生徒会とか、どこの高校にも基本的には存在するはずの活動なので(養護学校など一部は例外もあるかもしれないが)、いろんな出題パターンの可能性が考えられます。

なので、高校の各所での実習も、ちゃんと参加しましょう。


ほか、指導要領とは別に、文科省のGIGAスクール構想のための大量の公費の補助金によって、公立高校にもICT化の補助金が多く与えられましたので、もはや「わが校は貧乏」というイイワケは通じず、「うちはお金が無くてパソコンの勉強ができなかったので、コンピュータの実習が苦手なんです~」みたいなイイワケは通じない時代になっています。

まあ、ふつうに校内の活動などの実習などに参加していれば、共通試験対策としては、特に問題は無いと思います。あくまで情報I・IIは情報科学などを学ぶ科目ですので。

さらにほか、2020年の新型コロナ問題もあって、学生ならビデオ会議ツールの使い方とか、リモート学習とかも、マジメな学生なら練習してあるはずです。受験対策としては、操作に深入りする必要はありませんが、しかし余裕を見てそういうのも時々は勉強・おさらいするのも良いでしょう。

旧科目について 編集

令和3年度(2021年度)までは、普通科高校の情報科目には『社会と情報』『情報の科学』の2つの科目がありました。 『情報の科学』のほうが技術的詳細について説明されていました。

浪人生の読者へ
『情報の科学』は細かいぶん、初心者には雑多な情報も多く、初心者はまず『社会と情報』から読むことを勧めます。
教科書は、それぞれの科目とも2回か3回か読めば充分でしょう。ただし、計算例など教科書中にあれば、理解しつつ計算練習してください。ただし、情報科のほうではそんなに膨大に計算練習する必要いはありません。(もっと計算練習したいなら、数学の検定教科書のほうを学ぶべきです。)
社会人の読者へ
これら検定教科書に書かれている内容のうち技術的な部分の入門は、おおむね情報処理技術者試験の区分の1つ「基本情報技術者試験」の入門的内容に相当します。(発展的な内容については、必ずしも一致しません。)
もし大人がこのページを読んでるなら、それら技術者試験の市販の解説書の内容がすでに分かっているならば、ITリテラシーの自学自習の目的としては、旧カリキュラム『情報の科学』『社会と情報』の検定教科書を買う必要はありません。

勉強法 編集

検定教科書を使う 編集

この教科にかぎらず、基礎的な情報科学・情報工学について自習する場合は、しばらくは検定教科書および参考書(情報Iの共通テスト対策本(センター対策)が出ています)を中心に読んで勉強せざるを得ないでしょう。

書店に行っても、手頃なコンピューター学の入門書が置いてない場合が多いでしょう。浪人生などは、教科書取り扱い店で、高校の情報科目の検定教科書を注文する必要があるかもしれない[2]。(ただし現役高校生は、学校の必履修科目として『情報I』を習うので、教科書を入学時・進級時などに購入するので、独自の追加の注文は不要です。)


いちおう、2024年の現在では、情報Iの参考書は出版され始められているのですが(国の方針などにより新共通試験で国公立大受験に『情報I』科目がほぼ必須科目になった)、しかし高校『情報I』科の参考書市場がまだ始まったばかりなので、参考書のデキは未知数です。

さらに、2022年に情報I・IIに教科が改訂されたばかりなので、まだ参考書は教科の改訂への対応が追い付いていません。

2024年の現在、『情報I』の新共通試験の対策のための参考書が出版されています。高校生は、検定教科書のほかの勉強をしたければ、この参考書を読むのが良いでしょう。

2023年は、情報II の参考書が出ないまま終わりました。高校で『情報II』を習わない多くの高校の人が、どうしても『情報II』も勉強したければ教科書取扱店で注文することになりますが、しかし情報IIは教科書会社ごとに内容のバラツキが多いのが現状(2024年の時点)です。新共通試験(センター試験の後継)には今のところ、情報IIは要求されていません。


PC操作本や資格試験本などは不要 編集

  • PC操作本が不要なワケ

初心者むけのPC操作はすでに小中で習っています。高校のパソコン操作は、基本的に、これらで十分です。あまり操作の難しいものは、そもそも学習対象として不適切です。(この科目は、けっして操作を覚える科目ではなく、情報科学を理解する科目だからです。)

また、どうしてもPC操作の書籍が必要でも、普通が学校のPコンピュータ室に数冊ほどのPC操作の解説本が置いてありますので、それで十分です。


  • 資格試験本が不要

資格試験と言っても、機器の操作を要求するものや、『ITパスポート』や『基本情報技術者試験』など色々とあります。とりあえず、本節では、『ITパスポート』および『基本情報技術者試験』など、座学的な知識を問う資格について、高校生の学習との関連を述べます。

とりあえず、高校の情報科の学習には、上記の資格試験本は不要です。なぜなら、高校生にとっては(大学生にとっても)上述の資格試験本は、雑多な内容が多いからです。

「基本情報技術者試験」の試験対策本が書店に置いてあっても、中学を卒業したばかりの初心者には、その対策本はレベルが合っていない。また、『ITパスポート』も『基本情報技術者試験』の資格対策本も、初心者にとっては雑多な知識が多く、なぜかというと社会人が細かいIT知識を把握してるかの確認の試験です。社会人にとっては資格試験本の構成は「網羅的である」という長所になりますが、しかし高校生にとっては「雑多である」という欠点になります。よって、高校生にとって上記(『ITパスポート』など)の資格試験本は時間的に無駄です。

理科系の大学生の学習ですら、上記のような資格試験本は、後回しです。どうしても高校生が『ITパスポート』などに深入りしたければ止めませんが、それに高卒就職する人もいるので大学生を手本にする必要もないですが、自己責任で判断してください。

ほか 編集

  • 参考書が入手できない地域の場合

検定教科書と『情報I』参考書を除けば、「基本情報技術者試験」対策本以外に、他に高校生向けの情報科学的な教育内容の書籍が書店に売ってないのが現状です。もしどうしても情報科の検定教科書および参考書が購入できない場合には、「基本情報技術者試験」の参考書を買って読むのが次善の策でしょう。


  • プログラミング本ではコンピュータの仕組みが無いので単独では学習に不適

たとえ「C言語入門」のようなプログラミング入門書が書店に置いてあっても、それらの書籍はプログラミング言語の知識しか解説しておらず、コンピュータの仕組みはあまり説明してない、ネットワークの仕組みも説明していない、などの欠点があります。なので、教科書・参考書も勉強すべきです。

もっとも、余裕があればプログラミングの練習もしても構いません。しかし、「コンピュータの仕組みを説明していない」などの抜けがある事は自覚して、参考書など他の書籍で知識をおぎないましょう。


  • 操作マニュアル本ではITの仕組みが分からない

ほか、書店によっては、Windowsの使い方の書籍とか、そういう特定の商品の使い方の操作マニュアル的な入門書しか置いてない場合もありえます。単なる操作マニュアル本ではせっかく読んでもたいしてコンピュータの理解が身につかないです。

計算もする 編集

二進数の計算など、この単元には、計算する部分もあります。

なので、検定教科書を見ながらでいいので、実際に紙に書くなどして計算してみましょう。

おそらく入試などでも、計算問題なども問われると思います。

ただし、統計などは膨大なデータを扱うため、手計算は難しいので、そういう単元では数値計算ではコンピュータを使っても仕方ないものです。(数学でも同様でしょう)

ただし、式変形などの計算練習は、手で行いましょう。


情報IとIIの境界は不明瞭 編集

情報科目はあまり、情報Iと情報IIの境界が明確ではありません。たとえば、ある教科書会社の教科書では情報IIに書かれていた内容が、ほかの教科書では情報Iの教科書に書かれているような場合もあります。

この事は、新共通試験などの受験対策としての学習方法としては、参考書を中心に学習するのが安全でしょう。

情報Iの教科書会社は6社もあるので[3]、参考書を使わずに教科書1冊だけを使うのは入試対策としては危険です。

自分の使った情報Iの会社の教科書では習っていない知識でも、他社の情報Iでは教えられている可能性があり、そのため新共通試験に出題される可能性があるからです。

大学入試センターや各大学は、あなたの高校で使っているたった1社の教科書には合わせてくれません。大学などにとって各社の検定教科書は、6分の1の重みでしかありません。(たとえアナタの人生では高校の授業は1分の1の重みのかけがえのない体験でも、大学側にとっては6分の1以下です。)

もっとも、「境界が不明瞭」とはいっても、さすがに高校3年で習うような高度な数学を使うような話題は、情報IIに回されていますが。

高校は有料ソフト環境が充実 編集

学校にも寄りますが、ふつうの高校で導入されているソフトは、けっこう高度です。

たとえば、Microsoft 365 とか、個人で購入しようとすると、買えなくはないのですが、しかし一人でクラウド利用するのは、うまい使い道がなかなか思いつきません。なお、都立校全校が Microsoft 365 for Education を導入しています[4]

ほか、まだ東京限定の話題ですが、東京の全公立高校に、フォトショップなどAdobeのクリエイティブソフトが導入されています[5]


ICT環境には地域差があるので、共通試験では前提知識にはならないですが、しかし個人で買うと高額になりそうなソフトが学校では使えますので、なるべく在学中に操作方法などを練習しておきましょう。


学割(がくわり)とか、一括購入などによる値引きなどによって、学校はソフトウェアを格安で購入しているのです。学生は、この機会を利用しましょう。

無料ソフトはあとからでも使えます。それよりも、高校在学中は、校内の有料ソフトを使いましょう。なお、高校に限らず、大学でも同様です。

Googleアプリは一般向けには「無料」と思われていますが、じつは Google アプリにも有料アプリがあります。 Google Classroom とか Google Workspace とか組織運営系のアプリは有料のものもあります。仮に無料プランを使うにしても、卒業後に個人でこれらを経験するのは難しいので、なるべく学生のうちに積極的に校内のICT活動などには協力しましょう。

もっとも、ソフトウェアは卒業後もお金を払えば買えるので、それよりも部活動・委員会活動などのような高校時代でないと活動の難しい活動のほうを優先すべきですが。とはいえ、ソフト代もそこそこ高いので、時間に余裕のある範囲で、校内のICt活動に協力するのが良いでしょう。


こういう事が分かってくると、プログラミングの勉強でも、Scratch(スクラッチ)とか JavaScript は無料ソフトで実習できるので、勉強はやや後回しで良い、というのも分かります。それよりも有料ソフトの Excelが必要な VBA のほうを優先して勉強したほうが、資金的にも効率が良いです。もっとも、人工知能ブームで Python のほうを習う高校も多いかもしれませんが。

旧科目の検定教科書の内容 編集

『社会と情報』の内容 編集

『社会と情報』では、以下の話題を説明していました。

  • 文字の符号化のJISコードやASCII[6]、Unicodeなどの紹介
  • 音のサンプリングを例に標本化定理を紹介
  • 情報量のビットやバイトの概念
  • 2進数や16進数
  • 色のRGBとCMYKについて。
  • 画像のベクター画像ラスター画像のちがい
  • データの圧縮と解凍
  • エラー訂正のしくみ。
  • 暗号化の原理をシーザー暗号を例にして説明。鍵暗号についても紹介。計算量的安全性を持つ暗号などについては紹介せず。
  • 電子署名やファイアウォール、SSLなど、セキュリティに関する技術や用語など。
  • 著作権法など。
  • フィッシング詐欺などサイバー犯罪の手口。

  • 表計算ソフトの使用法について、巻末などで紹介。

『情報の科学』の内容 編集

『情報の科学』では、さらに以下の話題を説明していました。

  • フローチャートの概念
  • CPUのレジスタにおけるREADやWRITEやADDなどの処理[7]
  • POPやSMTPなどのメールサーバ概論
  • IPアドレス、グローバルIPアドレスやプライベートIPアドレスについて
  • 公開鍵暗号や共通鍵暗号の初歩(計算量的安全性を持つ暗号概論)。さらに発展項目としてRSA暗号の原理が紹介されています。
  • 検索における「AND検索」や「OR検索」をベン図で説明しています[8]
  • リレーショナルデータベースを、「キー」や「レコード」や「ソート」などの用語
  • さらにリレーショナルデータベースの「結合」「射影」などの処理の用語も紹介。
  • 表計算ソフトの、加法、減法や総和など、の基本的な演算のしかた。
  • 表計算ソフトのマクロ
  • 統計数学の「分散」「標準偏差」などを、表計算ソフトを活用して計算する方法。
  • 統計の結果を、円グラフや棒グラフなどで、表計算ソフトを活用して表示する方法。
  • JavaScriptなどスクリプト言語を例に、アルゴリズムやフローチャートなどの説明。
  • プログラミングの、if文やwhile文やfor文などの制御構造を、JavaScriptやエクセルマクロなどのコードを通して実例を紹介。
  • プログラミングの、「配列」機能。
  • HTMLについて。マークアップ言語。
  • WIKI(ウィキ)システム。

一部の教科書

雑記 編集

「PDCA法」とか、あまりコンピュータと関係のない話題も、これら情報科の科目の教科書では、扱われています。技術系の試験などに出てくる用語なので、そのような用語も覚えておきましょう。

コンビニエンスストアの「POS」システムなどの社会科でも習う用語も情報科では習います。

習わないこと 編集

C言語やBASICなどプログラミングについては普通科の旧「情報」科(『社会と情報』『情報の科学』)では習っていません。ただ「C言語」という名称だけなら紹介している検定教科書がありますし組み込みソフトなどでC言語が使われる用途もある事も検定教科書で紹介されています。

また、BASICで書かれた簡単なプログラム文は中学校の技術科で紹介されています。


ただし、情報I・II時代の新・情報の検定教科書は、pythonまたはJavaScriptまたはVBAなどに対応しています。

しかし、使用言語が統一されていないなどの問題もあり、共通試験ではそれら特定の言語の知識は問われません。共通試験では、実在しない架空のプログラミング言語「DNCL」が使われます。一説には、「大学入試センター言語」 Daigaku Nyuusi Center Gengo の略だろうとも言われています。


プログラミング言語を勉強したい場合 編集

なにを学ぶ? 編集

高校レベルの初心者にとって、プログラミング言語の文法を完全に習得するのは難しいことです。なぜなら、高校生活では他にも5つの教科に時間を割かなければならず、熟練したプログラミングスキルを身につけるためには時間が足りないからです。現代のプログラミング言語は非常に多機能であり、初学者にとっては敷居が高いことがあります。

同様に、Officeソフトウェア(ワープロソフトや表計算ソフトなど)の高度な使用方法に深入りすることも控えた方が良いでしょう。これらのソフトウェアは基本的な使い方は比較的簡単ですが、高度な機能や操作になると中学生や高校生には難しいこともあります。高校生活は多くの教科に対処しなければならないため、時間が制約されます。

ワープロソフトや表計算ソフトなどは、最低限必要なスキルを高校の情報科目の実習や教育の一環として自然に学べ、しかも高校の教育で深化させることができます。例えば、Excelのグラフを作成するために使用される最小二乗法など、高度な数学や情報科学のコンセプトを、高校の情報科のカリキュラムで学びます。

そのため、最初に高校の検定教科書を学び、基本的なスキルを習得することをお勧めします。高校のカリキュラムは、必要な知識やスキルを提供してくれるでしょう。

最初に学ぶプログラミング言語 編集

プログラミングで、特にやりたいことが決まっていなく、とりあえずプログラミングっぽいことをしてみたいというような初心者が学ぶプログラミング言語は、文法が簡単で、解説が豊富で、なおかつ汎用性があるものがいいだろう。

そのようなものとして、Python が挙げられる。Pythonはメジャーなプログラミング言語で英語はもちろん日本語での解説も充実している。Pythonには豊富なライブライリーがあり、数値計算、機械学習、統計、ゲーム、サーバーなど幅広い範囲のプログラミングが出来る。

ほかに初心者向きの言語としては JavaScipt などがある。

高校生は独学で JavaScript を学ぶことは適切か? 編集

初心者むけとして有名な言語に、「JavaScript」(ジャバ スクリプト)というプログラミング言語があります。

JavaScriptは、ウェブブラウザで動作するので、最も広く普及しているプログラミング言語の一つといえます。

誕生当初 Netscape Navigator に実装された JavaScript は、まさに初心者むけの言語でした。その後、JavaScriptの普及とともにブラウザベンダーは競うように新機能を追加し、機能が増えるのだけなら良いのですが、ブラウザによって機能があったりなかったり、微妙な差異があり、プログラマはその違いに苦慮する状況が生まれました。

また、ウェブブラウザ上のJavaScriptを学ぶには、HTMLCSSをある程度は習得しておく必要があります。HTMLもかつては初心者向けの技術でしたが、しかし2020年代の現代ではHTMLが高度化しており、もはや多くの高校生にとってHTMLは身近な学習対象ではないので、ここにも一つJavaScriptを学ぶにあたってのハードルがあります。他方、JavaScriptをウェブコンテンツに組み込んでダイナミックなウェブサイトを作ることは、大きのモチベーションの1つになりえます。

高校生が、もし学校でJavaScriptを習えるのなら、その機会を利用したほうが良いでしょう(多くの検定教科書は、Python や VBA とともに JavaScript を紹介しています)。

なお、JavaScript と Java(ジャバ) とは、異なるプログラミング言語です。混同しないように注意しましょう。Javaの複雑な文法と膨大なライブラリクラスは初心者むきではありません。

入門書の探し方 編集

書店では、プログラミング言語の初心者向けの書籍 と 専門家向けの書籍 が同じ棚にあることが珍しくないので気をつけましょう。残念ながらこれは図書館にも言えます。

「比喩が分かりやすい本」ではなく、「一通り文法事項が順序立てて説明してある本」と評されている書籍の購入を勧めます(※要出典)。「具体例な開発例が分かりやすい本」ではなく「一通り文法事項が順序立てて説明してある本」を買いましょう(※要出典)。

入門書の読み方 編集

あるプログラミング言語の入門書一冊で、そのプログラミング言語のすべてを理解しきることは望むべきでありません。 プログラムの勉強ではPCを用意しプログラム開発環境を用意し、プログラムを入力し動作させるのがよいでしょう。

paiza.IOやWandboxのようなオンライン開発実行環境も機能が年々向上しており、オンライン開発実行環境とタブレットやスマホの組み合わせでプログラミング環境を作ることが可能です。

英語の勉強 編集

プログラミングの学習に英語は欠かせないと言ってもいいだろう。なぜなら、プログラムの語句は英語の単語から来ているものがほとんどだし、エラーが英語で書かれており、ライブラリのチュートリアルなどは有名なものを除けば、ほとんどが英語で書かれていて、日本語訳や日本語での説明が不足している場合が多いからである。そのため、英文を尻込みせずに読める程度の英語力は身につけている方が望ましい。

※ 範囲外: 初心者のためのプログラミングの練習方法 編集

※ 本節の内容は高校の範囲を越えてるので練習しなくて良いです。高校卒業後の進学後などに参考になればさいわいです。

まず、上述したように学習環境が必要です。 どうやって実際にプログラミング言語を勉強するかというと、プログラミング言語の入門書を最初のコードが出て来るまで読み進めて実際に入力しプログラムを実行するという流れになります。 この最初のコードを入力するときは、とりあえず何も考えずに入力してみてください。そして書籍の指示にしたがった方法でプログラムの書かれたファイルを実行してみてください。 たとえば、ある入門書の最初のコードで(※ 下記のコードの例は「C++」言語の場合)、

#include <iostream>
using namespace std;

int main()
{
    cout << "ようこそ!" << endl;
    cout << "プログラミングの世界へ!"  << endl;
    return 0;
}

とあれば、それをそのまま入力して、コンパイル、リンクし、実行形式を得て、実行形式を実行してみます。

まず、エラーがなく正常にリンクされるまでコードを修正します。

これを実行すると、

ようこそ!
プログラミングの世界へ!

と2行で表示されます。

しかし、ほとんどの初心者は何らかの入力ミスをしている事が多く、ファイルをコンパイルしてもエラーが起きてしまい、実行形式を得ることができないか実行できても期待どおりに動かす事ができません。

エラーがあれば、書籍に書かれたコードをよく見ながらコードを修正します。よくある間違いとしては、半角と全角の混合やタイプミスです。プログラムの英数字を全角で書いてしまうとエラーが出てしまうので注意しましょう。特に、全角スペースと半角スペースは見分けがつきづらいので厄介です。

もし、エラーせずにプログラムをコンパイル、リンク、実行できたのなら、すでにアナタは、入力したそのコードの仕組みをだいたい分かっていますので、本wikibooksで説明する次の作業に移ります。

「次の作業」とは、もし入力したコードが、エラーもなくプログラムが正常に実行されれば、 今度は、さきひど入力したコードをコピーして別のファイルをつくり、数分ほど、さきほど入力したコード中にある「ようこそ!」などの文章などを、自分で思うままに書き換えてみてください。 (書き換え前の書籍どおりのコードと、書き換え後の自分流のコードの2種類を、パソコンに保管しておく。) 上記のコードの場合なら、たとえば「<< endl」を省略してみたら、どうなるかとかを、自分流コードで試してみるのです。なお「<< endl」とは「改行する」という意味です。 じっさい、たとえばあるプログラミング言語で、さきほどのコードから「<< endl」を除いてみたコード

(コード)

#include <iostream>
using namespace std;

int main()
{
    cout << "ようこそ!";
    cout << "プログラミングの世界へ!";
    return 0
}

を実行すると

(実行結果)

ようこそ!プログラミングの世界へ!

というふうに、改行されずに、1行でつづけて表示されるはずです。

あるいは、「ようこそ」を「おはよう」に書き換えてみて、

#include <iostream>
using namespace std;

int main()
{
    cout << "おはよう!";
    cout << "プログラミングの世界へ!";
    return 0
}

を実行すると

(実行結果)

おはよう!プログラミングの世界へ!

というふうに、表示が確認することを、たしかめると、良いでしょう。


いっぽう、コードの理解できない部分は、書き換える必要がありません。 たとえば

#include <iostream>
using namespace std;

int main()

が何なのかを理解できないだろうし、ここは、まだ書き換えなくても良いのです。

このように、

  1. まずは書籍のコードを書き写して実行してみたあとに、正常に実行できるようになったら、
  2. 今度は、自分のコードを理解できる範囲で書き換えてみて、自分の理解を確かめてみてください。

なぜ、わざわざ自分なりに書き換えてみてまで、自分の理解を確かめる必要があるのかというと、その理由は、将来、プログラミングの入力エラーを自分が起こしたときに原因を特定できるようにするために、今のうちに色々と試してみて、どこを書き換えると結果がどう変わるかを確認しておく必要があるからです。

また、大学などに進学してプログラミング科目を習う場合の定期テストでも、定期テストでは授業であつかったコードがそのまま出題される事はないので、自分でコードを書き換えてみて確かめるようにしないと、そのプログラミング科目の定期テストの問題が解けずに不合格になってしまう可能性もあります。

なお、大学の場合、その授業の毎時間のさいごに、その授業のコードを提出する場合があるので、授業用のコードは書き換えずに、授業用コードを自分流コードにコピーペーストして、その自分流コードを書き換えてみて試行錯誤しましょう。

プログラミングの学習では、正解のコードを、覚えることは、けっして、学習の目的ではありません。そもそもコードは、無限のパターンがあるので、覚えようと思っても不可能です。

プログラミングの学習は、もしもミスのあるコードを書いてしまった場合に、そのミスを探し当てられるようになるために試行錯誤することが、学習の目的なのです。

さて、書籍での学習で、数分ほどの書き換えによるコードの試行錯誤が終わったら、書籍をそのまま次のページへと読み進んでください。 そして、また新しいコードが出てきたら、同様に入力してプログラムを実行してみます。なお、新しいコードの入力の際、たいていは、前のページで入力した前回のコードに近いコード前回のコードをコピーペーストして、それをもとに、いまのページの新コードへと書き換えても、かまいません。

いちいち、まったくゼロから新コードを書き始める必要は、ありません。 けっして「コピーペーストをして入力作業を減らしても、技術が身に付くのだろうか?」と心配する必要はありません。なぜなら、たいていの初心者は、たとえコピーペーストをして作業を減らした場合ですら、入力ミスをしてしまうことが多く、なにがしかのエラーを起こしてしまうからです。

裏をかえせば、コピーペーストをして入力作業を減らしてもエラーを起こさずに正常にプログラムを実行できるようなコードをすぐに書けるなら、すでにアナタは、そのページの新コードが、だいたい分かっているのです。 ともかく、コードを実行してみてエラーが出ても、エラーがなくなるまで直しましょう。もし、エラーがなく正常にプログラムが実行されたら、また自分流に書き換えを数分ほどしてみて、試行錯誤します。 それが終わったら、次のページへと読み進めます。

高校生の範囲なら、このような練習方法でも、充分です。 もし高校でJavaScriptや(プログラミング言語ではないが)HTMLなどを習う場合の練習方法も、だいたい、このような感じで練習すれば、高校生なら充分でしょう。

脚註 編集

  1. ^ 今後の学習指導要領改訂スケジュール平成28年8月26日 中央教育審議会 教育課程部会 資料3
  2. ^ 検定教科書の購入方法については、記事『小学校・中学校・高等学校の学習/検定教科書の購入方法』を参考のこと。
  3. ^ 『高等学校 情報|教科別発行教科書の紹介|教科書|一般社団法人教科書協会』 2024年02月28日に確認
  4. ^ 『東京都教育委員会が2022年4月から都立全校に Adobe Creative Cloud Expressを導入』2022年3月24日 14時00分
  5. ^ 『東京都教育委員会が2022年4月から都立全校に Adobe Creative Cloud Expressを導入』2022年3月24日 14時00分
  6. ^ ASCIIコードと表記されることがあるが、ASCIIはAmerican Standard Code for Information Interchangeのアクロニムのなので「ASCIIコード」では「情報交換用米国標準コードコード」となってしまう。
  7. ^ アセンブリ言語を扱っているが、しかし「アセンブリ」の用語は教科書にはみられない。
  8. ^ 「ベン図」という用語は、教科書にはみられない。
  9. ^ 9.0 9.1 日本文教出版

関連項目 編集