第69回:ネットワークプログラミング(その1)
以前にも一度説明したが、SFCのプログラミングカリキュラムは「段階的」に組まれている。入学者はまず認定試験を受け、合格できなかった学生(ほぼ全員不合格になる)は「情報基礎」という授業を受け、認定試験の合格を目指す。
晴れて合格すると、そこからは各自の興味に合った授業を履修することができる。しかし情報技術関連の科目には、前提として「コンピューター基礎とプログラミング」「論理思考とプログラミング」という二種類の科目の履修を推奨していることが多い。そのため、プログラミングを志す学生は認定試験合格後、この2つのどちらかをまず履修することになる。私の場合は「コンピューター基礎とプログラミング」を履修し、C言語についての基礎的なスキルを身につけた。
そうして入学から3学期目にようやく辿り着いたのが、この「ネットワークプログラミング」である。その名の通り、ネットワークを介したソフトウェアの基本的な構造を理解し、ネットワークを用いたソフトウェアが作成できるようにする授業である。この授業ではC言語を用いるため、やはり前提科目として「コンピューター基礎とプログラミング」の授業が推奨されている。
「Socket Interfaceを用いて、IPv6アドレスを利用して…」などと言っても、普通の高校生の皆さんにとっては意味不明だと思うので、ここでは簡単にシラバスから授業の内容を紹介する。
『インターネットは、デジタル情報なら何でも交換できる情報インフラストラクチャであり、新しいアプリケーションを自由に開発し、使うことが可能な環境であ る。これは既存の与えられたアプリケーション、例えばWebや映像配信だけがインターネットのアプリケ-ションではなく、新しいアプリケーションをどんど ん自分自身で作っていくことが可能な開かれたインフラである。本講義は大きく以下の4部に分かれる。第一部では、インターネットを用いた通信の仕組みを理解しアプリケーション開発への導入を行う。第二部では、C言語によるプログラミングの基礎を確認する。第三部では、ネットワークプログラミングに必要なテクニックを学ぶ。第四部では、実践としてミニプロジェクトを行いアプリケーションの開発を行う。』 (シラバスより引用)
次回は、実際に私が最終課題として作ったアプリケーションを紹介しよう。