科目の内容

プログラミング入門・同演習 1年前期 必修科目
Java言語の簡単なプログラミングを学びます。逐次実行、判定、繰り返し、 メソッドなどの制御構造、基本データ型、配列などのデータ構造、 基本的な入出力について学び、簡単な問題(数十行のプログラムで解ける程度の問題) のプログラムを自分で書けるようになることを目指します。 本講義ではJava言語の手続き的な側面だけを扱い、オブジェクト指向的な側面は 「オブジェクト指向I」以降の講義で扱います。


オブジェクト指向I・同演習 1年後期 必修科目
クラス、インスタンス、インタフェース、継承などオブジェクト指向の プログラミング言語に現れるいろいろな概念や、モジュール化、カプセル化、 仕様と実装の分離などプログラムを設計する上での基本的な考え方を学びます。 また、コレクションなどの基本的なクラスライブラリの使い方もマスターします。


オブジェクト指向II・同演習 2年前期 必修科目
オブジェクト指向Iに続く科目として、ポリモーフィズム、スレッド、入れ子クラス、 抽象クラスなどさらに高度な概念を学びます。また、GUIツールキット、 入出力ストリーム、ネットワーク、データベース(JDBC)、アプレット、 サーブレットなどのクラスライブラリを利用し、いろいろなアプリケーションを作成します。


アプリケーションデザイン・同演習 2年後期 必修科目
オブジェクト指向IIで学んだJavaの知識を生かして、Webアプリケーションを開発方法について学びます。Java プログラミングについての経験を積みつつ、 Webアプリケーションの仕組み、JSP, サーブレット、データベースなどについて学びます。その過程において、MVCフレームワーク、UML, テスト指向設計など、Javaに限定しないアプリケーション開発設計技術について学びます。


情報表現 1年後期 必修科目
コンピュータにおいて、文字、図形、音声、音楽、静止画、動画等の情報が どのように扱われているのか、またマルチメディア情報を扱いやすくするために どのような工夫がなされてきたのかについて学習します。 具体的には、自然界においてアナログ信号の形で存在する手書き文字やイラスト、 人間の会話、音楽、風景写真等をデジタル化するとはどういうことなのか、 その目的、方法について、深く理解することを目指します。


アルゴリズムA・同演習 2年前期 必修科目
効率的なプログラミングの基礎となるアルゴリズムとデータ構造に ついて基本的な学習をします。 具体的には、データ構造(配列、連結リスト、木構造)、 探索(ハッシュ法、二分木探索、平衡木)、整列などのアルゴリズムについて学びます。


アルゴリズムB・同演習 2年後期 必修科目
アルゴリズムAで学習した内容をさらに発展させて学習します。 計算量の概念を理解し、バックトラックや動的計画法などの 比較的高度なアルゴリズムについても学びます。 学んだアルゴリズムを応用して、効率のよいプログラムを作成できることを目指します。


情報数学基礎・同演習 1年前期 必修科目
集合、写像、関数、命題などの基礎的な概念とその性質や取り扱い方を学びます。 集合や命題は高校の数学でも学びますが、これらは数学だけでなく情報科学に とっても大事な概念です。 また命題そのものを数学の式のように扱いますが、これはコンピュータの プログラムを理解するうえでも重要です。


微分積分・同演習 1年後期 必修科目
指数関数、対数関数、三角関数などおなじみの関数について、高校の復習から 始めて高校では習わなかったテーラー級数展開などを学びます。 これによって関数の値を望むだけ正確に計算することができます。 また複素数まで考えると指数関数と三角関数とが同じ関数に見えてきます。 また周期的な現象を調べるフーリエ解析の初歩も学びます。


線形代数・同演習 2年前期 必修科目
行列とベクトルは数学の重要な概念ですが、情報科学においても広く応用されています。 この科目では、まず行列とベクトルの演算(和と積)を定義し、連立一次方程式の 解法を学びます。 また、三次元空間の回転、射影などを学び、これをコンピュータ・グラフィックスへ 応用することを試みます。


確率統計・同演習 2年後期 必修科目
確率・統計の基本事項について学びます。21世紀はデータの時代といわれており、確率統計の重要性は増してきています。確率・統計はコンピュータサイエンスとの関係が深く、両者を身につけておくことが重要です。この授業では特に統計学に必要とされる確率論の基本事項について勉強します。


ソフトウェア開発法・同演習 3年前期 選択必修
大規模なソフトウェアを開発する方法を学びます。要求分析、設計、テスト等のソフトウェア開発の各工程について、その概念やプロセス、そこで使われる技法や表記法を理解します。また、1、2年次のプログラミング科目に続く科目として、デザインパターン等、プログラミングに直接関係する内容も扱います。演習では、統合開発環境、バージョン管理等、よく使われている開発ツールを使用し、複数人のチームで効率よくプログラミングを行うスキルを身に付けます。


