スライド 1

日程表の確認
インターネット情報システム(配布3-2)
3章-2 Web実現のための技術
3.4 XML環境を支える技術
3.5 Web2.0環境を支えるオブジェクト指向
3.6 オブジェクト間通信と分散オブジェクト
テキスト「Web大全」小泉修著、自由国民社、補助テキスト「情報科学入門:第2版」伊東俊彦著、ムイスリ出版
internet-3-2a.ppt
3.Web実現のための技術
3.4 XML環境を支える技術-1

XMLのスタイル

XMLの可能性



スタイルシートの利用


XMLは企業間の情報交換には向くがWebには向かない
汎用性を高めるため、各種ツールが開発された⇒スタイルシートなど
XMLをWebブラウザで表示する場合必要
スタイルシート言語


CSS(Cascading Style Sheets):一般的
XSL(eXtensible Style Sheet Language)




マイクロソフトなどで作成
W3Cにより仕様公開
文書スタイルの制御や文書構造の変換が可能
XSLT(XSL Transformations):XSLをHTMLに変換するマークアップ言語
「インターネット情報システム」講師:伊東俊彦
2
3.4 XML環境を支える技術-2

XMLをオブジェクトとして扱うツール(図解3-13)

パーサ(Parser)


XMLを専門に扱うためのソフトウェア
DOM(Document Object Model)を実装


DOMによりXMLをオブジェクトとして扱う⇒XMLパーサを介してやりとり
XMLのオブジェクト化で広がる汎用性(図解3-14)

パーサの役割




3.Web実現のための技術
XML文書をチェッし、オブジェクト(実行形式)に変換
DOMオブジェクトをXMLに変換
XMLをDOMオブジェクトに変換(相手側)
HTMLからXHTMLへ(図解3-15)
 HTMLをXMLによって再定義したもの


W3C勧告:HTML4.0→XHTML1.0(2000年1月)
DOCTYPE宣言:文書のバージョン、DTD(文書型定義)の宣言
「インターネット情報システム」講師:伊東俊彦
3
3.Web実現のための技術
3.5 Web2.0環境を支えるオブジェクト指向-1

オブジェクト指向(Object Oriented)とは


概念定義(図解3-16)

ソフトウェアをオブジェクトとよばれる単位で構成しようとする技術

ひとつひとつのソフトウェアを独立した物(オブジェクト)としてとら
え、それぞれ相互に機能させることで、システムを構築する技術
たとえ(ワープロソフトと文書データとして)

ワープロの場合

ひとつひとつの文書データにワープロ機能がついている
⇒データそれ自体を単独のソフトウェアとして使える

文書データ:オブジェクトの属性(プロパティ:Property)

個々のワープロソフト:オブジェクトの機能(メソッド:Method)

データと機能を備えた小さなプログラムが自立して働き全体として大き
なシステム(ワープロ)として機能
「インターネット情報システム」講師:伊東俊彦
4
3.Web実現のための技術
3.5 Web2.0環境を支えるオブジェクト指向-2

カプセル化による属性の隠蔽(図解3-17)

カプセル化(encapsulation)とは

メソッド(機能:method)とデータ(データの属性)を一体化し1つのオ
ブジェクトとすること
 情報隠蔽(information hiding)とも呼ぶ
隠蔽の理由
 外部からのアクセスでデータを換えなくするため
 アクセスを許すとデータの構造が変えられてしまうため
 個々のオブジェクトの独立性を高め独立した部品として使うため

オブジェクトとメソッドの関係



メソッドのみが内部のデータを変更できる
オブジェクトへのアクセスはメソッドに対して行う
「インターネット情報システム」講師:伊東俊彦
5
3.Web実現のための技術
3.5 Web2.0環境を支えるオブジェクト指向-3

クラスとオブジェクト生成(図解3-18)

クラス(class)とは


メンバ(member)とは



オブジェクトを構成する属性(プロパティ)や機能(メソッド)を定義した
辞書のようなもの⇒型にしかすぎない
クラスにおける属性や機能のこと
インスタンス(instance)とは

クラスから導くものでプログラムで実際に使われるもの

クラスからオブジェクトを作ることをインスタンス化と呼ぶ
オブジェクトとは

クラスに実際の値を与えて生成(インスタンス化)したもの
「インターネット情報システム」講師:伊東俊彦
6
3.Web実現のための技術
3.5 Web2.0環境を支えるオブジェクト指向-4

クラス階層と継承の概念(図解3-19)

スーパークラス(superclass)とは


サブクラス(subclass)とは



クラスの中で基本的な機能や属性をもつもの
スーパークラス(上位クラス)の一部の機能や属性をもつクラス(下位
クラス):親子関係
例:鳩は、スーパークラスの鳥のサブクラス
鳩は鳥の一種
継承(inheritance)とは



下位のクラスは上位のクラスの機能や属性を引き継ぐ
例:鳩は鳥の機能や属性を継承する
下位クラスは上位クラスとの相違点だけ定義すればよい⇒再利用に
より効率的に活用できる
「インターネット情報システム」講師:伊東俊彦
7
3.Web実現のための技術
3.6 オブジェクト間通信と分散オブジェクト-1

メッセージによるオブジェクト間のやりとり

分散オブジェクト技術とは


メッセージパッシングとは(図解3-20)


オブジェクトに対してメソッドの起動を要求すること
メッセージとは



異なるコンピュータ間でオブジェクト同士がネットワークを介して
メッセージ通信を行うための技術
メッセージパッシングのときの要求情報のこと
例:テレビのリモコンからテレビに送られる赤外線によるデータが
メッセージ、リモコンからテレビに送られる指示がメッセージ・パッシング
分散オブジェクトとそのメリット(図解3-21)



ネットワークを介したオブジェクトの相互動作が可能
分散すれば膨大な計算も容易
コンピュータ障害時のリスク分散
「インターネット情報システム」講師:伊東俊彦
8
3.Web実現のための技術
3.6 オブジェクト間通信と分散オブジェクト-2

CORBAによる分散オブジェクト(図解3-22)

CORBA(Common Object Request Broker Architecture)とは


サーバのオブジェクトに対しクライアントがアクセスするための仕組み
IIOP(Internet Inter-ORB Protocol)とは

ORB( Object Request Broker)とは



クライアント・サーバ間のアクセス技術や仲介ソフトウェア
スタブ:要求を出すクライアント側の通信部分
スケルトン:要求を受け処理を行い、応答を返す通信部分
各OSにより異なるORB間で、メッセージをやり取りするための共通プ
ロトコル
 IIOPを適用することで、プログラミング言語やコンピュータ機種が違っ
ても、オブジェクト間のメッセージを交換することが可能
 IDL(Interface Definition Language)とは


IIOPを用いたメッセージのやり取りに使われる言語
「インターネット情報システム」講師:伊東俊彦
9
3.Web実現のための技術
3.6 オブジェクト間通信と分散オブジェクト-3

CORBAからWebサービスへ

DCOM(Distributed Component Object Model)とは



その他のオブジェクト指向技術



マイクロソフトが定めた分散オブジェクト技術の仕様
CORBAと異なるためWindows環境ではCORBAは非サポート
COM++、.NETなどの分散オブジェクト技術も使用された
WSDL(Web Services Description Language)が使用された
(P.187参照)、WSDLはXMLにより記述される
CORBAサービス


CORBAオブジェクトとして提供されるサービス
単にORBを介してサービスを呼び出すだけでよいため、単体システム
の肥大化回避となる
「インターネット情報システム」講師:伊東俊彦
10