21124102

コンピュータ工学COM501a  COM501b  COM501e 

3年前学期月2, 月3

プログラミング言語実験

Programming Language Experiment

柏原・織田・庄野・若月

履修の前提条件
  • 2年次終了審査(2年次終了時) に合格していること

単位区分

単位数: 2単位
必修
課程・類・プログラム
種別
先端工学基礎課程

関連Webサイト

主題および達成目標

手続き型のみならず、パラダイムが異なる種々のプログラミング言語を用いて問題を解決することを通して、問題に対する異なった定式化の法や、各パラダイムにおけるプログラミングの特徴を学習し、多面的に問題を解決する能力の育成を目標とする。

前もって履修しておくべき科目

基礎プログラミングおよび演習、メディア情報学プログラミング演習(メディア情報学コースの場合)

前もって履修しておくことが望ましい科目

アルゴリズム論第一、情報領域演習第三

教科書等

各担当教員が指定する。

授業内容とその進め方

プログラミング言語として、手続き型のほかに、オブジェクト指向型言語、スクリプト言語、イベント駆動型言語、関数型言語を取り上げ、オムニバス形式で授業を進める。各プログラミング言語とも、基礎から最終的には実問題を解決する知識を習得できるような構成で演習を進める。

第1回:ガイダンス(担当:全教員)、
C言語(1) 動的データ構造と再帰処理(線形リスト)(担当:若月)
第2回:C言語(2) 動的データ構造と再帰処理(スタック、二分木)(担当:若月)
第3回:C言語(3) コンピュータ大貧民(大貧民の実行とペア出し機能の実装)(担当:若月)
第4回:C言語(4) コンピュータ大貧民(階段出し機能とより高度な機能の実装)(担当:若月)
第5回:Javascript(1) イベント駆動型プログラミングとJavascriptの基本(担当:柏原)
第6回:Javascript(2) オブジェクトの活用(担当:柏原)
第7回:Javascript(3) Webブラウザにおけるゲームの作成(担当:柏原)
第8回:Javascript(4) シミュレータ作成(担当:柏原)、
Python(1) Script 言語としての Python(担当:庄野)
第9回:Python(2) Object 志向言語としての Python(担当:庄野)
第10回:Python(3) 外部ライブラリを使ってみる. numpyとscipy(担当:庄野)
第11回:Python(4) アプリケーションを作成してみる(担当:庄野)
第12回:Scheme(1) 関数型言語の基礎と高階関数(担当:織田)
第13回:Scheme(2) S式によるデータ表現と写像による演算(担当:織田)
第14回:Scheme(3) プログラムとしてのデータの評価(担当:織田)
第15回:Scheme(4) 遅延評価(担当:織田)

授業時間外の学習

1時間の授業・演習に予習・復習の合計が2時間程度

成績評価方法および評価基準

成績評価方法はレポートによる。評価基準は課題に対して必要最低限の要求仕様を満たせたプログラムを合格とする。特に、可読性、効率性などの完成度により評価を高くする。また、複数の選択課題を用意しておき、難易度の高い課題を解決した場合はより評価を高くする。なお、レポートの提出方法については、担当教員の指示に従うこと。

オフィスアワー・授業相談

相談は演習時間内の質問に応じることで対応する。

学生へのメッセージ

本演習は高度なプログラミング作成に興味を持ち、演習を通じて計算機言語の特徴を理解したい学生諸君を対象にしているが、ソフトウェア作成や最新の話題に興味を持つ学生諸君にも有意義な演習となろう。

その

なし

キーワード

イベント駆動型言語
オブジェクト指向
計算機言語
関数型言語
最終変更日時: 2025/03/11 2:32:56