Java - みる会図書館


検索対象: UNIX MAGAZINE 2000年3月号
19件見つかりました。

1. UNIX MAGAZINE 2000年3月号

JCC ターミナル Ja a2 搭載ターミナル J B 新登場 ! Thin c ⅱ 00t の効果を最大限「をかして オフィスて、半産現場て一研究・室で 必要とされる新ステション機能が フ、 JBO 訒 Box Java Java2}ä載 Java ターミナル ー JBox 主な仕様 PowerPC 搭載・ Java2 (JREI. 2.1 ) ・ 32 ~ 128MB ・ X11R6 ・ CD - ROM ドライブ、キーポード、マウス Macintosh Windows NT SoIaris Linux ※ Java およびすべての Java 関連の商標およびロゴは、米国およびその他の国における米国 sun Microsystems, lnc. の商標または登録商標です。※すべての SPARC 商標は、米国 SPARC lnternational, lnc. のライセンスを受けて使用している同社の米国およびその他の国における商標または登録商標です。※ Solaris は、米国 Sun Microsystems, lnc. の登録商標です。※製品名等 の固有名詞は各メーカーの登録商標または商標です。※製品の仕様及び写真内容は予告なく変更することがありますのでご了承ください。

2. UNIX MAGAZINE 2000年3月号

