ネットワーク技術Ⅰ

科目基礎情報

学校 北九州工業高等専門学校 開講年度 令和04年度 (2022年度)
授業科目 ネットワーク技術Ⅰ
科目番号 0130 科目区分 専門 / 必修
授業形態 単位の種別と単位数 履修単位: 1
開設学科 生産デザイン工学科(情報システムコース) 対象学年 4
開設期 前期 週時間数 2
教科書/教材 なし(授業資料は配布)
担当教員 福田 龍樹

到達目標

・情報通信ネットワークを利用したアプリケーションの作成方法を説明できる。
・TCPとUDPの違いを説明できる。
・マルチスレッドとマルチプロセスの違いを理解した上で、マルチスレッドなプログラムを作成することができる。

ルーブリック

理想的な到達レベルの目安標準的な到達レベルの目安未到達レベルの目安
TCP通信プログラムの実装TCPを用いたサーバ・クライアントの両プログラムを設計・実装することができるTCPを用いたサーバまたはクライアントプログラムを設計・実装することができる見本となるプログラムを記述して実行することができない
TCP/UDPの違いTCPとUDPの違いを理解し、それぞれの特性に応じた使い分けについて説明することができるTCPとUDPの違いを説明することができるTCPとUDPが違うことを理解していない
マルチスレッドプログラミングマルチスレッドを用いたプログラムを実装することができるマルチスレッドプログラムの動作について説明することができるシングルスレッドのプログラムしか作成できない

学科の到達目標項目との関係

学習・教育到達度目標 B① 専門分野における工学の基礎を理解できる。
JABEE SB① 共通基礎知識を用いて、専攻分野における設計・製作・評価・改良など生産に関わる専門工学の基礎を理解できる。
JABEE SC① 専門工学の実践に必要な知識を深め、実験や実習を通じて、問題解決の経験を積む。

教育方法等

概要:
実用的なソフトウェアの仕様を考えたとき、他の端末との通信が発生することが多い。本授業では、TCP/IP通信プログラムの実装を通して情報通信プログラムの作成方法を身につけるために、基本的なプログラムの作成から始めて、最終的には仕様をもとにしたプログラムの実装までをおこなう。なお、本授業で用いるプログラミング言語として、さまざまなモジュールが提供されており、手軽に高度な処理を実装できるプログラミング言語として近年注目されているPythonを用いる。受講者は自ら積極的にコーディングをすることで技術を身につけていってほしい。
授業の進め方・方法:
授業でははじめてPython言語を使う学生も多いと思われるため、Pythonの言語の仕様を簡単に確認してから通信のプログラムに入る。はじめは全員でプログラムのコードを一つずつ確認しながらコーディング作業を行い、後半では実際に提示された仕様に応じたプログラムの実装をする。
注意点:

授業の属性・履修上の区分

アクティブラーニング
ICT 利用
遠隔授業対応
実務経験のある教員による授業

授業計画

授業内容 週ごとの到達目標
前期
1stQ
1週 Python入門(1) Python言語を用いてインタラクティブモードでのプログラミングができる。
2週 Python入門(2) テキストファイルにPython言語でソースコードを書いて、実行することができる。
3週 プロトコル MACアドレスとIPアドレスの役割を理解する。
4週 IPアドレス IPアドレスの構成を理解する。
5週 TCP/IPサーバ ソケット通信を用いてTCP/IPでの通信をする簡易サーバプログラムを作ることができる。
6週 TCP/IPクライアント ソケット通信を用いてTCP/IPでの通信をする簡易クライアントプログラムを作ることができる。
7週 バッファ ソケット通信での送受信時にはバッファを経由していることを理解する。
8週 まとめ 前半の内容を復習することでTCP通信プログラムの概要をあらためて理解する
2ndQ
9週 マルチプロセス・マルチスレッド マルチプロセスやマルチスレッドの違いを理解し、実装することができる。
10週 サーバのマルチスレッド化 TCP/IPのサーバプログラムをマルチスレッドで作成することができる。
11週 プログラムのモジュール化 Pythonでの処理を関数として実装し、自作モジュールとしてロードすることができる。
12週 UDP/IPによる通信 UDP/IPによるソケット通信プログラムを作成し、TCP/IPを利用した場合との違いを理解する。
13週 簡易ゲームの制作(1:構想) TCP/IPを用いてメッセージのやり取りを行うことで、簡易的なゲームプログラムを作ることができる(構想)。
14週 簡易ゲームの制作(2:設計) TCP/IPを用いてメッセージのやり取りを行うことで、簡易的なゲームプログラムを作ることができる(設計)。
15週 簡易ゲームの制作(3:実装) TCP/IPを用いてメッセージのやり取りを行うことで、簡易的なゲームプログラムを作ることができる(実装)。
16週

モデルコアカリキュラムの学習内容と到達目標

分類分野学習内容学習内容の到達目標到達レベル授業週
専門的能力分野別の専門工学情報系分野情報通信ネットワーク情報通信ネットワークを利用したアプリケーションの作成方法を説明できる。4前5,前6

評価割合

試験小テスト等演習・レポート発表相互評価その他合計
総合評価割合01000000100
基礎的能力0000000
専門的能力01000000100
分野横断的能力0000000