マルチメディア・同演習 3年後期 選択必修
画像や音声などのマルチメディア・データをコンピュータで扱うときの、表現方法(データフォーマット)や操作方法などについて学習します。CGでは、2次 元画像処理、3次元変換、モデリング、レンダリング、アニメーションなどについて学びます。音楽では、Midiフォーマットや自動演奏などについて理解 を深めます。必要に応じて、背景にある理論も学びます。


システムプログラミング・同演習 3年前期 選択必修
Java言語の知識を前提に、C言語による効率のよいシステムプログラムの書き方を学びます。講義では最初にC言語とJava言語の構文や概念の違いにつ いて紹介した後、システムライブラリを利用した、低レベルの入出力、文字処理、プロセスの管理、プロセス間通信、ネットワークプログラミングなどについて 学びます。演習で実際にプログラムを書くことで、学んだ知識を確認します。


コンピュータネットワーク・同演習 3年後期 選択必修
コンピュータ・ネットワークの基本技術を理解します。 サーバやクライアントをJava言語で作成する方法を学びます。 まず、Java言語でソケットを用いてサーバやクライアントをプログラミングする方法を学びます。 サーバを作成するときに必要になりますので、スレッドについても解説します。 次に、Webサーバ側でJavaを動かすための技術であるサーブレットやJSPについて学習します。 さらに、JavaでXMLを扱うDOMのプログラミングに関しても授業で扱う予定です。


数理モデル・同演習 3年後期 選択必修
数理モデルは自然や社会の様々な現象を数学を用いて記述し、理解、予測、制御しようとすることを目標とします。この授業では2年時の必修科目の確率統計に引き続き、特に確率モデル・統計モデルについて学びます。基本的な統計モデルについて学び、現実のデータに適用することを学びます。


コンピュータリテラシーI 1年前期 選択
コンピュータとインターネットを使いこなすための基本知識と基本操作を学びます。電子メールやWebの利用方法のほか、ワードプロセッサ、表計算などのアプリケーションの基本的な使い方と簡単なWebページの作り方を学びます。


コンピュータリテラシーII 2年前期 選択
コンピュータリテラシーIに続く科目として、ワードプロセッサ、表計算、プレゼンテーションなどの実際の業務でよく使われるアプリケーションの高度な使用方法ついて学びます。


Web入門 2年前期 選択
インターネットでもっともよく使われるアプリケーション、World Wide Web (Web) の仕組みについて学びます。WebブラウザとWebサーバーの仕組みから始まって、Web検索サービス、Webアプリケーション、Webセキュリティなど について学びます。


Webテクノロジー 2年後期 選択
HTML、CSS、JavaScript等、Webのクライアント側で利用されている標準的な技術について学びます。さらに、jQueryによるDOM操作やAjaxなどの発展的な話題も扱います。この科目は講義科目ですが、数回は演習を行い、実際に手を動かすことで理解を深めます。


離散数学 2年後期 選択
離散数学はまさに離散的な対象を扱う数学の分野であり、そういう意味では非常に広い分野の対象が離散数学の対象といえます。コンピュータサイエンスとの関係が深く、具体的なアルゴリズムを設計する際にその知識が生きることがよくあります。この授業では特に離散的な集合の数え上げについて学びます。


コンピュータアーキテクチャ 3、4年 選択
ディジタル回路の基礎や、コンピュータの構成・高速化技法について学習します。回路の基礎として、組合せ回路、カルノーマップ、フリップフロップ、順序機械などを学びます。さらにコンピュータの構成を学習し、コンピュータの高速化技法について理解します。


コンピュータグラフィックス 3、4年 選択
マルチメディアを支える中核技術であり、現在ではゲームや映画等のエンターテイメントの他に医療、産業応用、科学、教育、芸術と幅広い分野で発展を続けて いるコンピュータグラフィックス(CG)についての歴史から基礎技術について学習します。CGの基本となる2次元画像処理、図形表示と変換、モデリング (ワイヤフレームモデル、曲面モデル)、レンダリング(陰線消去、シェーディング等)、コンピュータアニメーションの原理について、適宜プログラムを実際 に動かして、確認をしながら理解を深めていきます。


データベース 3、4年 選択
データを表の形式で表すというデータモデル、表に対する演算である関係代数、データの重複なくす設計理論(正規化)など、関係データベースの基礎理論につ いて学びます。その上で、データベース言語SQLを学び、実際にデータベースを操作する方法を習得します。さらに、プログラムの中からデータベースにアク セスする方法、データベース管理システムの機能、アーキテクチャ、運用方法や、トランザクションや並行制御などについても触れます。


コンテンツデザイン 3、4年 選択
コンピュータリテラシーIに続く科目として、Webサイトのデザインと構成方法、マルチメディアデータを利用したコンテンツ作成方法について学びます。


情報セキュリティ 3、4年 選択
日常生活の社会情報システムへの依存度が高まりつつある現在、情報システムのセキュリティを確保、より高めることがますます重要になっています。不正アク セスやコンピュータウィルスの脅威からユーザやネットワークを保護するために、認証、アクセス管理、ネットワークセキュリティ、コンテンツ著作権保護等の 基本技術と共に、人間系も含めたトータルセキュリティを実現するための情報システムの設計、運用法について学習します。


