情報技術科
【授業紹介】グループプログラミングに挑戦 実習(2年・必修)
ついにこの時がやってきました。
2年生がグループプログラミング実習に取り組んでいます。
授業でプログラミングを学ぶ場合、自分一人でコンピュータに向かい、コードを書いたり問題を解いたりするのが基本です。
しかし、実社会でプログラム開発を行う場合、複数人で協働して一つのプロジェクトを進めていくことがほとんどです。
そこで、本校の情報技術科では実社会でも通用するプログラマを目指して、1グループ4~5名の生徒が協力しながら、約3000~5000行にも及ぶ大規模なプログラム(実社会で動くプログラムに比べればまだまだ小さな規模ですが、高校生にとっては未知の世界)の制作に挑むグループプログラミング実習を実施しています。
プログラミングに馴染みのない方からすると、一人でプログラミングを行うことと、複数人でプログラミングを行うことの違いにいまいちピンと来ないかもしれませんが、この2つは全くといっていいほどに別物です。
イメージとしては、一つの小説を一人で書くか、複数人で書くかぐらいの違いがあります。複数人で書けば、その分負担は軽減されますが、登場人物の設定や表現、ストーリーなどにズレが生じ、最悪の場合は物語として成立しなくなってしまいます。
プログラミングも同じで、複数人で制作を行う場合、データの入れ物である変数や配列、制御構造に対して共通理解をした上でプログラミングを行っていかなければ、エラーやバグだらけのプログラムになってしまいます。さらに、プログラムは後から仕様が追加されて書き直しが必要になったり、機能を追加しなければならなくなったりすることがほとんどなので、その点も考慮して美しく、堅牢なコードを書いていく必要があります。
ただ、この「実社会では複数人で協働してプログラミングを行う」という前提をしっかりと踏まえた上で、本校のプログラミングの授業は計画されています。
与えられた課題に対していきなりプログラムを作り始めるのではなく、要求を徐々に詳細化・具体化して整理してから開発を行う段階的詳細化の考え方。
複雑なシステムを「モジュール(部品)」の集合体として捉えて開発を行い、変更があった場合に全体を修正するのではなく必要最小限の部分だけ修正をすれば済むように開発を進めるモジュール化の考え方。
これらについては既習の内容です。この実習では、これまでに学んだ知識と日々の課題で培った経験を総動員して、プログラムを制作していきます。
今回 、完成を目指すのは簡易的なテキストエディタです。特定のコマンドを入力したときに、与えられた文章に対して文字の追加や行の削除等を行うソフトウェアの実装を行います。
開発はGitを用いてしっかりとバージョン管理を行い、実装を担当する範囲やスケジュールも自分たちで調整します。そして、約1か月に及ぶ制作期間を経た後、制作したプログラムの発表会を行う予定です。本日はGitの説明と課題の説明、グループ分けを行いました。
これまで学んできた内容がどれだけ活かせるか、情報技術者として自分がどれだけ成長できているか、ここが試金石になります。
【SSH】静岡大学主催 探究・情報コンテストにてポスター発表を行いました
静岡大学浜松キャンパスで行われた「高校生探究・情報コンテスト」に海外研修のメンバーが参加しました。
修学旅行の出発前日という日程でしたが、参加メンバーにとっては非常に実りのある1日となりました。
公式サイトはこちら←
参加者は高校生のみですが、静岡大学浜松キャンパスの「テクノフェスタ」が開催される中での実施となりましたので、一般の方をはじめ様々な方に発表を聞いていただくことができました。
発表はポスター形式で行われ、自分たちの研究を見つめ直すきっかけとなったことはもちろんのこと、他校の生徒との交流もすることができ、良い刺激となりました。
発表を聞いた方のコメントとしては、
・訪問先であるエストニアのIT事情がここまで先進的だとは知らなかった
・データのみならず、アンケートやインタビューなどの裏付けがしっかりとできている
といったものを頂きました。
残念ながら賞を取ることはできませんでした(奨励賞まであと一歩でした)が、今回の発表を糧に、これから2月の渡航に向けて不足している部分を詰めていきます。
今年は計画段階での発表となりましたが、来年度は研修実施後の発表を行い、リベンジを果たしたいと思います。
【SSH】中学生向けプログラミング教室
海外研修に参加するメンバーによる中学生向けプログラミング教室が、三日間に渡り開催されました。
今年の海外研修はプログラミング教育をテーマに研究活動を進めています。
今回は渡航前の事前活動ということで小規模で実施をし、渡航後に学んだことを活かしてより大きな規模でプログラミング教室を実施をする予定です。
1日目:フローチャートなどプログラミングの基礎
プログラミングの基礎となるフローチャートやコードの書き方について学習してもらいました。
2日目:繰り返しや配列
少し応用的な内容に取り組んでもらいました。短い時間の中で配列について理解することは、教える側にとっても、教わる側にとっても難しかったようです。
3日目:演習「信号機の製作」
ハードウェア(マイコン) との連携を行い、3色のLEDの点灯制御を行い信号機を再現しました。この小さな基板がコンピュータであることを聞いたときに非常に驚いている様子で、思い通りにLEDを制御できたときには喜びの声があがっていました。
授業計画や授業で使うプリント等、全てを一から生徒達が準備したこともあり、予定していた内容を全て消化することはできませんでしたが、それも含めて良い経験になりました。
天候が優れない中での開催にも関わらずご参加頂きました天竜中の皆さん、ありがとうございました。
この後海外研修に参加するメンバーは、夏休み後半から英会話の指導を受けながら、11月に参加する研究発表会への準備を進めていきます。
学校の代表として参加する自覚をもち、テストや行事を言い訳にすることなく、少しずつ積み重ねていきます。
【SSH】海外研修参加メンバーが静岡大学の野口先生よりご指導頂きました
SSH(スーパー・サイエンス・ハイスクール)の取組の一環として海外研修に参加する情報技術科2年のメンバーが、静岡大学・情報学部の野口准教授より研究内容についてのご指導を頂きました。
研究テーマはプログラミング教育で、世界最高峰のIT先進国に渡航する予定で計画を立てています。
現在、8月に実施する中学生向けのプログラミング教室で使用する教材の開発を進めており、現状の成果と課題を野口先生に発表しました。
野口先生には、海外研修への参加グループを決める選考会の時にもご指導頂いており、生徒達が大学の先生の指摘の鋭さや発想の豊かさに直接触れることができ非常に良い経験となっていると感じます。
お忙しい中のご指導、誠にありがとうございました。
自分たちの海外研修のために多くの方々が尽力して頂いていることに感謝し、それに報いることができるよう、より一層研究活動に勤しんでいきます。
基本情報技術者試験(FE) 2名合格!
IPA主催の国家資格・基本情報技術者試験にEi科から2名の合格者が出ました。
(公式ページ:https://www.ipa.go.jp/shiken/kubun/fe.html)
内田 侑希(情報技術科2年・情報処理部)
佐々木晴都(情報技術科2年・知的制御研究部)
基本情報技術者試験は「ITエンジニアの登竜門」とも呼ばれる試験で、情報に関する分野から幅広く出題がされます。
受験者比率はおよそ学生3割・社会人7割、合格率は全体で平均して25%前後。
今回は受験形式が変更された初月ということで合格率が高かったようですが、それを差し引いても高校生にとっては生易しいものではありません。
授業や部活動の合間を縫って、1年次の春休み前から着々と準備を進めた努力が実を結ぶ形となりました。
更に上のランクの試験である応用情報技術者試験(AP)も十分射程圏内なので、是非今後も頑張って欲しいと思います。