0 Java Advisor om Performance Computing インターフェイスとクラス Jim Waldo 型の定義 122 1 調主 : 多様性、多相性ともいう。 メカニズムを用いて型を定義することができる。 1 つはク Modula3 、 Smalltalk など ) とは違って、 2 つの異なる Java は、はかの多くのオプジェクト指旬言語 ( C + + や のシグネチャか求める以 E のものでありうる。 厳密に満たされなくてもよい。オプジェクトは、メソッド を与えてくれる。これらの宣言では、かならすしも牛が ラム・モジュール間の系を明らかにするための必腰条件 る型の宣言は、期待される氏限のこと、すなわちプログ い範囲にわたる可能がある。 Java でのメソッドに関す 実際のオプジェクトの型は、旦言されたものよりかなり広 、、なんらかの " 型をもっていることか保証される。しかし、 プジェクトがクラスまたはインターフェイスで定義された ドの名前と引数の数、型に関する情報 ) によって、そのオ オプジェクトを返す場合、メソッドのシグネチャ ( メソッ 返り値についても同しことがいえる。メソッド呼出しが 要とされる型から派生した型である可能性もある。 スカ躾装されている場合には ) 別の型かもしれないし、必 らないのである。有効な引数は、 ( はかのインターフェイ とする場合、引数は、、すくなくとも " その型でなけれはな できる。すなわち、あるメソッドカ定の型の引数を必要 り値についての必要条件をともに最小限にとどめることが もつインスタンスになる場合がある。その結果、引数と返 ラスで実装されるインターフェイスによって数多くの型を る。 Java では、 1 つのオプジェクトが、そのクラスやク 長所の 1 つは、型に関する多態性 (polymorphism)l であ Java 言語 ( やその他のオプジェクト指旬言調の大きな ラスで、決まった不頁のオプジェクトを定義するために使 う。このような手法は、はかの数多くのオプジェクト指旬 旨にもみられる。しかし、 Java には、、インターフェイ 「 1 ロロ ス " という考え方もある。インターフェイスは、ほかの言 語でも概念上はメカニズムの一部に組み込まれているが、 明示的に実装されていることはほとんどない。インターフ ェイスを旦言するための構文をもつ Modula3 などの言語 でも、 Java であれば可能なインターフェイスとクラス定 義を混在させるようなガ去は利用できない。 この混在によって、システム言気者は染みのない、不 自然にみえる尺を迫られることがある。 Java の場合は とりわけそうである。なぜなら、多くの異なる系統の継承 関係が 1 つのクラスに集まる可能生があるからだ。そこ で、今回はシステムの言においてこの部分をどう扱うか をみていくことにしよう。 継承とインターフェイス ますは基本的なことから始めよう。 Java では、オプジ ェクトの型を決めるのはクラスであり、クラスから生成さ れたオプジェクトがインスタンスとなる。これは単純明 快で、そのオプジェクトの "most derived 型 " とか、オ プジェクトの、、 exact 型 " とも呼ばれることがある。この 型は、 CIass オプジェクトであり、オプジェクトの get- Class() メソッド呼出しによって返される。 オプジェクトの多態型に目を向けると、事はもうすこ し複雑になる。これはオプジェクトカ嘱するとみなされる 型の集まりで、基本的にはそのオプジェクトに対するⅲー stanceof 命令が true を返すものである。しかし、これを 定義するとさらに込み入ってくる。 UNIX MAGAZINE 2000.3

3. UNIX MAGAZINE 2000年3月号

Java2 。載 Java 端末 JVM (Java Vertual Machine) を実装し、 Java 、 Java アプレットなどを JBox 側で高速実行。 Java は、最新 verl .2.1 (Java2) 搭載。もちろん 日本語処理にも対応いたします。 マルチブットーム対応 Solaris 、 Linux 、 WindowsNT 、 Macintosh なと、 Java で開発されたアプリケーションを実行します。 TC を大幅軽減 アプリケーションはサーバーが一括管理する ので管理者の運用管理の工数を大幅に軽減 3 簡単衾、勝手 いたします。 ファイルも添付可能なマルチメディアメール ・電子メール端末として・・・画像ファイルも音声 性能プラウサ搭載 ・ブラウサ端末として・・・ HTML3.2 べースの高 の X サーバー機能を実行 ・ X ウインドウ端末として・・・ X ウインドウシステム アプリケーションを実行 ・ Java 端末として・・・ Java べースで開発された します。 使用目的に応じた端末環境を 1 台で提供いた マル ル端末機能 消失の心配もありません。 にハードティスクもないのでファイルの破損や スイッチの押下だけで、起動・終了が完了。さら JAPAN COMPUTER CO 日 P. JCC UItraSPARC べース ワークステーションシリーズ ・アップグレーダブルな製品設計・ solaris & Linux のテュアル os ・お客様のニーズにあわせたフレキシブルな仕様でご提供 ・タワー & ラックマウントモデル JU5 シリース JU5, / 360 ーの UltraSPARC- Ⅲ 360MHz ・外部キャッシュ 256KB J い / 270 ・ UltraSPARC- Ⅲ 270MHz ・外部キャッシュ 256KB ノい 0 / 440 4 UltraSPARC- Ⅲ 440MHz ・外部キャッシュ 2MB ノ U. 翹〃側〃 / 360 ・ UltraSPARC- Ⅲ 300 / 333 / 360MHz ・外部キャッシュ 512KB/2MB JU60 シリース JU80 シリー ノ U60 / お 60 / 14 側 / 1450 目 ・ UltraSPARC- 日 360 / 400 / 450MHz ・外部キャッシュ 2MB / 4MB JU60, / お 60 / 24 側 / 2450 ( の ・ UltraSPARC- Ⅱ 360 / 400 / 450MHzX2 ・外部キャッシュ 2MB / 4MB 4U5 ・外部キャッシュ 4MB ℃ PU ・ 4GB ( 最大 ) メモリ搭載 ・ 1CPU—4CPU ・ UltraSPARC- Ⅱ 450MHz で最適な能力を発揮いたします。 プウェア、 Web サービスなどのサーバとして各々のフィールド 高い信頼性と優れた価格性能比が、データベース、グルー ・ UltraSPARC-II 300 / 360 / 400MHz ( 最大 2CPU/4CPU) 25 シリース JCC ワークグループサーバ コスト・スペースを大幅にスリム化 ! ン ~ 機能 X ウインドウ端末として JVS シリーズ導入により、キーポード / モニタ 1 組で最大 8 台のワークステーションをコントロール。 コスト・スペースを大幅にスリム化します。 ′物ド、 Java 端末として O ・ JVS シリーズ導入前 シリーズ キーボード / ビデオ・スイッチ O ご一 : 11 ーコ ・、与ぐ今ン産 ? ブラウサ端末として ・を・・ P 挙朝物物 電子メール端末として O 「ごー 11 ーコ こコをコこ三こ JVS シリーズ導入後 JVS 東京・大阪・福岡・パロアルト ( シリコンバレー ) ・ニューヨーク本社 / 〒 101-0031 東京都千代田区東神田 2-6-9TEL.03-3864-8111 ( 大代 ) 本社営業部 / 03 ー 3864 ー 551 1 -- , , 躙西営業所 / 〒簡圓 014- 大販府大阪市西区北堀江・ 1 ・ -20-1-5- 佐野ヒル 4 「一一一一 -- -- ー・関西営業所 - ・ / イ 06 ー 6539 = 844 福岡営業所 / 〒 812-0011 福岡県福岡市博多区博多駅前 4 - 1 - 1 福岡営業所 / 092 ー 412 ー 5521 一日豊機式 2 社 URL http://www.jcc.co.jp/ 資料請求 No. 003

4. UNIX MAGAZINE 2000年3月号

特集・ストリーミング技術の現在 ビテオ管理アプリケーション はいえ、以降に示すサンフ。ルのコンセプトは、どのデータ ョン・サーバーやプラットホームで実行できるからだ。と Java コードとうまく統合でき、さまざまなアプリケーシ はこの種の業務に適している。叫屯で、他のサーバー側の プレット・エンジンには JRun 2.3.3 を使用した。 JSP Server Pages) 1.0 を使用している。 JSP を処理するサー リケーション・ロジックとⅥ b ページ用に JSP (Java- 発した。データベースへのアクセスには JDBC を、アプ ここで紹介するサンプルコードは Oracle Lite 上で開 味をもった部分をみつけることができる。 索したり、あとでニュース番組の言求データを検索して興 ピデオクリップお尺したり、特定の話題やレポートを検 ことが目的である。ューサーは、ニュース番組から自由に い、テレピ放送では実現できない魅力的な機能を提供する 経由でオンライン・ニュースのビデオにアクセスしてもら ピデオ・ライプラリを作ってみよう。ーヨ財見聴者に web に、架空のテレビニュース放送局を対象としたオンライン 単純なピデオ管理アプリケーションの可能生を示すため 提供することもできる。 プラリの検索や閲覧用の基本的なキーワードをユーザーに その他の日常的な作業もおこなえる。さらに、ピデオライ Web 経由でアクセスできるのなら、ビデオの在庫管理や もちろん、ピデオのメタデータがデータベースにあり、 たビデオの該当部分を再生できる。 生成する URL カ甘是供さューザーは自分カ躱してい き、適切な開女都寺間カ甘旨定されたメタファイルを重加勺に ザーはそれを検索することができる。検索結果にもとづ ごとに開始日制と終了時間カ求されているなら、ユー ビデオの内容に関する筆記による記録があり、シーン ・ビデオの検索 知らせたり、ユーザー間で共有したりできる。 て表示し、お気に入りのピデオの URL を電子メールで のピデオクリップにデータベース上で一意な名前を付け し、専用のブックマーク集を作ることかできる。これら 各ューザーは気に入ったビデオクリップを選んで保存 ・ユーサーによるビデオの〕尺とブックマークへの当求 76 図 1 データベース・テープル VIDEO_SEGMENT SEGMENT_ID FILE_ID STARTTI ME ENDTI ME DURATION T ITLE TYPE_CODE AIRDATE KEYWORDS NOTES Unique primary key べースでも、 PerI 、 CGI 、その他の技術を用いても容易に 実装できるだろう。 このシステムで必須となる最初のコンホーネントは、ビ デオや URL にリンクされたピテオの一にを再生する手段 である。しかしそれを作るには、ますビデオコンテンツに ついての情報を収めるデータベースの本はみを言 t する必 要がある。 テータ・オプジェクト 高度な管理システムは複数のデータベース・テープルを 備えている。これらは、サーバーやサーバーのネットワー ク・インターフェイス、各サーバーにオ褓内された個々の ファイル、各ビデオのタイトルなどを表す。簡田翻ヒのため に、ここではテープルが 1 つのみのデータベースについて 考える。毎日のニュース番組 . は 1 つの ReaIVideo ファ イルとして言点工ンコードされる。 Web 上で 30 分の ニュース放送を始めから終りまで見たがるユーサーはそれ はど多くないだろう。そこで、番組を短いセグメントに分 割し、我々の Web サイトにリンクを張れるようにする。 たとえは、全国ニュースのセグメントや天気予報のセグメ ントなどのように分ける。これらのセグメントを識別する 手段が必喫だが、それには各セグメントの一意な名前、ど のセグメントかを示すヒ、デオファイル名、開女都間と終了 日判りを使う。 上記を考慮した結果できあがったデータベース・テープ ルが、図 1 に示す VIDEO-SEGMENT である。 このテープルのデータに簡単にアクセスできるようにす るため、テープル内の 1 行を表示する Java データ・オプ ジェクトを作成した。 VideoSegment ・ java は、このファ UNIX MAGAZINE 2000.3

5. UNIX MAGAZINE 2000年3月号

連載 /Java Advisor— いくっかのクラスがただ 1 つの継承関係を形成してい る場合、話は複雑にならない。オプジェクトがクラス C のインスタンスか、あるいは C をスーパークラスとする クラスのインスタンスであるなら、そのオプジェクトは多 態生からみてクラス C によって決まる型に属する。クラ スからみるとスーパークラスは 1 つしかないので、扱いや すい。 オプジェクトと関係のあるインターフェイスを加える と、状況は厄介になってくる。クラスと同様、インター フェイスもキーワード extends を用いてはかのインター フェイスを拡張できる。拡リ知叔こは、サプ ( 下イの / スーパ ー ( 上位 ) の階層関係にある一連の型が定義される。しか し、クラスはインターフェイスを実装することもできるの で、そのクラスのインスタンスはどれも、実装されたイン ターフェイスによって定義される型に属する。つまり、オ プジェクトの型は、そのオプジェクトのクラスによって実 装されたインターフェイスだけでなく、それらのインター フェイスか継承したすべてのインターフェイスや、そのオ プジェクトのクラスか継承する ( スーパー ) クラスと関連 するすべてのインターフェイスによっても決定される。 例を示したはうが分かりやすいだろう。次の Java プロ グラムで定義されているインターフェイスとクラスについ て考えてみよう。 interface FirstInterface { Obj ect methodl ( ) ; interface SecondInterface extends FirstInterface int meth0d2 ( ) ; public class FirstC1ass implements Firstlnterface public FirstC1ass(){ public class SecondC1ass extends FirstC1ass implements SecondInterface UNIX MAGAZINE 2000.3 インターフェイス SecondInterface で定義された型を もつインスタンスであるオプジェクトは、インターフェイ ス FirstInterface で定義された型をもつインスタンスで もある。なぜなら、 SecondInterface は FirstInterface を拡張して作られているからだ。同様に、クラス First- Class で定義された型をもつインスタンスであるオプジ ェクトは、 FirstInterface で定義された型ももっている。 FirstClass では、キーワード implements で Firstln- terface を実装しているからだ。 もっとおもしろい例は、 SecondClass のインスタンス であるオプジェクトだ。 SecondCIass は FirstClass を 拡張したクラスなので、このようなオプジェクトは、 Sec- ondClass と FirstClass のそれぞれで定義される型を もつインスタンスである。このオプジェクトは、 First- lnterface と SecondInterface によって定義される型も もっている。 SecondInterface によって定義される型を もつのは、 SecondClass がこのインターフェイスを実装 しているからだ。 このオプジェクトは、次の 2 つの理由から FirstIn- terface によって定義された型をもっているといえる。ま す、 SecondClass は FirstClass を拡張したクラスであ り、 FirstClass は FirstInterface を実装している。あ るクラスのインスタンスは、そのクラスが拡張したすべて のクラスのあらゆる型をイ尉寺している。もう 1 つの理由 は、 FirstInterface を才長した SecondInterface をクラ ス SecondClass かま装しているからである。あるインタ ーフェイスのインスタンスであるオプジェクトは、そのイ ンターフェイスによって才長されたすべてのインターフェ イスで定義される型をもっことになる。 c + + のような言語では、継承階層の複数の位置に同じ型 があると混乱を招き、曖昧になってしまう。というのは、 その型か利用される位置が、個々のオプジェクトの実装 に景グをおよはすかもしれないからである。さいわい、 れは Java の場合にはあてはまらない。継承階層に複数回 現れてもよいのはインターフェイスだけだからである。イ ンターフェイスによって実装カ鴃まるわけではないので、 曖昧にならすにすむ。実質的に、インターフェイスの唯一 の用途は、どのようなメソッドをもつかを決めることであ り、メソッド自体はクラスのなかで実装される。インター フェイスは、継承階層に何回現れても問題にはならない。 123

6. UNIX MAGAZINE 2000年3月号

テッノロジーの寺を SC 北 Windows 2000 Windows 2000 ー入日 ハンドブックシステム導入編 Active Directory 入門 Moren S. Nielsen 著 Daniel BIum 著 B5 判 / 608 ページ B5 変型判 / 320 ページ 本体価格 4 , 800 円 本体価格 2 , 800 円 Windows 2000 Handbook シリーズ第一弾。 Wi ndows 2000 Windows 2000 Se Ⅳ e 「で新しく導入された Active Directory Se Ⅳ er のアーキテクチャを徹底解説。 Active Directory とドメ サービス。米国の新聞・雑誌で活躍中のコンサルタントがこの イン構造を設計し、スケーラカレな次世代企業システムを構築 新サービスの全貌を丁寧に解説し、導入へのアドバイスを行う。 する指針を提示する。 Windows 2000 W ー 2 : x : 0 ハントカク システム書入第、 w 加 0 2 冊 0 Windows 2000 新刊 新刊 Lotus DominoZNotes Lotus Domino/Notes Lotus Domino/Notes Lotus Domino/Notes LotusDomino/Notes 切 t ⅲ / N 僕 工ンサイクロへディアサ - バー編 工ンサイクロへディアクライアント編 工ンサイクロペア 工ンサイクロペア 小林正和著 加藤行弘著 B5 判 / 640 ペーシ B5 判 / 446 ページ 本体価格 4 , 400 円 本体価格 6 , OOO 円 卩′ライアント編す 小林正和を ドミノ / ノーツ書籍最強シリーズ、日 5 対応版ついに完成 ! ノーツ利用の基礎から文書の操作、テンプレートの利用、 ドミノデザイナーの概要などを詳しく解説します。 ドミノ / ノーツ書籍最強シリーズ、 R5 対応版ついに完成。 インストールからシステム管理まで、ドミノシステム管理者 の業務を詳細に解説します。 O 「 acle8i Java 0 = C 0 ド 0 Oracle8i 2 OracIe8i データベース入門 管理者編 山田精一、菅原剛著 B5 判 / 240 ページ /CD-ROMI 枚付属 (WndowsNT 版 Oracle Enterpnse Mana 試用版を収録 ) 本体価格 2 , 200 円 テータベースを管理・運用していくためには、何が必要か ? 本 書は初心者を念頭に、 Oracle データベースや管理の方法に ついてやさしく解説します。 0 「 acle Enterprise Manager の使い方なども詳しく解説します。 コア Java2 VOI. 1 基礎編 データベース入門管理者編 ー 2 Cay S. Horstmann 、 Gary Comel 共著 石井史子訳 B5 判 / 768 ペーシ 本体価格 6 , 800 円 Java プログラムの構造、オブジェクト指向プログラミング、 Swing 、イベント処理、ストリーム処理など、 Java プログラ ミングの基礎知識を豊富なサンプルコードを用いて詳細 に解説。 新刊 新刊 SQL Server SQL Se 「 ver SQL Server ス 0 M に′ 0 、 oft ・ SQ Server ス 0 SQL Server 7.0 データウェアハウス入門 Michael Co 「 ey 他 . 著 B5 判 / 456 ページ 本体価格 3 , 800 円 SQL Server ス 0 DBA ハンドブック M ark Spenik, 0 「Ⅳ n SIedge 著 B5 判 / 944 ページ CD-ROMI 枚付属 ( サンカレコードを収録 ) 本体価格 7 , 200 円 SQL Se 「 ve 「テータベースの設計・管理に役立つ、最新 ノウハウや重要なチェックポイントを実際の業務にすぐに 使える形で提供します。 DBA ハンドブック テータウェアハウス入門 をツ・ 0 ー・ 最新の SQL Server 7.0 を使用し、意思決定支援ソリュ ーションであるデータウェアハウスを設計、管理、セットア ップするためのガイドとなり、実践的に解説しています。 企業内研修・引用によるカスタムメイド・ OEM 供給に関してのお問い合わせ先 : 法人営業担当 ( 03 ) 5351-8640 ・表示価格は消費税を含みません。・本製品は書店および書籍を扱っているパソコンショップでお買い求めください。・品切れの際は書店にてご注文いただくか、通信販売を ご利用ください。・通信販売のお問い合わせ先 : 株式会社アスキーイーシー電話 ( 03 ) 5351-8202 http://www.arcs.ne.jp/direct/

7. UNIX MAGAZINE 2000年3月号

UIM/X し、アプリケーションの細かな動作も専用のエデイタで設定す りに、アプリケーションの外観をすばやく視覚的にレイアウト 全ての段階を強力にサポートします。煩雑なコーティングを行う代 プロトタイピングから、設計、開発、テスト、保守まで、 G 開発の UIM/X 3. O は、 CDE/Motif 1. x に IOO% 対応した GUI 構築ツールです ることができます。また、 C または C + + のエラーの その場で C または C + + のインタープリタで随時確認す ることができます。アプリケーションの動作は、開発中に 再 発 ない高速なコードを生成します。 CodeCenter Obj ectCenter TestCenter CodeCenter と ObjectCenter は、 C/C + + 言語 によるプログラミング環境において開発、デ バッグ、テスト、保守の各段階を統合的にサ ポートするデバッグッールです。実行時のエラ ーを検出する C / C + + インタープリタ、ファイ ル修正時にもコンバイル / リンク不要で実行、 テストを行うインクリメンタルリンカ、強力な ソーステパッガなど、開発生産性を大きく 向上する高度な機能群を備えています。 また、 TestCenter は C/C + + プログラムの バグを検出するテストツールです。最も発 見がむずかしいメモリ操作時の実行時工 ラーとメモリリークを自動的に検出します。 NIYE db -UIM/X 新など基本的な操作だけを行うアプリケーションの場合、 リケーションシエネレータです。テータベースの検索や更 Ⅵ M / X に基づいた RDB アプリケーションのためのアプ db-UlM/X は、 Motif 用 G ビルダーのベストセラー UIM/X PTE は複数のプラットフォームで動作するアプリケーションのための開 UIM/X PTE SQL のコードを入力することにより対応することができます ができます。複雑なアプリケーションにも、部分的に C や C + + 、 オブジェクトをマウスの操作で結び付けるだけで開発すること db - M / x を使えば画面で G 団オプシェクトとデータベース 発環境です。 UIM/X のすべての機能を持ち、異なるプラットフォームでも共通の API で使うことができる C + + の GUI クラスライブラリ (Cross-Platform TooIset) や Java の GUI クラスライプラリ、既存の MOtif や Cross-PlatformToolset の GUI を Java に移植するための機構などを提供しています。 株式会ネ土アステック E-maiI : info@astec.co.jp Web : http://www.astec.co.jp/ 本社営業部〒 112-0002 東京都文京区小石川 1 -3-11 イトーピア小石川梅津ビル Te に 03-5804-1853 Fax : 03-5804-1854 関西営業所〒 532-0011 大阪府大阪市淀川区西中島 5-6-13 新大阪御幸ビル 6F Te に 06-6307-5122 Fax : 06-6307-5124 資料請求 No. 012 RASTEC

8. UNIX MAGAZINE 2000年3月号

UNiX contents 000 / 3 特集 特集 連載 37 44 57 90 122 ThinkPad 570 で FreeBSD ストリーミング技術の現在 FreeBSD 3.4 のインストール ・ " 大江将史 14 Web ビデオシステムの概要・・・・・・ Chuck FuIIer 65 ストリーミンク・メディアの配信・・・・・・ La y BouthiIIier 73 広帯域ホータルサイトの開設・・・・・・ J 。 hn Bloomer 83 UNIX Communication Notes ・・・・・・山口英 インターネット上のマルチメディア通信 ファイアウォールの作り方・・・・・・白崎博生 ログの解析 ( 3 ) BSD をハックする・・・・・・齊藤明紀 ブートストラップ FD 遠隔オフィスとの接続・・・・・・荒井美千子 トラブル・シューティング ( 5 ) こけつまろひっ UN Ⅸ・・・・・・社ゆすこ PPP(2) 、 Lookup フログラミング・テクニック・・・・・・多治見寿和 フィルタコマンド Java Advisor ・・ ••Jim WaIdo インターフェイスとクラス COVER, CONTENTS DESIGN ・ MORIYA, KAZUO (AUDREY THE DESIGN) ILLUSTRATION ・ MORIYA, KAZUO

9. UNIX MAGAZINE 2000年3月号

0 連載 Java Advisor— ASCII たのしい IJN Ⅸ CJN Ⅸへの招待 坂本文著本体し 845 円 IJN Ⅸを物つどたのしくる入門書 たのノい、Ⅸを QJNIX MAGAZINE 」連載当初から好評 いへの物 の「 UNIX への招侍」を単行本化。 UN Ⅸ の根底にある文化や流儀をまじえつづ明冓成、 大幅加筆。ワークステーションの急漣な普及に よって UNIX の習得が急務と言われる現在、 まさに必読の 1 冊。 いる。この方法は不必要なこと (FirstClass を拡張する だけでいいのに、わざわざ SecondInterface などを作っ ている ) をしているようにみえるかもしれないが、 こうし ておけは、あとで自分 ( や他人 ) がこの FirstClass の実 装とは異なる SecondInterface の実装を組み込めるよう になる。 けっきよく、 Java にクラスとインターフェイスの両 方の階層があるからこそ柔軟なシステムが作れるようにな り、本質的な未にもとづいてまとめられた操作と、固有 の実装のためにまとめられた操作とを明確に区別できるよ うになる。インターフェイスの階層は意味のまとまりを反 映しているのに対し、クラスの階層は固有の実装のまとま りを反映している。 ひとまとまりのメソッドについて、それをクラスとイン ターフェイスのどちらで定義すればいいのかを決めるもっ とも簡単なガ去は、これらのメソッドを別のガ去で実装す る可能匪があるかを自問することだ。答がイエスならイン ターフェイスで定義し、ノーならクラスを定義する。ただ し、後者の例はきわめて稀である。システムの構造を定義 するとき、自分がインターフェイスよりも多くのクラスを 書いているのに気づいたら注意すべきである。 Sun Microsystems で、 Java による・分散コンピューティング の基盤を作るグループを率いている。オプジェクト指向プログラ ミングに携わって 10 年以日こなる。 「 lnterfaces and C lasses 」 Performance Computing 1998 年 9 月号より ◎ 1998 , Performance Computing (). S. A. ) 続・たのしい LJN Ⅸ シェルへの招待 坂本文著本体 L845 円 rlJN Ⅸへの招待」単行本化第 2 弾 ・たのしい UN Ⅸ、 シェルは UNIX の世界のいわば「裏方さん」。 その動きや仕組みを知れば、 UNIX がいっそ う楽しく、便利に使えるようになる。本書は、ひろく われている C シェルを中心に、シェルの使 ロ 第 い方から仕組みまて、を分かりやすく解前巻と ともに入門者必携の 1 冊。 Life with LJNIX IJ N Ⅸを愛するすべての人に ドン・ライプ、サンディ・レスラ共著、坂本文讎尺、ネ奇俊博訳本体 2 , 引 3 円 だれも知らなかった IJN Ⅸの魅力の世界 Lifc with V>IX UNIX の歴史的背景や社会動向とともに、 UNIX の技術面や市場面、今後の展望などを 幅広く解説。また UNIX 人名辞典、アングラ 情報、名言などの貴重なデータや一風変わっ た情報を満載、 UNIX ユーザーに新しい視野 を提供する好言勿。 文書処理システム い咜 X ーク レスト・ランポート著、エドガー・クック、倉沢良一監訳、大治、小暮博道、藤浦はる美訳本体 2 川 8 円 使いやすさと豊富な機能を備えたマクロ・バッケージ い X は、もっとも進歩した糸目版システムといわ ー・曲 0 レ n 当刈杙を れる TEX の実用性をさらに高め、使いやすくし たマクロ・パッケージ。これを利用すれば、複 ょ数式すらユーザー自身の手て、自在にレイ アウトて、きる。開発者の手による解説書の決定 版。 ルート ー Jim Waldo ルート 「 00t から / へのメッセージ 高野豊著本体し 553 円 人とコンビュータを観察するスーバーユーサーの目 日本に UNIX が導入されたばかりの頃、突然 管理者を任された著者の悪戦苦闘の経験をつ づる。著者が、今日まて、めぐりあったさまざまな = 叮 = ヒ。ソードを紹介。示 0 夋に富む告白談と、飽くな き探求心のキ吾は、システム管理者に限らず多く のユーザーの共感を呼ぶだろう。 ※表示価格には消費税は含まれません。 以 b( かこへのメッセー 株式会社アスキー 〒 15 ト 8024 東京都渋谷区代々木 4-33-10 株式会社アスキー出版営業部電話 ( 03 ) 535 ト田 94 125 UNIX MAGAZINE 2000.3

10. UNIX MAGAZINE 2000年3月号

ェ イ 街 角 の フ ス 27 SWIG 増井俊之ー いのですが、 ・ボタンやスライダで 3 次元グラフィックスを制御したい ・曲名を曖昧検索して MP3 ファイルを再生したい といったときにはどうすればよいのでしようか。 前者の場合は、 1999 年 8 月号て紹介したようなツール キットを使えば、 GUI 部品で OpenGL 描画を制彳卸する ことはできます。しかし、肝腎の描画処理よりも GUI の ためのプログラミングに手間がかかりそうです。後者につ いては、検索や画面表示のようなインターフェイス部分は スクリプト言語で十分であっても、再生部は C で書かね はならないので、けっきよくはすべてを C で実装するこ とになるのではないでしようか。 このように、現在のプログラミング言語では状況に応じ た言語の使い分けカ貘隹しいので、 1 つの言語ですべての処 理をおこなうことが多いようです。たとえは、いったん Java を使うと決めたら、通信も画面表示もファイルアク セスもすべて Java で記述しなけれはならなくなることが 多いように思われます。 状況に合わせて異なる言語を好きなように組み合わせて 使えれば、システム開発はかなり楽になるでしよう。 ・数脅算は Fortran 委むにの引・算は Mathematica ・グラフィカルな配置などは視覚言語 ・ 3 次元表示は OpenGL 音楽は MAX ・システム関数は C ・パターンマッチやテキスト処理は Perl ・簡単な GUI は TcI/Tk PerI や Tcl などのスクリプト言語は手軽に利用できる 半面、言語に用意されていない機能は使いづらいという問 題がありました。たとえは、 PerI で高速な検索システム を構築したり、 3 次元グラフィックスの表示や MP3 フ ァイルの再生をおこなうのは容易なことではなく、 TcI で UNIX のシステムに深く依存する処理を呼び出すのも簡 単ではありません。去も丘のスクリプト言語の多くは、外部 ライプラリをリンクする機能を備えているため、 C のラ イプラリをスクリプト言語から使うこともできます。しか し、そのためのインターフェイス仕様は簡単とはいえす、 しかも言語ごとに異なるので、スクリプト言語に C ライ プラリをリンクして使う去はあまり普及していないのが 実情です。 このような間題を解決するために、 SWIG というツー ルが作られています。 SWIG は、 C のライプラリをスクリ プト言語から簡単に呼び出せる形式に変換するツールで、 点では TcI 、 PerI 、 Python などに対応しています。 SWIG を使えは、 C で実装さオ L た帯朱なライプラリも、 PerI などから呼び出して使えるようになります。今回は、 SWIG とその応用について紹介します。 せ 組 の の 数 複 世の中に数多くのプログラミング言語やツールがあるの は、それぞれの言語に得手、不得手があるからでしよう。 たとえは、テキストのパターンマッチ処理には Perl カ鉤 いていますし、ボタンやスライダなどの GUI をもつ簡単 なアプリケーションであれば TcI/Tk が便利です。高速 な数 fl 1 ・算なら、 C や Fortran を使うのがよいでしよう。 このようにイ士事に適した言語がはっきりしている場合はい 153 UNIX MAGAZINE 2000.3