情報と社会 1年から4年 教職課程
1990年代の後半から急速に社会に浸透したインターネットが、社会の様々な局面に変化をもたらしています。この社会化した情報技術(IT)がもたらしたものに既存社会の可視化をあげることができます。従来は当たり前だったことがIT化の前に「何故」という問に曝され、新しいものに置き替わっていきます。ある時は不安や痛みも伴います。また新しい可能性が出現することもあります。そこで、私たちに求められているのは、問いを出し、それに答え、意識的な選択をすることです。IT化の流れは急激です。その影響も甚大です。この講義では「情報」に社会的視点からアプローチする基礎概念を獲得し、事例に沿ってIT化の光と影の両面を見る力を養い、選択能力の形成を目指します。


情報と職業 3、4年 教職課程
情報通信技術分野で専門職が持つべき常識として、情報通信技術分野の職業、 情報通信技術に関わる倫理観と法律、情報通信技術の発達の歴史を学びます。 職業の説明の時間には、実際に仕事についている方から直接、職場での経験や、 情報通信の各分野の最新動向についての話を聞きます。


知的システム 3、4年 選択隔年
問題解決の手法、知識表現法について学び、これらを実際の問題に適用できるようになることを目指します。最初に人工知能の概要と歴史について紹介し、人工 知能とは何かについて考察し、続いて、ブラインド探索・ヒューリスティック探索、ゲームの木、知識表現、推論、機械学習などについて学びます。


映像情報処理 3、4年 選択隔年
コンピュータに映像を認識させるにはどのような情報処理をしたらよいのでしょうか。この講義ではその基礎を学びます。「情報表現」の講義で学んだことを基礎として、人間の音や画像を認識するメカニズムである視覚、聴覚の仕組みと特徴、音声や映像からの特徴抽出を行うための情報処理方法、音声映像情報処理の応用について学び、コンピュータビジョンや情報圧縮技術の基礎についての理解を深めます。


プログラミング言語論 3、4年 選択隔年
プログラミング言語はどのように定義されているか、プログラム言語を理解する上で必要な諸概念を学びます。最初に形式的言語理論と意味論など現在使われて いる言語定義の手法を学んだ後、データ型、抽象データ型、オブジェクト指向、関数型言語、論理的言語など現在使われているプログラム言語に現れる諸概念を 概説します。言語を定義できる、あるいは今後新たに出てくる言語を理解することができるようになることを目的とします。


社会情報システム 3、4年 選択隔年
携帯電話、インターネット、更にはブロードバンドやモバイルインターネットの普及によって、情報社会はモバイル情報社会、更には「いつでも」「どこでも」 「誰(何)でも」ネットワークに接続し、サービスの利用ができるユビキタス情報社会へと変化、発展を遂げつつあります。人々の社会生活を支える情報システ ムの歴史、現状について学ぶと共に、将来に向けた課題とその解決法について様々な観点から議論します。


データマイニング 3、4年 選択隔年
データマイニングは膨大なデータの中から有益な知識を発見する手法です。発見手法としては様々な方法が提案されていますが、本講義では基本となる、相関ルール発見法、相関ルールの改良法、決定木の求め方、クラスタリング手法、系列解析などを学びます。


自然言語処理 3、4年 選択隔年
日本語や英語など人間が使う言語(自然言語)をコンピュータでどのように処理するかを学びます。自然言語処理の基礎的な手法である文脈自由文法による構文 解析,日本語や英語の形態素解析,それらを応用した情報検索、情報抽出など大量のテキスト情報を効率よく処理するテキスト処理技術を学びます。


オペレーティングシステム 3、4年
オペレーティングシステムの基本機能と概念を学びます。オペレーティングシステムの必要性を理解した後、計算資源の仮想化や多重化、保護がどのように実現されているかを学習します。


インタラクティブシステム 3、4年 選択隔年
人間とコンピュータの間で相互作用を行なうシステムについて包括的に学びます。人間の認知特性を理解し、使いやすいヒューマンインタフェース (Human-Computer Interaction)の設計について検討します。ウィンドウ、マウスという一般的なグラフィカルユーザインタフェースだけでなく、さまざまな入出力装 置について学びます。また、コンピュータゲームやインタラクティブインスタレーションなどへの応用についても触れます。


暗号理論 3、4年
現実の世界ではさまざまな場面で暗号が使われていますが、そこには数学的な理論が裏にひそんでいます。この授業では公開鍵を使用する暗号系を中心に、落とし戸(トラップドア)関数を構成するための数学を解説し、最新の暗号理論に触れます。


数理ファイナンス 3、4年 選択隔年
近年、金融市場ではデリバティブ(金融派生商品)が次々と登場してきています。このデリバティブの価格付けの理論を学ぶのがこの科目です。まず、離散確率 解析を準備し、離散モデルのデリバティブの価格付け入門を学びます。さらに極限をとることにより、連続モデルの確率へと拡張し、ブラウン運動、確率微分方 程式を用いてブラックショールズモデルにおけるデリバティブの価格付けを学びます。


津田塾大学情報科学科