本文へジャンプ


developerWorks Japan  >  Open source  >  

技術文書一覧

developerWorks
 
  
 
 結果  789   1 - 100 件を表示する     概要の非表示    
 
タイトル 日付日付 別のソート - 逆順にしたい場合はクリック
企業システムでも使われるウィジェット技術: 第 2 回 OpenAjax Hub 2.0 による安全なマッシュアップ
本連載では、ウィジェット関連の技術動向についてご紹介していきます。第2回となる本稿ではOpenAjax Alliance で仕様が策定されたOpenAjax Hub 2.0の機能と使い方についてご紹介します。特にOpenAjax Hub 2.0では複数のウィジェットを組み合わせたコンポジット・アプリケーションを安全に実現するためのセキュア・マッシュアップ機能が大きな特徴です。マッシュアップによるセキュリティ的な問題と、OpenAjax Hub 2.0の実現するセキュリティの仕組みについて解説します。
    2009/11/20  
 
Flex マイクロブロギング・アプリケーションで pureXML を利用する: 第 2 回 Flex でアプリケーション・ユーザー・インターフェースを作成する
IBM DB2 の pureXML 機能を使用すれば、XML をそのままの形式でデータベースに保管することができ、XML を変更する必要がありません。一方 Adobe Flex アプリケーションは、XML を直接読み取って Flex ユーザー・インターフェースに取り込むことが可能です。この 3 回の連載記事で作成するマイクロブロギング・アプリケーションでは、pureXML、Web サービス、そして Adobe Flex を利用するだけでなく、さらにマイクロブロギングでの近況アップデートを Twitter に公開することもできます。連載の第 1 回では、Web サービスについて説明し、マイクロブログ・データベースを作成およびテストして、DB2 pureXML を使用した Web サービスを有効にする方法を説明しました。第 2 回となる今回の記事では、Adobe Flex と ActionScript を利用してアプリケーションのユーザー・インターフェースを作成します。
    2009/11/03  
 
Joda-Time
どんなエンタープライズ・アプリケーションでも、時刻を省くことはできません。アプリケーションでは現在の時刻を把握したり、将来のある時点での時刻を把握したり、場合によっては 2 つの時刻からその期間を計算したりしなければなりません。JDK でこの計算を行うのは厄介で面倒なことです。そこで試してもらいたいのが、Java プラットフォームのための使いやすいオープンソースの日付/時刻ライブラリーである Joda-Time です。この記事を読むとわかるように、Joda-Time は日付と時刻を操作する面倒を軽減してくれます。
    2009/10/27  
 
Google Web Toolkit と Eclipse Galileo を使ったハイパフォーマンスの Web 開発
皆さんはこれまでに GWT (Google Web Toolkit) について聞いたことがあるのではないでしょうか。GWT を使用すると、Java プログラミング言語で作成した Web アプリケーションを JavaScript にコンパイルして Web ブラウザーで実行することができます。これはつまり、Java の静的型付けや Eclipse のような優れたツールを活用して生産性を高められるということです。また、皆さんは GWT で構築された便利でスタイリッシュなウィジェットをいくつか見たことがあるかと思いますが、GWT を使用することでハイパフォーマンスの Web アプリケーションを作成できることをご存知でない方もいるのではないでしょうか。この記事では、Google Plugin for Eclipse Galileo を使用して GWT のパフォーマンス機能 (コンパイラー最適化、遅延バインディング、Ajax 最適化) を活用する方法について説明します。GWT にとっては、開発者のパフォーマンスも重要な要素です。そこでこの記事では、Google Plugin for Eclipse を調整して開発者の生産性を向上させる方法についても説明します。
    2009/10/20  
 
Web アプリケーションのセキュリティー: 脆弱性をテストする
データ駆動型 Web サイトへの依存がますます強くなるなか、これらのサイトを対象とした攻撃の数は増加の傾向にあります。開発者にとってサイトをセキュアにするために何よりも大事なのは、どのような方法を使うとサイトを攻撃できるのかを理解することです。この記事を読んで、攻撃のなかでも特によく見られるタイプの攻撃について理解し、そのような攻撃を突き止めるために使用できるツールについて学んでください。
    2009/10/20  
 
Simple Cloud API
Simple Cloud API プロジェクトは、多様なクラウド・サービスに対して共通の API を提供するために、Zend、GoGrid、IBM、Microsoft、Nirvanix、Rackspace が共同で設立したものです。Simple Cloud API を利用すると、複数のクラウド・ベンダーとの間で相互運用可能かつ移植可能なコードを作成することができます。何よりも良いことに、この API を利用することで、特定ベンダーのサービスを必要に応じて使用できるようになります。
    2009/10/20  
 
多忙な Java 開発者のための Scala ガイド: Scitter を使って Twitter を更新する
Scitter クライアント・ライブラリーはほぼ実用的なものになりましたが、最後の仕上げが少し必要です。今回の「多忙な Java 開発者のための Scala ガイド」では、Ted Neward が、Twitter にアクセスするための Scala ベースのライブラリーに対し、更新、表示、削除機能を追加する方法について説明します。
    2009/10/20  
 
Web 時代の非リレーショナルデータベース: 第 5 回 Apache CouchDB の最新機能を知り、適用の勘所を掴む
本連載では今Web開発者が注目するApache CouchDBに関する技術情報を紹介します。今回は5回シリーズの最終回として、Apache CouchDB の最新版(0.9.0以降)で搭載された機能を紹介し、シリーズのまとめとしてドキュメント指向アプリケーションに関する考察を行います。
    2009/10/09  
 
情報を広める: 企業ブログ、MetaWeblog、そして XML-RPC
今日のブログは、従来からの個人の日記としての使い方を遥かに超えた使い方をされることがあり、十分成熟した理想的な Web パブリッシング・プラットフォームとなっています。企業の中では、本社部門、開発部門、そしてマーケティング部門間の中心的な情報伝達手段として、ブログが使われている場合がよくあります。そのため、標準的な XML の API に準拠するオープンなブログ・ソフトウェアを選択することが欠かせません。そうしたツールの 1 つとして、広く使用されているブログ API である MetaWeblog について、またこの API を使って独自のブログ・ツールを作成する方法を学びましょう。
    2009/10/06  
 
Spring フレームワークを利用して行う SCA コンポーネントの設計と開発: 第 1 回 Spring、SCA、そして Apache Tuscany の 3 点セット
この「Spring フレームワークを利用して行う SCA コンポーネントの設計と開発」シリーズでは、SCA (Service Component Architecture) と Spring フレームワークとを効果的に組み合わせ、分散サービス・アプリケーションを作成する方法を学びます。第 1 回の今回は、SCA とSpring とを組み合わせるメリットについて概説します。Spring フレームワークを使って SCA コンポーネントを設計、作成する方法、Spring Bean を SCA サービスとして公開する方法、そして Spring アプリケーションの中で SCA のサービスとプロパティーにアクセスする方法を学びましょう。この記事で紹介する例では、Apache Tuscany SCA Java 技術ランタイムを使用します。
    2009/10/06  
 
memcached と Grails: 第 2 回 memcached を Grails に統合する
James Goodwill が memcached と Grails の統合について紹介するこの 2 回の連載は、今回 Grails サンプル・アプリケーションと Java ベースの memcached クライアントを統合して締めくくります。Spymemcached を Grails で作成した連絡先管理アプリケーションに統合する方法を学んで、個々のリクエスト結果を memcached でキャッシングするという手法を実践してみてください。さらにこの記事では、第 1 回で説明したmemcached クライアント・コマンドを使用して新しいキャッシュの効率性もテストします。
    2009/10/06  
 
Flex マイクロブロギング・アプリケーションで pureXML を利用する: 第 1 回 DB2 pureXML を使って Web サービスを機能させる
IBM DB2 の pureXML 機能を使用すれば、XML をそのままの形式でデータベースに保管することができ、XML を変更する必要がありません。一方 Adobe Flex アプリケーションは、XML を直接読み取って Flex ユーザー・インターフェースに取り込むことが可能です。この 3 回の連載記事で作成するマイクロブロギング・アプリケーションでは、pureXML、Web サービス、そして Adobe Flex を利用するだけでなく、さらにマイクロブロギングでの近況アップデートを Twitter に公開することもできます。
    2009/10/06  
 
オープンソースを使って費用を節約する: 第 3 回 OpenChange ソリューションが非常に有望
今日のような経済状況では、誰もが費用を削減する方法を求めています。IT 分野の場合、費用を削減するための 1 つの方法は、ライセンスされる高価な製品の代わりにオープンソースの製品に切り換えることです。このシリーズ最終回の今回は、Exchange グループウェア・サーバーとして使われることを前提に設計された OpenChange について説明します。E メールはおそらく皆さんにとって、ビジネスを支える重要な要素であるはずです。E メール・サーバーがダウンすると、すべてが即座に停止してしまいます。この記事では、OpenChange E メール・サーバーについて、そして OpenChange が実用に耐えるものかどうかについて学びます。
    2009/09/29  
 
Java ベースの PHP フレームワーク、Quercus の紹介
Quercus は Java と PHP を合わせて使用することで Web サービスや Web アプリケーションを作成する新しい手法です。Quercus フレームワークでは Java と PHP が互いに統合されているため、便利なことに Spring や Hibernate などの多様な Java ライブラリーをアプリケーションに組み込むことができます。この記事では、いくつかのコード・サンプルを使って Quercus フレームワークを簡単に紹介します。まず、単純な HelloWorld の例を使ってQuercus フレームワークの機能と利点を探ります。そして、Quercus フレームワークのアーキテクチャーを説明し、実際の使い方を詳細に見ていきます。
    2009/09/22  
 
Clojure プログラミング言語
Lisp はその表現力と能力で有名なプログラミング言語ですが、一般に、汎用目的で使うにはそれほど適していないと考えられていました。この考えを一変させたのが、Java プラットフォームで動作する Lisp の方言、Clojure です。今では Java 仮想マシンを使える場所であればどこでも Lisp の威力を利用することができます。この記事では Clojure を使い始める方法を説明し、Eclipse の Clojure プラグインを利用しながら Clojure の構文を学びます。
    2009/09/22  
 
PHP アプリケーションを Google Contacts と統合する
Google Contacts Data API はクライアントに依存しない強力な API であり、この API を使うことでユーザー個人の Gmail の連絡先情報を読み取ったり修正したりすることができます。この API をアプリケーションのコンテキストで使用し、カスタムの PHP アプリケーションによって連絡先を取得、追加、削除、修正する方法を学びましょう。
    2009/09/22  
 
Agavi による MVC プログラミング入門: 第 4 回 XML、RSS、SOAP をはじめとする複数の出力タイプに対応する Agavi 検索エンジンを作成する
連載第 4 回では Agavi のサンプル・プログラムに単純な検索エンジンを実装し、XML、RSS、または SOAP といった複数の出力タイプに対応させるためのサポートを追加します。この 5 回の連載は、オープンソースの柔軟かつスケーラブルなフレームワークである Agavi に興味を持つ PHP 開発者を対象としています。
    2009/09/15  
 
Grails をマスターする: カスタム・プラグインを作成する
連載「Grails をマスターする」の今回の記事では、Scott Davis が独自の Grails プラグインを作成する方法を紹介します。この記事を読んでプラグインをこれほど簡単に作成できることがわかれば、現在 250 を超える Grails プラグインがあり、新しいプラグインも次から次へと追加されているわけが納得できるはずです。
    2009/09/15  
 
Agavi による MVC プログラミング入門: 第 5 回 Agavi アプリケーションにページング機能、ファイルのアップロード機能、そしてカスタム入力バリデーターを追加する
これが最終回となるこの 5 回の連載では、オープンソースの柔軟かつスケーラブルなフレームワークである Agavi について学びたいと思っている PHP 開発者を対象としています。今回の記事では、Agavi アプリケーションでファイルのアップロードをサポートする方法、セッションにユーザー・データを保存する方法、サード・パーティーのライブラリーを統合する方法、そしてカスタム入力バリデーターを作成する方法を説明します。
    2009/09/15  
 
memcached と Grails: 第 1 回 memcached をインストールして使用する
memcached と Grails に焦点を当てるこの 2 回連載の第 1 回目では、著者の James Goodwill がオープンソースのキャッシング・ソリューション、memcached を紹介します。今回の記事で取り上げる内容は、memcached のインストール、構成、memcached クライアント・コマンド、そしてキャッシュの有効性を評価する方法です。この記事では、memcached を各言語に固有のクライアントで使用する方法について説明するのではなく、memcached サーバーとの間で行われる直接のやりとりに焦点を絞ります。今回目標とするのは、memcached のインスタンスをモニターするために必要なツールについて説明すること、そして第 2 回の記事で memcached をGrails アプリケーションに統合するための下準備をすることです。
    2009/09/15  
 
HBase を使ってセマンティック Web を実現する方法を探る
HBase (Hadoop Database) はセマンティック Web を作成する場合や、既存のナレッジまたは計算済みのナレッジを抽出する場合に非常に適しています。この記事では、科学論文用の HBase データベースで RDF/XML アサーションを表現する方法を学ぶとともに、HBase と Bigtable ではデータの保存と処理の新しい手法をどのように行っているのかを理解してください。
    2009/09/15  
 
Apache Mahout の紹介
データやユーザー入力から学習するインテリジェントなアプリケーションの開発は、これまでは巨額の研究予算のある学術界や企業でしか行われていませんでしたが、今や一般的になりつつあります。クラスタリングや協調フィルタリング、カテゴリー分けなど、機械学習の手法に対するニーズは今までにないほど高まっています。機械学習の用途には、大勢の人達の間での共通性の発見、あるいは大量の Web コンテンツの自動タグ付けなどがあります。Apache Mahout プロジェクトは、インテリジェントなアプリケーションの作成を容易に、そして迅速にすることを目標としています。この記事では Mahout プロジェクトの共同設立者である Grant Ingersoll が機械学習の基本的な概念を紹介し、Mahout を使って文書をクラスタリングする方法、レコメンデーションを行う方法、コンテンツを構成する方法を説明します。
    2009/09/08  
 
cURL と libcurl を使ってインターネット経由でやりとりする
cURL は、ファイル転送用のプロトコルをいくつもサポートする (HTTP、FTP、SCP (Secure Copy)、Telnet など) コマンドライン・ツールです。cURL を使用すると、コマンドラインからインターネットを介してエンドポイントとやりとりすることができるだけではなく、アプリケーション層のプロトコル・タスクを自動化するためのプログラムを、簡単なプログラムから複雑なプログラムまで、libcurl を使用して作成することができます。この記事ではコマンドライン・ツール cURL を紹介した後、libcurl を使って C と Python で HTTP クライアントを作成する方法を説明します。
    2009/09/08  
 
Technorati API を使う
Technorati はブログの一覧を表示するサービスです。Technorati を利用すると、ブロゴスフィアのほぼ全体にわたって関心対象の記事を検索することができます。Web 2.0 と呼ばれるほとんどのものと同様、Technorati にもその機能の大部分を自動化するための API が用意されており、REST サービスとして提供されています。この記事では例を示しながら、Technorati の API を最大限に活用する方法を学びます。
    2009/09/08  
 
Eclipse Galileo での容易なナビゲーション
Eclipse Galileo では、Java のプロジェクトを素早くナビゲートするための機能がいくつか導入されています。これらの機能を既存の機能と組み合わせると、非常に大規模なプロジェクトでも素早くナビゲートすることができます。
    2009/09/08  
 
オープンソースを使って費用を節約する: 第 2 回 OpenOffice の実力を探る
今日のような経済状況では、誰もが費用を削減する方法を求めています。IT 分野の場合、費用を削減するための 1 つの方法は、ライセンスされる高価な製品の代わりにオープンソースの製品に切り換えることです。この記事ではオフィス生産性ソフトウェアの OpenOffice について学びます。OpenOffice はどの程度成熟しているのか、OpenOffice にはどんな制限があるのか、そして、この生産性スイートに移行することによる影響について探っていきましょう。
    2009/09/01  
 
SaaS アプリケーションの開発を成功させる上で重要な 10 のヒント
SaaS (Software as a Service) アプリケーションをスケジュール通りに、そして予算の範囲内で作成し、行った投資に対して、期待通りの高い収益を実現する上で欠かせない 10 のヒントを説明します。
    2009/09/01  
 
Eclipse の BIRT を使って科学データをプロットする
BIRT はビジネス・レポート用に作られたものですが、だからといって科学データのプロット用に使えないということはありません。科学用途に BIRT を使う方法を学びましょう。ここでは変光星の光度と年ごとの黒点数という 2 つのプロットを作成します。
    2009/09/01  
 
オープンソースを使って費用を節約する: 第 1 回 Ubuntu オペレーティング・システムを使う
今日のような経済状況では、誰もが費用を削減する方法を求めています。IT 分野の場合、費用を削減するための 1 つの方法は、ライセンスされる高価な製品の代わりにオープンソースの製品に切り換えることです。このシリーズでは、オープンソースの選択肢として、オペレーティング・システムとしての Ubuntu、オフィス・アプリケーション・スイートとしての OpenOffice、そして Exchange グループウェア・サーバーとしての OpenChange という 3 つを取り上げて学びます。この第 1 回の記事では Ubuntu Linux オペレーティング・システムを取り上げ、Ubuntu がデスクトップにおける優れた代替手段であり、費用の節約に役立つことを説明します。
    2009/08/25  
 
Agavi による MVC プログラミング入門: 第 1 回 Agavi を使って、まったく新しい世界の扉を開く
今回から始まるこの 5 回連載の記事が対象とする読者は、オープンソースの柔軟かつスケーラブルなフレームワークである Agavi について興味のある PHP 開発者です。第 1 回目となるこの記事では、まず Agavi フレームワークとその他の必要なコンポーネントのインストール手順を紹介します。続いて Agavi とその機能の概要について説明した後、Agavi を使った初めての Web アプリケーションの作成に取り組みます。
    2009/08/25  
 
Google App Engine for Java: Google App Engine for Java: 第 3 回 永続化とリレーションシップ
エンタープライズ環境でスケーラブルなアプリケーションを実現するためには、データの永続化が不可欠です。Google App Engine for Java を紹介するこの連載の最終回では、Rick Hightower が、App Engine の現状の Java 永続化フレームワークが抱える問題について彼の見解を示します。そして、現行のプレビュー・リリースでは Java 永続化の機能が完成するには至っていない根本的な理由を説明するとともに、App Engine for Java アプリケーションでデータを永続化する方法を実際の例を用いて説明します。JDO API を使用して Contact オブジェクトを永続化したり、削除したり、あるいは Contact オブジェクトに対して更新を行ったり、クエリーを実行したりする方法を演習するには、第 2 回で作成した連絡先管理アプリケーションを実行していなければならないことに注意してください。
    2009/08/25  
 
Agavi による MVC プログラミング入門: 第 2 回 Agavi と Doctrine により、フォームとデータベース・サポートを追加する
この 5 回連載の第 2 回では、スケーラブルなオープンソースのフレームワークである Agavi を使用して入力フォームを作成し、Doctrine を使ってプロジェクトのデータ・モデルを自動生成します。そして、生成されたデータ・モデルを Agavi プロジェクトに統合します。
    2009/08/25  
 
Agavi による MVC プログラミング入門: 第 3 回 Agavi を使って、認証機能と管理機能を追加する
5 回連載の第 3 回でも引き続き WASP (Web Automobile Sales Platform) の作成プロセスに取り組み、このプロセスの一環として自動車レコードの追加、削除、更新機能を追加します。今回はさらに、管理機能に認証を付けることで、管理機能をユーザー機能から切り離す方法も説明します。
    2009/08/25  
 
Apache Lucene を使ったテキスト検索
充実した機能を備えたハイパフォーマンスのテキスト検索エンジン・ライブラリー、Apache Lucene について学びましょう。この記事では Lucene のアーキテクチャーとそのコアとなる API について解説し、Lucene を利用して、プラットフォームに依存しない全文検索、索引付け、結果の表示、そして検索機能の拡張を行う方法を説明します。
    2009/08/18  
 
Eclipse Galileo でJava コーディングを迅速に行う
Eclipse Galileo での新しいコード生成機能、toString() の使い方を学びましょう。また、hashCode()、equals()、セッター/ゲッターの生成機能の使い方も学び、Java クラスの基本部分を作成するのに必要な作業量を削減しましょう。
    2009/08/18  
 
クラウド・コンピューティングのための、最高のオープンソースのクライアントサイド・フレームワークを使用する
Adobe Flex を使う場合と OpenLaszlo を使う場合の長所と短所について学びましょう。Flex と OpenLaszlo はクライアントサイドの RIA を開発するための主要な 2 つの言語であり、クラウド用に SaaS アプリケーションを構築する上では特に有用です。
    2009/08/18  
 
Blue プログラミング言語
言語は、私達の要求をコンピューター・システムに対して伝えるための手段です。そして、少なくとも私にとっては、言語が多すぎて困るということはありません。そうした言語の 1 つとして、Blue というユニークなオープンソースの言語があります。Blue はオブジェクト指向の言語であり、さまざまな用途に使える上に、使い方は直感的です。Blue を使用する上でのヒントを提供するこの記事では、Blue の基礎を紹介し、簡単なネットワーキング・アプリケーションの作成方法を説明します。
    2009/08/11  
 
Google App Engine for Java: 第 1 回 開発をスピードアップ!
Google App Engine が Python 使いのためだけのものだった頃を覚えていますか?当時は Java 開発者にとって不遇の時代でした。しかし 2009年4月になってついに、Google Inc. はそのクラウド・コンピューティング・プラットフォームを Java 開発者に開放しました。この 3 回の連載記事では、Java 技術に関する書籍の著者であり、Java 技術の指導者でもある Rick Hightower が、この信頼性に優れた堅牢かつ面白みのある Java ベースの開発プラットフォームを使い始めるお手伝いをします。今回の記事では、Google App Engine for Java が非常にスケーラブルなキラー・アプリケーションのデプロイメント・プラットフォームとなる理由を概説した後、Google Plugin for Eclipse を使って 2 つのサンプル・アプリケーションを作成します。1 つは GWT (Google Web Toolkit) ベースのアプリケーション、もう 1 つは Java Servlet API ベースのアプリケーションです。これらのサンプル・アプリケーションの作成手順をとおして、アプリケーションを一から構築するという点、そしてそのアプリケーションを最大 500万件のアクセスに対応できるように調整してデプロイするという点で、Google App Engine for Java がもたらす違いを学んでください (しかも、Google App Engine for Java は無料です)。
    2009/08/11  
 
Google App Engine for Java: 第 2 回 キラー・アプリケーションを構築する
Google App Engine for Java のようなクラウド・プラットフォームの本質は、プロ級の品質を備えたスケーラブルなキラー・アプリケーションを考え出し、構築し、デプロイできるところにあります。しかも、混乱に陥ることもなく、あまり費用をかけずに実現することができます。Google App Engine for Java を紹介するこの 3 回からなる連載の第 2 回では、第 1 回で取り上げた既製のサンプル・アプリケーションの枠を超え、App Engine for Java を使って単純な連絡先管理アプリケーションを作成し、デプロイするプロセスを手順に沿って説明します。
    2009/08/11  
 
Twitter Search API の使い方
Twitter は間違いなく、最近 World Wide Web に登場したソーシャル・ネットワーキングのなかで最も成功している例の 1 つです。Twitter には独自の検索エンジンがあり、ユーザーがキーワードやカテゴリーを基準に「つぶやき」を検索できるようになっています。この検索エンジンに備わった API はプログラムによる検索を容易にし、REST サービスとして機能して検索結果を Atom フォーマットで返します。この記事を読んで、Twitter Search API の基本的な使い方を学んでください。
    2009/08/04  
 
Subversion ユーザーのための Git: 第 1 回 Git 入門
DVCS (分散バージョン管理システム) には、集中型の VCS に勝るメリットがいくつもあります。そして DVCS モデルを検討しようとしている Subversion ユーザーにとっては、Git が出発点として最適です。2 回からなる連載の第 1 回である今回は、Subversion を基準に、Git のインストール方法、リモート・リポジトリーのセットアップ方法、そして Git の基本的なコマンドの使い方について説明します。
    2009/08/04  
 
PHP で Atom フィードを作成する
Atom は、Web サイトに掲載された情報を特定するための XML (Extensible Markup Language) 仕様です。Web 開発者が Atom を使用してフィードを生成すれば、他の Web 開発者 (またはフィード・リーダーを使用するユーザー) がそのフィードによって簡単に、リモート・サイトに掲載されている興味深い情報を見つけて表示することができます。Atom はいわば Web サイトの索引といったようなもので、必要とする誰もが使用することができます。そして、ほとんどのホスト・プロバイダーがサポートしている人気の言語、PHP を使用することで、Web 開発者は各種のフィード・リーダーや他の Web 開発者たちが利用できる Atom フィードを簡単に作成することができます。その究極の結果は、Web コンテンツをさらに幅広い読者に広めることができる最先端の情報ソリューションです。
    2009/07/28  
 
Grails をマスターする: プラグインを理解する
連載「Grails をマスターする」の今回の記事では、Scott Davis が Grails プラグインの世界を紹介します。新しい機能をまるごとアプリケーションに追加するのは、これ以上なく簡単なことです。この記事ではプラグインのマジックの種を明かすとともに、実際にプラグインを使って、Blogito アプリケーションに強力な検索機能を実装してみます。
    2009/07/21  
 
セマンティック技術を使用してウィキペディアの問い合わせ用フォームを作成する
公開 SPARQL エンドポイントは、ますます増えている Linked Data へのオープン・アクセスを提供し、皆さんのアプリケーションに役立つ優れたデータを提供することによってセマンティック Web の成長を促します。巷にある多くのデータ駆動型 Web サイトと同じく、これらのエンドポイントにクエリーを送信し、結果を HTML タグにラップすれば、Web ページを作成することができます。しかし、SPARQL エンドポイントならではの大きな違いは、この新しい Linked Data が皆さんのアプリケーションで使えるように公開されていることです。この記事では、簡単な CGI スクリプトによって、2 つの異なる SPARQL エンドポイントからデータを取得してユーザーの質問に答えるアプリケーションを構築します。例として用いるのは、2 人の監督の映画両方に出演した俳優を答えるアプリケーション、そしてどのミュージシャンがどのアルバムをリリースしたかを答えるアプリケーションの 2 つです。
    2009/07/21  
 
Linux KVM をベースとした ooRexx ビルド環境を構築する
パフォーマンス改善のために Linux KVM (Kernel Virtual Machine) を利用するようになった ooRexx を使用して、オンデマンド・ソフトウェア・ビルド・サービスを作成してください。KVM は、ユーザーのターゲット・ソフトウェアをビルドするゲスト・オペレーティング・システムに対し、ホストとして機能します。このビルドを管理し、その結果をユーザーが後で取得できるように保存するのは、Apache Web サーバーです。この記事を読んで、ビルド・サーバーをセットアップしてゲストを作成する方法、ビルド・リクエストをカスタマイズする方法、そしてビルド結果を編成し、それにアクセスする方法を学んでください。
    2009/07/14  
 
Flex SDK を Mate と PHP と組み合わせて使う
Mate は、UI (user interface) とサービスを MVC (Model-View-Controller) パターンで作成できる、イベント駆動の軽量なフレームワークです。Eclipse PDT (PHP Development Tools) と Flex SDK (Software Development Kit)、そして Mate フレームワークを使用してアプリケーションを作成する方法を学びましょう。この記事では Mate に関する既存のドキュメントを拡張し、ツールとして Eclipse PDT を使う方法に焦点を絞ります。
    2009/07/14  
 
SaaS を作成するための Flex 4 の機能
Adobe Flex SDK では、今までと同じ製品であることがわからないほど、エンタープライズ・レベルの開発に関して大幅な改善が行われました。この記事では、オープンソースの Flex 4 (ベータ) SDK を使って SaaS (Software as a Service) としての RIA を作成するための新しい特徴や機能について詳しく見て行きます。
    2009/07/14  
 
XML での文書生成と情報の再利用: 第 3 回 複数の出力フォーマットを持つ XML 文書の作成
XML は、多数の異なる文書作成用ソフトウェア・パッケージや本番環境などで使用できる文書を作成するのには最適なフォーマットです。連載 3 回目のこの記事では、1 つのソースから多種多様なフォーマットで出力を生成できる XML 文書を作成する方法を学んでください。
    2009/07/07  
 
XML での文書生成と情報の再利用: 第 1 回 XML を使用した文書のパブリッシング
XML は、あらゆる構造化データ・セットに含まれるデータ項目とサブコンポーネントを識別する手段となりますが、XML の根本は文書を作成してその出力を生成するところにあります。XML 文書マークアップのための明確なオープン・スタンダード、そして XML 文書の構文解析およびフォーマット変換に使用できる無料のツールの数々のおかげで、文書の作成とフォーマット設定用の完全な環境を UNIX や Linux システムに簡単にインストールして構成することができます。
    2009/07/07  
 
Java Web サービス: (WS-)Security に伴う高コスト
Web サービス・アプリケーションをセキュアにするためにWS-Security が提供する強力な機能は、多くのアプリケーションにとって不可欠なものです。しかしこれらの機能には、パフォーマンスとメッセージのーバーヘッドという点で、かなりの犠牲が伴います。Dennis Sosnoski による連載「Java Web サービス」では、今回、WS-Security または WS-SecureConversation を使用することが Axis2 のパフォーマンスに与える影響に着目し、HTTPS によるセキュア接続という単純な (そしてパフォーマンスに優れた) 方法を選ぶほうがふさわしい場合について説明します。
    2009/07/07  
 
XPCOM を使ってクライアント・サイドで OpenOffice 文書を動的に生成する
Mozilla の XPCOM (Cross Platform Component Object Model) フレームワークを利用すると、既存の XML コンテンツを OpenOffice 文書へと動的にエクスポートすることができます。このプロセスは、XSLT などの変換メカニズムでサポートされている他の任意タイプのコンテンツの場合も同様に機能します。この記事では、サーバー・サイドのソリューションに代わる、移植性とコスト効果の高いソリューションについて学びます。
    2009/07/07  
 
Eclipse RCP アプリケーションを国際化する
Eclipse の RCP (Rich Client Platform) はソフトウェア開発で広く受け入れられつつあります。多国籍企業では、世界中の顧客のために複数言語をサポートするソフトウェアを提供することがますます重要になってきています。この記事では RCP アプリケーションの UI 要素を国際化する方法を学びます。UI 要素の例として、ウィンドウ、メニュー、ツールバー、ダイアログ、ウェルカム・ページ、スプラッシュ・スクリーン、そして Eclipse の標準的な UI 要素を取り上げます。またサンプルの Hello World アプリケーションをとおして、国際化のためのプロセスを学びます。
    2009/07/07  
 
PHP でのオブジェクト指向: 関心の分離
関心の分離はオブジェクト指向による (OO: Object-Oriented) ソフトウェア設計の概念です。関心を分離すると、よりモジュール化されたアプリケーションを作成することができます。モジュール化されたアプリケーションでは、保守や新しい機能の追加を容易に行うことができます。PHP の OO 言語としての特徴を利用すると、設計コンセプトを適用することができるため、より堅牢で管理しやすいアプリケーションを作成することができます。
    2009/06/30  
 
Eclipse Galileo の接近調査
33 の主要なプロジェクトからなる Eclipse Galileo リリースには、Eclipse エコシステムの多様性とその内部で進んでいる革新が明らかに現れています。この記事では、そのうちいくつかの Galileo プロジェクトの概要について、その詳細を記載しているリソースへのリンクと併せて紹介します。
    2009/06/26  
 
洗練されたPerl: Perl と Amazon クラウド、第 5 回
この 5 回からなる連載では、Amazon の S3 (Simple Storage Service) と SimpleDB を利用した単純な写真共有 Web サイトを、Perl と Apache を使用して構築します。この第 5 回目では、mod_perl を利用したサイト全体のテンプレートを検証します。検証する対象は、索引用のテンプレート、アップロード用の 3 つのテンプレート (汎用、S3 フォーム用、URL 追加用)、画像とコメントの閲覧用のテンプレート、そしてある画像へのコメントを再帰的に閲覧する (つまりスレッドを順に追っていく) ためのテンプレートです。
    2009/06/23  
 
PHP での名前空間を適切に作成する
PHP V5.3 では、PHP のクラス、定数、関数に名前空間を使用できるようになりました。名前空間を使用することによって、名前の衝突を避けることができ、また PHP コードにコンテキストを指定できるようになります。この記事では、名前空間を最大限に活用できるように、名前空間を作成する際の指針をいくつか紹介します。
    2009/06/23  
 
実用的な Groovy: クロージャー、ExpandoMetaClass、そしてカテゴリーによるメタプログラミング
Groovy スタイルのメタプログラミングの世界に入りましょう。クラスに対して (しかも Java クラスや、さらには final が指定されている Java クラスにさえ)、実行時に動的に新しいメソッドを追加できる機能は、信じられないほど強力です。本番コードの作成に使われる場合であれ、ユニット・テストの作成に使われる場合であれ、あるいはその他の目的で使われる場合であれ、Groovy のメタプログラミング機能は、経験が豊富すぎて新しいものに関心がない Java 開発者にとっても興味深いはずです。
    2009/06/23  
 
より優れた Web ページを組み立てるために
CSS (Cascading Style Sheets) フレームワークは、Web ページの設計、開発を効率化するとともに、単純化します。さらに CSS フレームワークで作成した Web ページは、すべてのブラウザーでより統一された結果をもたらします。この記事では、それぞれに独特な理念を持つ 2 つの CSS フレームワークを取り上げて検討します。
    2009/06/23  
 
Android で XML を扱う
Android は、モバイル機器を対象としたオープンソースのオペレーティング・システムとして最新のものであり、同時に SDK でもあります。Android を利用すると、強力なモバイル・アプリケーションを作成することができます。そのアプリケーションが Web サービスにアクセスできる場合には一層魅力的なアプリケーションになります。その場合、Web の言語である XML を使用する必要があります。この記事では、Android で XML を扱うためのさまざまな方法について、またそれらの方法を使って独自の Android アプリケーションを作成する方法について説明します。
    2009/06/23  
 
コードレビューの道具、使っていますか?
コードレビューをはじめとしたソフトウェアレビュー/ソフトウェアインスペクションをスムーズに実施できる道具(技法、仕組み、ツール)を紹介します。レビュー/インスペクションは人手によるところが大きく自由度の高い活動ですが、技法、仕組み、ツールの利用によって半自動化、定型化、効率化できる部分が多くあります。本記事では、それらの道具をレビュー/インスペクションのフェーズ毎に紹介します。また、その一端を他のレビュー/インスペクション技術者とともに実感できるイベント「ソフトウェアインスペクションワークショップ2009」(7月2日開催)の紹介もします。
    2009/06/19  
 
Java Web サービス: Axis2 WS-Security による署名および暗号化
この記事では、まず公開鍵暗号方式の原理を紹介します。その後、WS-Security がこれらの原理を適用して、公開鍵と秘密鍵のペアに共通鍵を組み合わせて SOAP メッセージに署名を付け、暗号化する方法を説明します。Dennis Sosnoski の連載「Java Web サービス」では今回、WS-Security と WS-SecurityPolicy の署名機能と暗号化機能について、Axis2 と Rampart を用いたサンプル・コードと併せて解説します。
    2009/06/16  
 
Android のセンサーを活用する
Android はアプリケーション開発のためのリッチなプラットフォームであり、魅力的なユーザー・インターフェース要素とデータ管理機能を備えています。また Android はハードウェアとのインターフェースも豊富に提供しています。この記事では、Android が持つさまざまなセンサーとのインターフェースを利用して、環境をモニタリングする方法を学びます。サンプル・コードでは、Android を搭載した携帯電話で音声を録音する方法を説明します。独自のベビー・モニターを作成したい場合や、自分の声によって携帯電話や家のロックを解除したい場合などのために、Android を搭載した機器のハードウェア機能を活用する方法を学びましょう。
    2009/06/16  
 
洗練されたPerl: Perl と Amazon クラウド、第 4 回
この 5 回からなる連載では、Amazon の S3 (Simple Storage Service) と SimpleDB を利用した単純な写真共有 Web サイトを、Perl と Apache を使用して構築します。この第 4 回目では、mod_perl を利用したサイト全体のコード・ベースを検証し、最上位レベルの構成方法、それぞれのハンドラーで行っている内容、外部依存関係の設定方法などについて説明します。
    2009/06/14  
 
洗練されたPerl: Perl と Amazon クラウド、第 3 回
この 5 回からなる連載では、Amazon の S3 (Simple Storage Service) と SimpleDB を利用した単純な写真共有 Web サイトを、Perl と Apache を使用して構築します。この第 3 回目では、この写真共有 Web サイトと SimpleDB とのやり取りを説明し、アップロードされるファイルの SimpleDB レコードを URL を使って作成する方法を学びます。また、ある写真に特定のユーザーが書き込んだコメントを SimpleDB レコードとして作成、編集、削除する方法も学びます。
    2009/06/14  
 
KDE 4 Plasmoid 入門
KDE 4 では数多くの画期的な新技術を導入しています。そのうちの 1 つが、KDE 4 のデスクトップ・シェルを形作る機能 Plasma です。この記事では、デスクトップ・エクスペリエンスを大幅に改善する単純な Plasma アプレット (Plasmoid) を作成する方法、そして Plasmoid を単純なメモリー・モニターに変身させる方法を紹介します。
    2009/06/14  
 
Grails をマスターする: ファイルのアップロードと Atom の配信
連載「Grails をマスターする」では今回、Scott Davis が Grails アプリケーションにファイルをアップロードする方法、そして Atom 配信フィードをセットアップする方法を紹介します。ファイルをアップロードする機能と Atom の配信機能が揃えば、Blogito は本格的なブログ・サーバーに仕上がります。
    2009/06/09  
 
Android によるネットワーキング
Android はアプリケーション開発のためのリッチなプラットフォームであり、魅力的なユーザー・インターフェース要素とデータ管理機能を提供しています。Android では、世界のさまざまなネットワークに接続するアプリケーションを開発するために、豊富なネットワーキング機能を活用することができます。皆さんはどこに接続したいでしょうか。例えば皆さんは世界に対して、皆さんが現在行っていることのすべてを Twitter を使って伝えたいかもしれません。あるいは、近くのコインランドリーやデリのカウンターで自分の順番が来たことを通知して欲しいかもしれません。Android を世界に接続し、皆さんについて伝えることに関心がある読者は、この記事を読んでください。
    2009/06/09  
 
多忙な Java 開発者のための Scala ガイド: Scitter ライブラリーを機能強化する
Scala の概要について説明することは楽しいのですが、Scala を実用的な方法で使ってみないと、Scala を開発者の「おもちゃ」として捉える場合と、仕事で使う場合の違いはわからないかもしれません。今回は、Twitter にアクセスするための Scala によるクライアント・ライブラリー Scitter を紹介した前回の記事の続きとして、Scala を熱烈に支持する著者の Ted Neward が、前回にも増して便利で興味深い一連の機能を、このクライアント・ライブラリーに追加します。
    2009/06/02  
 
Web 時代の非リレーショナルデータベース: 第 4 回 Apache CouchDB の便利な機能を習得する
本連載では今Web開発者が注目するApache CouchDB[1]に関する技術情報を紹介します。今回は5回シリーズの第4回として、CouchDBをより便利に扱うためのJSONドキュメントやREST APIの詳細を学びます。
    2009/05/29  
 
Django の admin をカスタマイズする
Django に提供されている組み込みの管理コンソールは Django の最大のセールスポイントの 1 つです。しかし単にルック・アンド・フィールをカスタマイズするだけでなく、いくつかのモデル・フィールドをカスタマイズしたい場合にはどうすればよいのでしょう。ソースを変更せずに既存の admin アプリケーションを拡張する方法を学びましょう。
    2009/05/26  
 
Linux に GNU ARM ツールチェーンをインストールする
ARM コアのさまざまなバージョンをプログラミングするためのツールは数多くありますが、特によく使われるツール・セットが GNU ARM ツールチェーンです。ARM コアを使った組み込みシステムの開発について、また GNU ツールのインストール方法と使い方について学びましょう。
    2009/05/20  
 
PHP でコマンドライン・ツールを使う
この記事では、スクリプトとコマンドライン・ツールを適切に統合する方法を学び、shell_exec()、exec()、passthru()、system() の使い方、コマンドラインに情報を安全に渡す方法、コマンドラインから情報を安全に取得する方法を説明します。
    2009/05/19  
 
実用的な Groovy: XML を作成し、構文解析し、容易に扱う
Groovy を使うと XML をどれほど容易に扱えるようになるかを学びましょう。今回の「実用的な Groovy」では、MarkupBuilder や StreamingMarkupBuilder を使って XML を作成する場合であれ、あるいは XmlParser や XmlSlurper を使って XML を構文解析する場合であれ、Groovy がこの XML という汎用データ・フォーマットを処理するための強力なツール・セットになることを、著者の Scott Davis が説明します。
    2009/05/19  
 
SketchUp と Eclipse による 3D モデリング: 第 2 回 SketchUp スクリプト言語でのコーディング
スクリプトによって、SketchUp モデルにオートメーション、アニメーション、そして幾何学的計算を追加することができます。適切なコードを使えば、SketchUp を Maya、あるいは AutoCAD のような機械設計ツールに変身させることさえできます。2 回連載の「SketchUp と Eclipse による 3D モデリング」の第 2 回目となるこの記事では、SketchUp スクリプトで用いるさまざまな基本クラスについて説明し、これらの基本クラスの使用例を紹介します。基本クラスを使って線分や面からなる 3D 形状を作成した後は、色とイメージを使って面ごとに外観を構成することができます。
    2009/05/12  
 
Android 開発入門
Android は、Linux V2.6 カーネルをベースにした完全な動作環境です。当初 Android を採用する対象は、スマートフォンやそれより低価格の折り畳み式携帯電話などといったモバイル・フォンの分野でした。しかし Android のあらゆるタイプのコンピューティング・サービスと充実した機能サポートは、モバイル・フォン市場の枠を超えて拡張する可能性を秘めています。Android は他のプラットフォームやアプリケーションにも役立つはずです。この記事を読んで、Android プラットフォームの概要を知り、基本的な Android アプリケーションのコードを作成する方法を学んでください。
    2009/05/12  
 
オープンソース・クラウド・コンピューティングの実態: 第 3 回 クラウドの管理
前回までの記事で、自分のニーズを最適に満たすクラウド・コンピューティング・プラットフォームを選び、そのプラットフォーム上で実行するように適切に設計されたアプリケーションを用意できました。これで難関は越えた、と思っているかもしれませんが、先を急いではいけません。クラウド・アプリケーションの場合にも、自分が所有するサーバーでアプリケーションを実行する場合に懸念されるのと同じ、あらゆる事柄を検討しなければならないことに変わりはありません。そのなかには、デプロイメント、テスト、監視などが含まれますが、こうした作業は一筋縄ではいかない可能性があります。というのも、クラウド・アプリケーションは他の誰かのマシンで実行されることから、そのマシンにアクセスできなかったり、そのマシンについての情報がほとんどなかったりという事態が考えられるからです。連載「オープンソース・クラウド・コンピューティングの実態」を締めくくるこの記事では、クラウド内のアプリケーションの管理に役立ついくつかのオープンソースのツールと技術について学びます。
    2009/05/05  
 
多忙な Java 開発者のための Scala ガイド: Scala + Twitter = Scitter
Scala の概要について説明することは楽しいのですが、このシリーズの読者の大部分にとっては Scala を実用的な方法で使ってみないと、Scala を開発者の「おもちゃ」として捉える場合と、仕事で使う場合の違いはわからないかもしれません。今回の記事では Ted Neward が Scala を使って、人気のマイクロブロギング・システムである Twitter にアクセスするためのクライアント・ライブラリーの基本フレームワークを作成します。
    2009/05/05  
 
EasyMock を使用してテストを容易にする
この記事では著者の Elliotte Rusty Harold が、モック・オブジェクト、具体的には EasyMock フレームワークを使って、いくつかの困難なユニット・テストを容易に行う方法を説明します。このオープンソース・ライブラリーを利用すると時間を節約することができ、またモック・オブジェクトのコードが簡潔で読みやすいものになります。
    2009/04/28  
 
QueryPath PHP ライブラリーの紹介
HTML、HTTP、XML の 3 つは、誰もが認める Web 技術の中心的存在ですが、PHP 開発者にとっては、この 3 つを操作するのは苛立たしい作業になりがちです。そこで、jQuery JavaScript ライブラリーの PHP 版として新たに登場したQueryPath ライブラリーには、XML、HTML、HTTP を効率的に操作するための API が用意されています。QueryPath が提供するこの堅牢ながらも単純な API を使用すると、Web ページから Web サービス、SVG から SPARQL、そして RDF から Atom に至るまでの最新の Web 開発を PHP で行うことができます。この記事では QueryPath オブジェクトを作成する方法、XML および HTML をトラバースして操作する方法を説明し、最後に QueryPath を使用して Web サービス (Twitter) にアクセスする例を紹介します。
    2009/04/28  
 
Grails をマスターする: 認証と許可
Grails は、単純なログイン・インフラストラクチャーからロール・ベースの許可に至るまで、セキュアな Web アプリケーションを構築するために必要なあらゆる基本ビルディング・ブロックを提供します。連載「Grails をマスターする」では今回、Scott Davis が Grails アプリケーションをセキュアにするための実践的な方法を説明します。また、アプリケーションのセキュリティー機能を新たな方向へと展開させる上で役に立つプラグインについても学んでください。
    2009/04/28  
 
Dojo 1.x を使ってウィジェットを開発する
Dojo JavaScript ツールキットを使用して HTML ウィジェットを開発する上での基本を学んでください。この記事では Dojo ツールキットについて紹介し、開発プロセスに役立ついくつかの例を記載します。単純なウィジェットから次第に複雑なウィジェットの例へと進むなかで、開発段階で発生する可能性のある共通の問題を明らかにし、解決します。
    2009/04/28  
 
企業内ウィキにシグネチャを: 第 2 回 シグネチャによるウィキへの参加動機の強化
ウィキは現在、企業内への導入、見当が広まりつつあるExnterprise2.0ツールの一つですが、他に比べて利用、定着が進みにくいのが実情です。本記事では、他ツールとの違いとしてコンテンツの文責者、貢献者が不分明であることとその影響の可能性を検討し、この点の改善を提案します。連載第二回では、一般的なウィキへの参加動機を探り、参加動機の強化のためにシグネチャの明示を導入することを提案します。
    2009/04/24  
 
企業内ウィキにシグネチャを: 第 3 回 企業内ウィキでのシグネチャの役割
ウィキは現在、企業内への導入、見当が広まりつつあるExnterprise2.0ツールの一つですが、他に比べて利用、定着が進みにくいのが実情です。本記事では、他ツールとの違いとしてコンテンツの文責者、貢献者が不分明であることとその影響の可能性を検討し、この点の改善を提案します。連載第三回では、企業内ウィキに焦点をあててシグネチャの必要性を再確認し、同時に参加動機付けの他にもシグネチャを導入することに価値があることを見ていきます。
    2009/04/24  
 
企業内ウィキにシグネチャを: 第 1 回 ウィキサイトの規模不足を考える
ウィキは現在、企業内への導入、検討が広まりつつあるEnterprise2.0ツールの一つですが、他に比べて利用、定着が進みにくいのが実情です。本記事では、他ツールとの違いとしてコンテンツの文責者、貢献者が不分明であることとその影響の可能性を検討し、この点の改善を提案します。連載第一回では、一般的なウィキサイトの規模感と、規模の必要性、特にコンテンツ量とコンテンツ作成・更新への参加者数の必要性を説明します。
    2009/04/24  
 
Eclipse RCP を使ってモバイル・ワークフォースのオペレーションをサポートする
現代の労働者はモバイル環境で働くことが多くなっています。彼らは、デスク上に置かれたコンピューターや有線ネットワークといった標準的な作業ツールを使える環境とはかけ離れたフィールドで多くの作業を行います。モバイル機器が豊富になったとは言え、ネットワークに接続できるのはワイヤレスでアクセスできる地域に限定されています。そこで、ネットワークへの接続が制限されていたり、あるいはまったくネットワークに接続できなかったりする遠隔地で働かなければならないチームをサポートするための、オープンソースの Eclipse RCP (Rich Client Platform) をベースとした Mobile Workforce Framework の開発について学びましょう。この記事では、遠隔地で働く無数のリモート・チームに共通のオープンソース・プラットフォームを提供することの価値、データ同期のために費やされる紙と移動を削減する方法、そしてネットワークが使用できない状況で紙を使わずに重要な情報を記録するように改善された方法に焦点を絞ります。この、Maestro とも呼ばれる Mobile Workforce Framework プロジェクトは、Eclipse RCP を使用することで、アーキテクチャー決定要因 (同期化、プラグイン機能、オフラインのサポートなど) のどれほど多くを満たすことができるかを明らかにします。
    2009/04/21  
 
ウィキ・ソフトウェアを理解する
人々がウィキについて考える場合、ほとんどの場合は Wikipedia (ウィキペディア) を頭に浮かべます。しかし企業は、Web サイトの構築やオンライン・ユーザー・マニュアルの管理、また従業員同士でのコラボレーションの推奨などのためにウィキ・ソフトウェアを使うことによって、ウィキ・ソフトウェアが予想以上に活用できることに気付いています。コラボレーションや情報共有の実現に成功した多くのケースで MediaWiki が使われていた様子を調べてみましょう。
    2009/04/21  
 
Clonezilla を使って仮想 Linux 環境に移行する
この記事では、オープンソースのクローニング・ソフトウェア Clonezilla Live を使って物理サーバーを仮想サーバーに変換する方法を学びます。具体的には、イメージ・ベースの手法を使って物理システムから仮想システムへ移行する方法を学びます。
    2009/04/21  
 
Common Public License (CPL) に関する FAQ
この FAQ は、既に EPL (Eclipse Public License) に置き換えられている CPL に関して一般に寄せられる質問に対する回答です。この FAQ はあくまでも情報提供のみを目的としたものであり、CPL の条項の一部ではなく、また CPL の条項を変更、修正、補足するものでもありません。CPL は法的な契約であり、CPL の下でライセンスされる対象物に与えられる権利を管轄するものであるため、CPL を注意深く読む必要があります。この FAQ と CPL との間に齟齬がある場合には、CPL の条項が優先します。この FAQ は法的な助言と見なすべきものではありません。法的な助言が必要な場合には、皆さん自身の法務担当者と相談する必要があります。
    2009/04/16  
 
オープンソース・クラウド・コンピューティングの実態: 第 2 回 クラウドに合わせた開発
「Write Once, Run Anywhere (一度書けば、どこででも実行できる)」という言い回しは、皆さんも耳にしたことがあるでしょう。しかし、クラウド内で実行するアプリケーションを作成する場合には、自分が何をしているのかをしっかり把握していなければなりません。連載「オープンソース・クラウド・コンピューティングの実態」の第 2 回では、PHP を使って Aptana クラウド・コンピューティング・プラットフォームで実行するアプリケーションを作成する方法を説明し、クラウド・アプリケーションの設計と従来の N 階層アプリケーションの設計との重要な違いについて詳しく探ります。これらの概念については、お馴染みのオープンソース技術を使用してクラウド・コンピューティングの利点を生かした一見単純そうなアプリケーションを用いて説明します。
    2009/04/14  
 
SketchUp と Eclipse による 3D モデリング: 第 1 回 SketchUp と Eclipse を結ぶブリッジを作成する
Google の最近のツールでとりわけ人気を集めている SketchUp は、3D モデリング作業の苦労を取り除いてくれるツールです。しかも SketchUp は手動でモデルを作成する作業を容易にするだけでなく、設計プロセスを Ruby スクリプトによって自動化することもできます。これらの Ruby スクリプトを管理および編集する作業は非常に重要なことから、Eclipse のような完全な機能を備えた開発環境があると役に立ちます。この記事を読んで、Eclipse でスクリプトを編集し、そのスクリプトを SketchUp で自動的に実行できるように SketchUp と Eclipse を構成する方法を学んでください。
    2009/04/14  
 
洗練されたPerl: Perl と Amazon クラウド、第 2 回
この 5 回からなる連載では、Amazon の S3 (Simple Storage Service) と SimpleDB を利用した単純な写真共有 Web サイトを、Perl と Apache を使用して構築します。この第 2 回目では、HTML フォームを使って Web ページから S3 へファイルをアップロードする方法を説明します。これにより、サーバーの負荷を最小限にとどめることができ、また強固なセキュリティー・ポリシーを維持することができます。
    2009/04/08  
 
オープンソース・クラウド・コンピューティングの実態: 第 1 回 すべてのクラウドが同じというわけではありません
会社の CTO があなたにクラウド・コンピューティングに関する戦略を報告するよう言ってきました。しかも、明日中にです。選択肢はさまざまにあり、それぞれに違う点も似ている点もたくさんあります。この記事では、クラウド・コンピューティングに約束された能力を利用しようとしている組織のために、オープンソースの技術を中心に選択肢のいくつかを検討します。Amazon、Microsoft、Google、IBM、Aptana、Heroku、Mosso、Ning、そして Salesforce などのプロバイダーを取り上げ、それぞれのプラットフォームの利点と欠点を比較し、各プラットフォームでサポートされるオープンソースの技術および独自技術のタイプを調べます。この記事を読んで、ニーズに合ったプラットフォームを選び出す方法を学んでください。
    2009/04/07  
 
XML: GWT と PHP とのブリッジ
GWT (Google Web Toolkit) アプリケーションでは、昔ながらの Java の流儀でサーブレットに接続することもできますが、PHP による Web サービスを使って XML でデータを送受信することもできます。この記事では XML 文書の生成方法と処理方法を Java 言語の場合と PHP の場合の両方について説明します。
    2009/04/07  
 
Django アプリケーションを本番サーバーにデプロイする方法
Django はデータベース駆動型 Web サイトと Web アプリケーションの作成プロセスを簡易化することに重点を置く Python ベースのオープンソース Web アプリケーション・フレームワークです。このフレームワークには開発用 Web サーバーが組み込まれているため、Django アプリケーションの開発をすぐに始めることができますが、このサーバーは本番環境で使用するには適していません。そのため、Django アプリケーションを Web サーバーにデプロイする際には追加の作業が必要になります。この記事では、まず Django フレームワークについて概説し、このフレームワークをローカル・マシンにインストールする手順を説明します。続いて Django アプリケーションの構成内容と、アプリケーション用に作成された自動管理インターフェースについて詳細を調べた後、Apache が mod_python を有効にした状態で稼働するサーバー上で Django アプリケーションを Web サーバーにデプロイする方法を説明します。最後に、アプリケーションの要件が拡大するのにあわせて、どのように Django アプリケーションをスケーリングできるか、またスケーリングすべきかを説明します。
    2009/04/07  
 
CouchDB を探る
リレーショナル・データベースでは、厳密に構造が定義され、決められた方法に従ってソフトウェア・アプリケーションのデータの保守が行われます。Apache によるオープンソースの CouchDB ではデータの保存方法として、スキーマなしのドキュメント指向データベース・モデルと呼ばれる新しい方法が提供されています。リレーショナル・モデルではデータを完全に構造化して保存しますが、CouchDB では JavaScript ベースのビュー・モデルを使って、構造化された集約を生成するとともに、半構造化ドキュメントからレポートを生成し、半構造化形式でデータを保存します。CouchDB はターゲットを Web アプリケーションに絞ってゼロから開発されたもので、Web アプリケーション開発のためのデータベースとしてデファクト・スタンダードになることを目指しています。
    2009/03/31  
 
洗練されたPerl: Perl と Amazon クラウド、第 1 回
この 5 回からなる連載では、Amazon の S3 (Simple Storage Service) と SimpleDB を利用した単純な写真共有 Web サイトを、Perl と Apache を使用して構築します。この第 1 回目では、S3 と SimpleDB のアーキテクチャーについて調べ、写真共有サイトの設計を行うことで、S3 と SimpleDB の長所と短所を説明します。
    2009/03/31  
 
魅力的な Python: RPyC による分散コンピューティング
RPyC (Remote Python Call) は多くのマシンやプロセスに Python のプロセスを統合するためのシームレスなライブラリーです。この記事では、RPyC を XML-RPC や Pyro といった他の Python の分散フレームワークと比較した場合の利点と欠点について調べます。また RPyC ライブラリーとはどのようなものか感覚をつかめるように、RPyC を使用した簡単な例もいくつか紹介します。
    2009/03/31  
 
XQuery でダッシュボードを作成する
1980年代に出現したデジタル・ダッシュボードの多くは、(あからさまとは言わないまでも) 自動車のダッシュボードに似たお粗末なものでした。説得力のある方法でビジネス・データを公開していたダッシュボードは、ごくわずかしかありません。現在、Web ベースのダッシュボードが説得力のある方法でのビジネス・データの公開を実現しようとしています。この記事では、優れたダッシュボードの条件を見出すとともに、重要業績評価指標 (KPI) を特定して活用することによって、より効果的なデジタル・ダッシュボードにする方法を説明します。そして最後に、eXist XML データベースと XQuery を使って Web ダッシュボードを作成する方法を学びます。
    2009/03/31  
 
OSGi と Spring: 第 2 回 Felixを使用して OSGi の Spring バンドルを作成し、デプロイする
Felix コンテナー内で Spring DM フレームワークを使用して、Java クラスを OSGi バンドルとして作成し、パッケージ化してください。この連載の第 2 回では、Spring フレームワークを使ってバンドルを作成し、そのバンドルを Felix ランタイム環境にデプロイする方法を説明します。単純な Spring ベースの構成によって、コアとなる OSGi フレームワークの依存関係が取り除かれる仕組みを学んでください。
    2009/03/30  
 
Ganglia と Nagios: 第 2 回 Nagios でエンタープライズ・クラスターを監視する
2 回の記事からなるこの連載では、オープンソースのツール、Ganglia と Nagios を使ってデータ・センターを監視する実践的な方法を取り上げます。第 2 回のこの記事で説明するのは、Nagios をインストールして構成する方法です。Nagios は、よく使われているオープンソースのコンピューター・システムおよびネットワーク監視アプリケーション・ソフトウェアで、ホストとサービスを監視し、問題が発生するとユーザーにアラートを出します。この記事ではまた、第 1 回で説明した Ganglia に Nagios を統合し、標準クラスター、グリッド、そしてクラウドに対応するための 2 つの機能を Nagios に追加して、ネットワーク・スイッチとリソース・マネージャーの監視を支援する方法についても説明します。
    2009/03/25  
 
サービス・コンポーネント・アーキテクチャー (SCA) によって複数の異なる技術からコンポーネントを呼び出せるようにする
サービス・コンポーネント・アーキテクチャー (SCA) とは、基礎となるコンピューター・サービスを抽象化することによって、システムの柔軟性を高め、さまざまに異なる技術で実装されたサブシステムを組み込めるようにする新しい技術のことです。SCA はアクセス技術、実装、そしてプロトコルに関する多くの詳細をミドルウェア層に移し、ビジネス・ロジックから切り離します。しかし、このような抽象化によって犠牲を強いられる開発者もなかにはいます。ビジネス・アプリケーションを理解し、デバッグするのが難しくなるためです。この記事を読んで、さまざまなプロトコル・バインディングと実装タイプで呼び出しが行われるなかで、コンポーネントがどのように呼び出されるかを学んでください。この記事ではオープンソースの Apache Tuscany SCA ランタイムを使用した例を用いて、SCA に内在する複雑さについて説明します。
    2009/03/24  
 
渋谷テクニカルナイト講師陣が語る新技術動向: 第 6 回: はじめて使うProject Zero
ここ数年で、Webアプリケーション開発の分野は大きく様変わりしました。Web2.0というキーワードで代表されるような、高機能で使い勝手のよいWebアプリケーションが当たり前のように求められるようになり、AjaxやREST、マッシュアップをいかに使いこなすかということが重要になってきています。また、従来に比べ開発期間が短縮される傾向にあることも、最近のWebアプリケーション開発の特徴ではないでしょうか。
    2009/03/23  
 
Android を使用してクラウドの上を行く
場所を問わずに高度なクラウド・コンピューティング・アプリケーションの実行を可能にするオープンソースのオペレーティング・システム、Android が一世を風靡しています。T-Mobile G1 スマートフォンなどのバッテリー駆動の機器で優れた効率性を発揮するように設計されたAndroid の中核は Linux です。そしてクラウド・コンピューティングに合わせてカスタマイズしたセキュア・アプリケーションを作成できるように、Android プログラミング・モデルに従った複数のレイヤーがあります。Android で新たな高みへの飛躍を果たし、今までに経験したことのないようなモバイル・コンピューティングを経験してください。
    2009/03/17  
 
Open Financial Exchange ファイルに XML の力を活用する
会計帳簿を付ける作業は継続的に行う必要がありますが、金融機関から提供されるファイルが、顧客が選択した会計パッケージにインポートできるようになれば、会計帳簿を付ける作業が多少楽になります。しかしそうしたファイルは XML と互換性のない OFX (Open Financial Exchange) フォーマットでしか得られないことが多いため、会計計算のプログラマーにとっては問題です。そこでこの記事では、PHP の文字列置換を使って OFX ファイルを XML 対応にする方法を学びましょう。この方法を学ぶことによって、XML の構文解析機能と分解機能を OFX ファイルに適用し、会計計算のプログラミングを正確なものにすることができます。
    2009/03/17  
 
XQuery をプレゼンテーション層に使用する
多くの Web アプリケーションでは、モデル・ビュー・コントローラー (MVC) パターンを用いて 3 つの関心事を切り分けます。プレゼンテーションに XQuery を使用することで、ビューを担当する開発者は、このアプリケーションで使用しているアプリケーション・サーバーやプログラミング言語がどんなものであってもそれに縛られることなく、強力なプレゼンテーション・エフェクトを作成することができます。この記事では、他のビュー技術に勝る XQuery を使用するメリットと、XQuery をプレゼンテーション層に実装する方法を詳しく説明し、現実に即した実装例を紹介します。
    2009/03/10  
 
Eclipse PDT を使って WordPress プラグインを作成する
WordPress は PHP で作成された Web パブリッシングのプラットフォームであり、ストレージに MySQL を使用しています。このプラットフォームは、フィルターやアクションを追加するためのプラグインを作成することで拡張することができます。一方、Eclipse の PDT (PHP Development Tools) V2.0 プロジェクトを利用すると、Eclipse を使って PHP アプリケーションを作成することができます。この記事では、PDT を使ってプラグインを作成することで、WordPress を拡張する方法を学びましょう。
    2009/03/10  
 
Grails によるリッチ・インターネット・アプリケーション: 第 2 回 Grails と Google Web Toolkit
2 回連載の第 2 回では、第 1 回で作成した Grails 駆動の Web サービスを拡張していきます。そのために新たに検索ページを作成しますが、今回アプリケーションの作成に使用するのは、GWT (Google Web Toolkit) です。さらに、Ext GWT ライブラリーの一層リッチな UI ウィジェットも追加します。
    2009/03/10  
 
Ganglia と Nagios: 第 1 回 Ganglia でエンタープライズ・クラスターを監視する
2 回の記事からなるこの連載では、オープンソースのツール、Ganglia と Nagios を使ってデータ・センターを監視する実践的な方法を取り上げます。第 1 回のこの記事で説明するのは、階層型設計に基づくハイパフォーマンス・クラスターを対象としたスケーラブルな分散監視システム、Ganglia をインストールして構成する方法です。また、Ganglia プラグインを作成したり、外部ソースのスプーフィングを有効にしたりすることで、監視機能をさらに追加する方法も学んでください。
    2009/03/04  
 
jQuery と PHP を使って Ajax で駆動する Web ページを作成する
軽量な JavaScript フレームワーク、jQuery を使って PHP ページに Ajax (Asynchronous JavaScript + XML) 機能を追加する方法を学んでください。
    2009/03/03  
 
PHP を使用して Twitter を RSS に変換する
この記事ではまず Twitter の基礎を説明した後、PHP 開発者のために、公開 PHP ライブラリーを使って Twitter を RSS (Rich Site Summary) フィードとして提供する方法を説明します。
    2009/03/03  
 
Jaxer を利用してサーバー・サイドで E4X を使う
E4X (ECMAScript for XML) 標準は JavaScript 開発者にとって XML を扱うための強力な API です。E4X は Internet Explorer ではサポートされていないため、あまり頻繁には使われていないかもしれませんが、Jaxer を利用してサーバー上で JavaScript を使う場合には、Internet Explorer が E4X をサポートしていないことは問題ではありません。この記事では、JavaScript と E4X とを使うことによって、いかに容易にサーバー上で XML を処理することができるのかを説明します。E4X という重要な要素を Jaxer と組み合わせると、JavaScript 以外には何も使用せずに Ajax アプリケーションを作成することができます。
    2009/03/03  
 
AIM 対応のアプリケーションを Eclipse で作成する
今日のアプリケーションは、多くの人が既に使用しているインターフェースである IM (Instant Messaging: インスタント・メッセージ) を利用しています。アプリケーションに IM を統合している理由は、IM によるインターフェースが使いやすく、多くの人がそのインターフェースに慣れていて、しかも既に利用しているからです。IM アプリケーションは多くのモバイル・プラットフォームでも利用可能であり、ユーザーは IM を利用することでモバイル機器からアプリケーションとインターフェースを取れるようになります。
    2009/02/24  
 
Grails によるリッチ・インターネット・アプリケーション: 第 1 回 Grails と Flex を使って Web アプリケーションを構築する
リッチ・インターネット・アプリケーション (RIA) では、デスクトップ・アプリケーションが持つダイナミズムと機能を、ブラウザーを介して実現します。その重要な特徴の 1 つは、プレゼンテーション層をクライアントに移し、そのプレゼンテーション層をサーバー・サイドの堅牢な RESTful サービス層が支えることです。この概念は現在、SOUI (Service Oriented User Interface)、SOFEA (Service Oriented Front End Architecture) といった用語で広まってきています。2 回連載の第 1 回目となるこの記事では、Groovy の Grails Web アプリケーション・フレームワークを使うと、いかに容易に Web サービスのバックエンドを作成できるかを明らかにします。そしてこのバックエンドを、Adobe の Flex フレームワークで開発した RIA に接続します。
    2009/02/24  
 
PHP V5.3 では何が新しいのか: 第 5 回 PHP V5.2 からのアップグレード
この「PHP V5.3 では何が新しいのか」シリーズでは、まもなくリリースされようとしている PHP V5.3 の、非常に興味がそそられる新しい機能について説明します。第 1 回では PHP V5.3 でのオブジェクト指向プログラミングに関する変更とオブジェクトの処理方法に関する変更を説明しました。第 2 回ではラムダ関数とクロージャーについて説明しました。第 3 回では名前空間について説明しました。この PHP V5.3 リリースの機能の中で、名前空間は最も期待され、また最も議論が多かった機能の 1 つです。第 4 回では PHP 内部で使用されるアーカイブ・フォーマットである Phar の詳細について説明しました。このシリーズの最終回である今回は、PHP V5.2 からアップグレードする際に考慮すべき点について説明します。その内容としては、PHP V5.3 で行われた後方互換性がない変更や、今後のバージョンで削除されるために非推奨となった機能、さらには PHP の既存の機能に対して強化された機能についても説明します。
    2009/02/24  
 
PHP を使って Twitter 風のシステムをサイトに構築する
PHP を使ってアプリケーションに Twitter 風のインターフェースを追加する方法を学んでください。具体的には、この記事ではユーザーが投稿を追加できるようにする方法、投稿を受信したいという他のユーザーに投稿を配信する方法、そしてユーザーが他のユーザーの投稿をフォローできるようにする方法を説明します。
    2009/02/24  
 
DB2 Express-C 9.5 for Windows クイックインストール
このドキュメントではDB2 Express-C 9.5.2 for Windowsをインストールする方法をご紹介します。 (9.5用のインストール資料としても使用できます)
    2009/02/20  
 
実用的な Groovy: Java プログラマーのための DSL としての Groovy
Groovy のエキスパートである Scott Davis が、2006年以来休止していた「実用的な Groovy」シリーズを再開します。再開第 1 回目の今回は、最初にここ数年の Groovy に関する出来事を振り返り、Groovy とそれを取り巻く環境についての現状を紹介します。そして、2009年の現在、Groovy の学習を始めることがいかに容易であるかを実感してもらいます。
    2009/02/17  
 
汎用の NFS を使って統一的なマウントを行う
複数の NFS バージョンのエクスポートが同時に存在する場合、統一的なマウントを効率的に行うためには汎用の NFS マウント・ユーティリティーが必要です。汎用の NFS マウント・ユーティリティーを利用することで、複数の NFS バージョンを扱う際の煩雑さを軽減し、またそれらのバージョンの管理を単純化する方法を学びましょう。この記事では、汎用 NFS マウントの概念、このシステムの利点と応用に関する概要、そして全体的な設計の詳細について説明します。
    2009/02/11  
 
Python 3: 第 2 回: 高度な話題
Python 3 は Guido van Rossum による強力な汎用プログラミング言語の最新バージョンです。Python 3 は 2.x シリーズとの後方互換性をなくし、その代わり構文に関するいくつかの問題を解決しています。この記事は前回の記事の続きです。今回はこの 2 回シリーズの記事の第 2 回目として、Python の新しい機能に関する説明を続けるとともに、抽象基底クラス、メタクラス、修飾子における変更点などの、より高度なトピックの詳細について説明します。
    2009/01/30  
 
PHP V5.3 では何が新しいのか: 第 4 回 : Phar アーカイブを作成し、使用する
PHP V5.3 がまもなくリリースされようとしています。この「PHP V5.3 では何が新しいのか」シリーズでは、このリリースの、非常に興味がそそられる新しい機能について説明します。第 1 回では PHP V5.3 でのオブジェクト指向プログラミングに関する変更とオブジェクトの処理方法に関する変更を説明しました。第 2 回ではクロージャーとラムダ関数について説明しました。そして第 3 回では名前空間について説明しました。この PHP V5.3 リリースの機能の中で、名前空間は最も期待され、また最も議論が多かった機能の 1 つです。この第 4 回では、PHP 内部で使用されるアーカイブ・フォーマットである Phar の詳細について説明します。Phar はファイルをアーカイブするために使用できるだけではなく、PHP アプリケーション全体を 1 つのファイルで提供して実行するためにも使用することができます。PHP では Phar を PECL リポジトリーの拡張モジュールとして使いますが、近々登場するバージョンでは Phar が PHP の正式な拡張モジュールとなります。
    2009/01/27  
 
スクリプト化可能なアプリケーションに Lua を組み込む
Lua プログラミング言語は他のプログラムに組み込むために専用に設計された簡単なスクリプト言語です。Lua の C 言語用 API を利用すると、C から Lua を呼び出すためのコードも Lua から C を呼び出すためのコードも、非常にすっきりした単純なコードになります。これにより、開発者は便利なランタイム・スクリプト言語が必要な場合に、その言語に必要な基本 API 要素を容易に実装し、アプリケーションから Lua コードを呼び出すことができます。この記事では、一般的な開発作業を単純化する手段として使用できる Lua 言語を紹介し、また、そもそもなぜスクリプト言語を埋め込むのかについて説明します。
    2009/01/27  
 
Grails をマスターする: Grails アプリケーションの見栄えを良くする
連載「Grails をマスターする」の今回の記事では、Scott Davis が CSS (Cascading Style Sheets)、テンプレート、タグ・ライブラリー (TagLib) などを駆使して Grails アプリケーションのルック・アンド・フィールを一新させる方法を実演します。
    2009/01/20  
 
PHP V5.3 では何が新しいのか: 第 3 回 名前空間
PHP V5.3 がまもなくリリースされようとしています。この「PHP V5.3 では何が新しいのか」シリーズでは、このリリースでの非常に興味がそそられる新しい機能について説明します。第 1 回では PHP V5.3 でのオブジェクト指向プログラミングに関する変更とオブジェクトの処理方法に関する変更を説明しました。第 2 回ではクロージャーとラムダ関数について説明しました。この第 3 回では名前空間について説明します。この PHP V5.3 リリースの機能の中で、名前空間は最も期待され、また最も議論が多かった機能の 1 つです。名前空間の概念を使うことで、同じ名前を持つ関数、クラス、定数などが何度も定義されてしまう問題を避けることができます。
    2009/01/20  
 
Eclipse V3.4 をマスターする: 第 3 回 JDT テキスト・エディターのヒントと秘訣
連載「Eclipse をマスターする」では、まったくの Eclipse 初心者を対象に Eclipse IDE のノウハウを教えます。今は初心者でも、連載が終わる頃には上級ユーザーと肩を並べるほどになっているはずです。今回の記事では Eclipse の Java エディターを紹介し、このエディターに備わった高度な機能をいくつか取り上げて説明します。
    2009/01/13  
 
ソーシャル・ネットワーキングをオープンソースのツールで視覚化する
ソーシャル・ネットワーキングのデータを分析すると、プライベートでの関係やビジネスでの関係について、その内容、つながり、機会などを理解するために役立ちます。この記事ではソーシャル・ネットワーキングの重要なコンポーネントを抽出するためのツールとコードを紹介します。具体的には Twitter API を使ってソーシャル・ネットワーキングのデータをチャート化し、地図上での場所を特定し、そして視覚化します。
    2009/01/06  
 
IBM Rational Application Developer バージョン 7.5 でカスタム JavaServer Faces コンポーネントを作成する
この記事では、IBM Rational Application Developer V7.5 を使用してカスタム JSF (JavaServer) コンポーネントを作成する方法を説明します。
    2009/01/06  
 
Groovy 流の Spring: 第 2 回 アプリケーションの振る舞いを実行時に変更する
Spring Framework は、Web アプリケーションやエンタープライズ・アプリケーションを作成する際の堅固な基盤となります。この Spring がサポートする Groovy などの動的言語を利用すれば、アプリケーション・アーキテクチャーを一層柔軟かつ動的にすることができます。連載「Groovy を活用した Spring」を締めくくる第 2 回の記事では、動的に更新可能な Bean を利用して、実行時に Spring アプリケーションの振る舞いを変更する方法を学んでください。
    2009/01/06  
 
Groovy 流の Spring: 第 1 回 統合の基本
Spring Framework は、Web アプリケーションやエンタープライズ・アプリケーションを作成する際の堅固な基盤となります。この Spring がサポートする Groovy などの動的言語を利用すれば、アプリケーション・アーキテクチャーを一層柔軟かつ動的にすることができます。この 2 回連載の記事の第 1 回では、Spring アプリケーションへの Groovy 統合についての基本を学んでください。
    2009/01/06  
 
独自の Eclipse プラグイン・テンプレートを作成する
Eclipse のデフォルトのプラグイン・テンプレートは、ユーザーのニーズに応えることができる場合には便利なものです。しかし特定の要件に対してデフォルトのテンプレートでは対応できない場合には、テンプレートをカスタマイズする必要があります。この記事では、Eclipse のプラグイン・プロジェクトのテンプレートをカスタマイズする方法、テンプレートの中でマルチセクションを実装する方法と制御する方法、UI コンポーネントをカスタマイズして使いやすさを改善する方法、UI 側に入力検証機能を追加する方法、そしてプラグイン・プロジェクトのディレクトリー構造を自動的に構成する方法などについて説明します。
    2008/12/22  
 
Python 3: 第 1 回 何が新しいのか
Python 3 は Guido van Rossumによる強力な汎用プログラミング言語の最新バージョンです。Python 3 は 2.x シリーズとの後方互換性をなくし、その代わり構文に関するいくつかの問題を解決しています。この記事ではシリーズの第 1 回の記事として、Python 言語と後方互換性に影響する変更点について説明し、また新しい機能の例を紹介します。
    2008/12/19  
 
Grails をマスターする: エンタープライズでの Grails
連載「Grails をマスターする」の今回の記事では、著者 Scott Davis が、Grails は果たしてエンタープライズに対応する準備ができているかどうかという不安を解消します。JMX (Java Management Extensions)、Spring、log4j をはじめとするエンタープライズ・レベルのライブラリーで Grails を使う方法を学んでください。
    2008/12/16  
 
Firefox のホットキーを Flash プレイヤーから奪い返す方法
Firefox では、Flash プレイヤーなどの組み込みアプリケーションにはキーボード入力用とマウス入力用に独自のフックが必要です。これまで長年の間、Firefox でのキー入力が Flash に奪われてしまっていたため、ナビゲーションや新しいタブの作成、さらには Flash の外にフォーカスを移すことでさえ、キーボードを使って行うことはできませんでした。この記事では、Firefox の拡張機能と cnee と通信してキーボードの機能を取り戻すための Perl プログラムを作成する方法を学びましょう。
    2008/12/16  
 
IBM LanguageWare ではじめるテキスト解析: 第 1 回 統合開発環境の導入
多くの企業では、電子メールや業務レポート、ウェブページ、Wikiなど様々なテキストデータが日々作られ、保存されています。これらのテキストデータには、企業が事業を進め、より優れた判断をしていく上で有益な情報が含まれています。しかし、これらのテキストデータはとてもたくさんあるため、今探している情報がどこに書かれているのか見つけることは容易ではありません。本連載ではIBM LanguageWareを使って、大量のテキストデータの中から、必要な情報をすばやく見つけだして活用していくための方法についてご紹介します。
    2008/12/12  
 
IBM LanguageWare ではじめるテキスト解析: 第 2 回 辞書を作成
LanguageWare Resource Workbenchはテキスト解析のための統合開発環境です。第1回ではLanguageWare Resource Workbenchとサンプル・ワークスペースをインストールして動作を確認しました。これから2回にわたって、LanguageWare Resource Workbench を使い、固有表現を抽出するために必要なデータを作成します。
    2008/12/12  
 
Linux と Hadoop による分散コンピューティング
人々は毎日、検索エンジンを使ってインターネット上にあるテラバイトをはるかに超えるデータの中から特定のコンテンツを見つけていますが、皆さんはこの検索が実際にどのように実行されているのかを考えたことがあるでしょうか。その検索を実行する 1 つの方法として、Apache の Hadoop を使用する方法があります。Hadoop は膨大な量のデータを分散操作することができるソフトウェア・フレームワークで、その 1 つの応用として、インターネットの Web ページの索引付けを並列処理するための使い方があります。Hadoop は Apache のプロジェクトであり、Yahoo!、Google、IBM などによってサポートされています。この記事では Hadoop フレームワークを紹介し、Hadoop が Linux ベースの最も重要な分散コンピューティング・フレームワークの 1 つである理由を説明します。
    2008/12/09  
 
PHP V5.3 では何が新しいのか: 第 2 回 クロージャーとラムダ関数
この「PHP V5.3 では何が新しいのか」シリーズの記事では、2008年の末までにリリースされる予定の PHP V5.3 の、非常に興味がそそられる新しい機能について説明します。第 1 回では PHP V5.3 でのオブジェクト指向プログラミングに関する変更とオブジェクトの処理方法に関する変更を説明しました。第 2 回ではクロージャーとラムダ関数について説明します。クロージャーとラムダ関数を利用すると使い捨て関数を容易に定義することができ、それらを多くのコンテキストで使用できるため、プログラミングが容易になります。
    2008/12/09  
 
Eclipse を使ってリモートで Java アプリケーションをデバッグする
Java アプリケーションのデバッグを必ずしもローカルのデスクトップ上で行う必要はありません。リモート・デバッグを構成するさまざまな接続タイプを使用して、デバッグ作業を分散させる方法を学びましょう。この記事では、リモートでのアプリケーションのデバッグをセットアップするための機能と例について説明し、そのデバッグ方法を示します。
    2008/12/09  
 
Web 系開発のトレンドを牽引する: IBM ソフトウェア・テクノロジー情報(後編)
IBMのエバンジェリストや研究者達が運営するWiki「IBM ソフトウェア・テクノロジー情報」。CodeZineでは、このサイトのオーナーであるIBMソフトウェア・エバンジェリスト米持幸寿氏と、Jazz、 Web2.0セキュリティ、Dojoツールキット、 Groovyといった4種の技術のキーマンたちを取材した。この模様を前編・中編・後編の3回に分けてレポートする。
    2008/12/05  
 
PHP プログラミングのための 5 つの良い習慣を身につける
他の言語の場合とまったく同じように、開発者が PHP で作成するコードの品質は、恐ろしいほどひどいものから非常に素晴らしいものまで非常に幅があります。そうした生産性のギャップを埋めるために役立つ、良いプログラミング習慣を学びましょう。
    2008/12/02  
 
キャッシングを使って高速な Web アプリケーションを作成する
キャッシュ・ユーティリティーを使用すると、Java 技術を使用する Web アプリケーションのパフォーマンスを即座に改善することができます。Java アプリケーションのための強力な分散型キャッシング・システムである JCS (Java Caching System) は、単純な API を持ち、非常に柔軟な構成が可能なツールです。この記事では、JCS の概要と、JCS を使って Web アプリケーションを高速化する方法について説明します。
    2008/12/02  
 
PHP で作成する 30 種類のゲーム・スクリプト: 第 3 回 10 種類の高度なスクリプトを作成する
PHP は、使いやすく、容易に学ぶことができ、そして幅広く利用できるプログラミング言語です。PHP は、あらゆる種類のゲームに役立つ簡単なスクリプトを作成するのに非常に適しています。紙と鉛筆を使った単純なゲームを 1 人でする場合であれ、複雑なテーブルトーク RPG を何人かのグループでする場合であれ、はたまたどのような種類のオンライン・ゲームをする場合であれ、このシリーズは皆さんにとって何らかの役に立つはずです。この記事はこのシリーズの第 1 回と第 2 回の記事を基に、さまざまなタイプのゲームに使用できる 10 種類の優れたスクリプトについて説明します。これらは在庫管理システムやメモを取るためのスクリプト、単語ゲームのスクリプト、画像操作のスクリプト、そしてキノ (Keno) などのゲームのスクリプトです。
    2008/12/02  
 
Web 系開発のトレンドを牽引する: IBM ソフトウェア・テクノロジー情報(中編)
IBMのエバンジェリストや研究者達が運営するWiki「IBM ソフトウェア・テクノロジー情報」。CodeZineでは、このサイトのオーナーであるIBMソフトウェア・エバンジェリスト米持幸寿氏と、Jazz、 Web2.0セキュリティ、Dojoツールキット、 Groovyといった4種の技術のキーマンたちを取材した。この模様を前編・中編・後編の3回に分けてレポートする。
    2008/11/28  
 
WebSphere Application Server Community Edition を使用した EJB アプリケーション・セキュリティーの構成方法
WebSphere Application Server Community Edition 2.x ではクレデンシャル・ストア、run-as-subject および default-subject を導入していることから、そのセキュリティー構成は今までのバージョンとは異なります。そこで、この記事では、セキュリティー関連のさまざまなアノテーションや EJB デプロイメント記述子の要素について、そしてセッション、エンティティー、およびメッセージ駆動型 EJB をセキュアにする Community Edition 固有のデプロイメント・プランについて説明します。
    2008/11/26  
 
マウス・ダイナミックスを利用してユーザー認証の選択肢を広げる
この記事ではオープンソースのツールである cnee と Perl をマウス・クリック・ダイナミックスに適用して、人間とコンピューターとの相互作用における、人によって微妙に異なる特性を測定する方法を説明します。測定したマウス・クリック・イベントの回数と押下時間をユーザーの認証に役立ててください。
    2008/11/25  
 
AIX での Samba
Samba は、Windows クライアントと UNIX ライクなプラットフォームとの間にシームレスなファイル・サービスと印刷サービスを提供する無料のオープンソース・ソフトウェア・スイートです。AIX、BSD UNIX、Linux、IBM 390、そして OpenVMS などの UNIX ライクなプラットフォームで実行することが可能な Samba は、ホスト・サーバーにインストールされた TCP/IP プロトコルを使用します。ホスト・マシンはこのサーバー・ソフトウェアを構成すると、Windows クライアントからアクセスできるようにファイルとプリンターを共有設定にすることができます。
    2008/11/25  
 
PHP で作成する 30 種類のゲーム・スクリプト: 第 2 回 10 種類の中級スクリプトを作成する
PHP は、使いやすく、容易に学ぶことができ、そして幅広く利用できるプログラミング言語です。PHP は、あらゆる種類のゲームに役立つ簡単なスクリプトを作成するのに非常に適しています。紙と鉛筆を使った単純なゲームを 1 人でする場合であれ、複雑なテーブルトーク RPG を何人かのグループでする場合であれ、はたまたどのような種類のオンライン・ゲームをする場合であれ、このシリーズは皆さんにとって何らかの役に立つはずです。この記事はシリーズ第 1 回の記事を元に、さまざまなタイプのゲームに使用できる 10 種類の中級スクリプトについて説明します。これらのスクリプトは、ロール・プレイング・ゲーム、ギャンブル・ゲーム、単語ゲームという 3 つのタイプのゲームに使用することができます。
    2008/11/25  
 
セマンティック Web の CRUD 操作を PHP で作成する
CRUD (create, read, update, and delete) 操作は最も基本的なデータベース操作ですが、最も重要な操作でもあります。CRUD 操作は通常、SQL (Structured Query Language) を使ってリレーショナル・データベース・システムに対して行われます。しかし Web がより一層データベース指向になりつつあるため、SQL ベースの CRUD 操作からセマンティック Web ベースの CRUD 操作にシフトする必要があります。PHP を使ってセマンティック Web で CRUD 操作を行う方法を学びましょう。
    2008/11/25  
 
Eclipse のプラグインの署名メカニズムを探る
新機能のバンドルをソフトウェアにインストールする際にはセキュリティーが重要な問題です。この記事では、プラグインが信頼に足るものであることを判断するために Eclipse プラットフォームで使われている署名技術について探ります。Eclipse は各プラグインを、unsigned (署名なし)、signed (署名付き)、trusted (信頼できる)、untrusted (信頼できない)、expired (失効) という 5 つのカテゴリーのいずれかに分類します。Eclipse で、そして Eclipse ベースの製品である IBM Lotus Expeditor で、署名付きプラグインを作成する方法を学びましょう。
    2008/11/18  
 
XSLT 変換パイプラインをサポートするフレームワークの作成
この記事で説明するのは、PHP 5 で動作し、XSLT スタイルシートのチェーンを簡単にソースである XML 文書に適用できるようにするフレームワーク、Butterfly を作成する方法です。このフレームワークを使用することで、XML 文書から変換した結果をそのままキャッシングできるようになります。Java(TM) ベースの Apache Cocoon プロジェクトに端を発し、ある形式から別の形式へのデータ変換 (毛虫から蝶への変身) を管理し、その変換結果を保存することから、この極めて軽量になったフレームワークは Butterfly と呼ばれています。Butterfly フレームワークでは、スタイルシート変換のチェーンを定義する XML 構成ファイルを設定し、Butterfly オブジェクトをインスタンス化して、そのそれぞれで XSLT 変換チェーンの結果を生成することができます。この記事では、Butterfly フレームワークの概要を具体的に説明することで、フレームワーク設計の本質全般についても検討することになります。
    2008/11/18  
 
Grails をマスターする: JSON と Ajax による非同期 Grails
Web 2.0 開発には、JSON (JavaScript Object Notation) と Ajax (Asynchronous JavaScript + XML) が不可欠です。連載「Grails をマスターする」では今回、Scott Davis がこの Web フレームワークに JSON と Ajax ならではの機能を組み込む方法を紹介します。
    2008/11/18  
 
PHP で作成する 30 種類のゲーム・スクリプト: 第 1 回 基本的な 10 種類のスクリプトを作成する
PHP は、使いやすく、容易に学ぶことができ、そして幅広く利用できるプログラミング言語です。PHP は、あらゆる種類のゲームに役立つ簡単なスクリプトを作成するのに非常に適しています。紙と鉛筆を使った単純なゲームを 1 人でする場合であれ、複雑なテーブルトーク RPG を何人かのグループでする場合であれ、はたまたどのような種類のオンライン・ゲームをする場合であれ、このシリーズは皆さんにとって何らかの役に立つはずです。このシリーズの各記事では、3D10 スクリプトと名付けた 30 種類のスクリプトから 10 種類ずつ紹介します (3D10 は 10 面体のサイコロを 3 つ振ることを表す略語で、サイコロの目が 30 個あることと 30 種類のスクリプトをかけて名付けたものです)。これらのスクリプトはいずれも 300 ワード以下のスクリプトで、駈け出しの開発者にとっても容易なものですが、経験豊富なゲーム・プレイヤーにも十分使い道のあるものです。このシリーズの目標は、必要に応じて皆さんが自分で変更できるものを提供することです。このシリーズを読むと、皆さんが次回行うゲーム・セッションで皆さんがラップトップを取り出せば、皆さんの友人や他のゲーム・プレイヤーを驚かせることができるはずです。
    2008/11/18  
 
Web系開発のトレンドを牽引する: IBM ソフトウェア・テクノロジー情報(前編)
IBMのエバンジェリストや研究者達が運営するWiki「IBM ソフトウェア・テクノロジー情報」。CodeZineでは、このサイトのオーナーであるIBMソフトウェア・エバンジェリスト米持幸寿氏と、Jazz、 Web2.0セキュリティ、Dojoツールキット、 Groovyといった4種の技術のキーマンたちを取材した。この模様を前編・中編・後編の3回に分けてレポートする。
    2008/11/14  
 
Eclipse V3.4 をマスターする: 第 2 回 JDT
連載「Eclipse をマスターする」では、まったくの Eclipse 初心者を対象に Eclipse IDE のノウハウをくまなく教えます。今は初心者でも、連載が終わる頃には上級ユーザーと肩を並べるほどになっているはずです。今回の記事では、Eclipse JDT のさまざまな構成要素を操作する方法を説明します。
    2008/11/11  
 
PHP V5.3 では何が新しいのか: 第 1 回 オブジェクト・インターフェースに関する変更
PHP V5.3 は 2008年の終わりまでにリリースされる予定であり、このリリースの新機能の多くはこの数年間、計画段階にあったものです。元々「PHP V6 から Unicode のネイティブ・サポートを除いたもの」として宣伝されていた PHP V5.3 は、PHP V5 シリーズに豊富な機能を追加したアップグレードとして開発されました。PHP V5.3 は PHP V6 が登場する時までに開発者達が準備を整えるためのリリースとして設計されており、多くの新機能が追加され、既存の機能を調整することで機能が整理され、プラットフォーム固有の問題が修正され、そして今後のバージョンの PHP には含まれなくなる古い機能を非推奨としています。この「PHP V5.3 では何が新しいのか」シリーズでは、V5.3 のこうした新機能について調べ、その使い方や Web アプリケーションで新機能を使うための方法などを説明します。
    2008/11/11  
 
Linux プロジェクトの公開資料: セキュリティー
このページに示す資料は、IBM Linux Technology Center のメンバーが Linux のセキュリティーの話題に関して開発コミュニティーに提供したものです。
    2008/11/08  
 
賢いアクティビティー・モニターを使用して PC の消費電力を削減する
アプリケーションの使用パターンやユーザーのアクティビティーをモニターすることで Linux コンピューターの消費電力を削減する方法を学びましょう。
    2008/11/04  
 
Apache Solr の新しい内容
Apache Solr で新たに強化された多くの機能を活用して選り抜きの機能をアプリケーションに追加してください。
    2008/11/04  
 
OSGi と Spring: 第 1 回 Apache Felix を使用して OSGi バンドルを作成し、デプロイする
Java クラス・コンポーネントを OSGi (Open Services Gateway initiative) バンドルとして開発、作成、パッケージ化し、Apache Felix ランタイム環境にデプロイしてください。すると、Felix シェル・コマンドを使用してバンドルの起動と停止、そして動的な更新を実行できるようになります。
    2008/10/30  
 
WebSphere Application Server で Spring および OpenJPA を使用する
この記事では、Spring Framework と Apache OpenJPA を利用して、J2EE プロジェクトの作業効率とアプリケーション開発を改善する方法を説明します。サンプル・アプリケーションでは Spring を Web アプリケーションの異なるアーキテクチャー・レイヤー内のいくつかのシナリオで使用しますが、特にサービス・レイヤーやデータ・アクセス・レイヤーなどのビジネス層に焦点を当てます。
    2008/10/29  
 
Eclipse V3.4 をマスターする: 第 1 回 Eclipse IDE ワークベンチ
連載「Eclipse をマスターする」では、まったくの Eclipse 初心者を対象に Eclipse IDE のノウハウをくまなく教えます。今は初心者でも、連載が終わる頃には上級ユーザーと肩を並べるほどになっているはずです。この第 1 回の記事では Eclipse IDE の構成要素を紹介し、カスタマイズする方法を説明します。
    2008/10/28  
 
lxml を使用して Python での XML 構文解析をハイパフォーマンスにする
lxml は高速ながらも柔軟性の高い、Python での XML 処理用ライブラリーです。XPath (XML Path Language) と XSLT (Extensible Stylesheet Language Transformation) のサポートがあらかじめバンドルされた lxml が実装するのは、お馴染みの ElementTree API です。この記事では lxml に備わった使い易さ、そして極めて大きな XML データを処理する際のハイパフォーマンス特性の両方に焦点を当てます。
    2008/10/28  
 
WebSphere Application Server Community Edition のアプリケーションを容易に WebSphere Application Server にマイグレートする
alphaWorks から入手できるツールを利用すると、既存の J2EE V1.4 アプリケーションを Apache Geronimo ベースの IBM WebSphere Application Server Community Edition V2.0.x および V2.1.x から IBM WebSphere Application Server V6.1 に容易にマイグレートすることができます。
    2008/10/28  
 
PHP でオブジェクト指向の設計をするための 7 つの良い習慣を身につける
PHP にはオブジェクト指向 (OO: Object-Oriented) 言語としての特徴があるため、皆さんが既に OO の原則を念頭に置いてアプリケーションを作成しているのでない場合には、この記事で紹介する 7 つの習慣を実践することによって手続き型プログラミングから OO プログラミングへの移行をスムーズに開始することができます。
    2008/10/28  
 
DB2 セルフ・チューニング・メモリー・マネージャー (STMM) のログ・パーサー
STMM ログ・ファイルを解析し、また STMM が下した判断の監視作業を単純化するための、簡単なツールについて学んでください。IBM DB2 9 より、新しいメモリー・チューニング機能である STMM を利用することによって、いくつかの重要なメモリー構成パラメーターの値が自動的に設定され、メモリー構成作業を単純化することができます。
    2008/10/23  
 
怠惰な Linux: 怠け者のクラスター管理者のための 11 の秘訣
「クラスター」の意味は人それぞれに違います。この記事のコンテキストで言うと、クラスターに最適な定義はスケールアウトです。通常、スケールアウト構成のクラスターには Web ファーム、レンダー・ファーム、ハイパフォーマンス・コンピューティング (HPC) システムなど、同じタイプのコンポーネントがいくつもあります。管理者たちは、スケールアウト・クラスターで変更を行うとなると、それがどんなに小さな変更であれ何十万回と変更を繰り返さなければならないと言うでしょう。その一方、極めて怠惰な管理者たちはスケールアウトの管理技術をマスターしているため、ノードがいくつあろうと作業量は変わりません。この記事の著者たちが、そんな極めつけの怠け者である Linux 管理者の頭の中を覗き込み、彼らが作業を減らす秘訣を解き明かします。
    2008/10/22  
 
ネットワーク上にあるアイドル状態のコンピューターを自動的にシャットダウンする
クライアントとサーバーでの Perl コードと Argus を使ってネットワーク接続を監視する方法、そして使われていないマシンをシャットダウンする方法を学びましょう。
    2008/10/21  
 
Geronimo と REST を使ってサーバー・サイドのマッシュアップを作成する
Apache Geronimo と REST ベースのプロトコル、そして複数ソースからのデータを使ってマッシュアップ・アプリケーションを作成するための手法と技術を学びましょう。このマッシュアップでは、Google マップのデータと Twitter の tweet のデータを組み合わせ、Twitter のユーザーが彼らのTwitter ステータスを更新すると、そうした Twitter ユーザーをピンポイントで特定します。
    2008/10/21  
 
Web 時代の非リレーショナルデータベース: 第 3 回 Apache CouchDB で MapReduce フレームワークに基づく問いあわせを行う
本連載では今Web開発者が注目するApache CouchDBに関する技術情報を紹介します。今回は5回シリーズの第3回として、CouchDB のビュー/クエリ機能であるMapReduceフレームワークの利用方法を学びます。
    2008/10/17  
 
Equinox p2 によって Eclipse プラグインの頭痛を解消する
この記事では Eclipse V3.4 で登場した Equinox p2 の新機能について説明します。これまでのバージョンの Eclipse で使用されていた更新マネージャーの UI (User Interface) の落とし穴について触れ、それが Equinox p2 フレームワークではどのように改善されているかを説明します。特に、Equinox p2 フレームワークの新機能を使って Eclipse と Eclipse プラグインをインストールする方法について説明します。
    2008/10/14  
 
オンライン・マップ・アプリケーションの画像を回転させる Firefox 拡張機能を作成する
JavaScript と Imager Perl モジュールを使用して、Google マップの画像タイルを回転させる Firefox 拡張機能とのインターフェースを取る方法を学んでください。
    2008/10/14  
 
プログラムの容易性: 第 1 回 Cell/B.E. プラットフォームでのプログラミング手法を探る
Cell Broadband Engine で柔軟にプログラミングを行えることがマルチコアのコミュニティーでホットな話題となっています。この記事では、皆さんの既存のスキルを Cell/B.E. でのプログラムに活用する方法と Cell/B.E. システムのための 3 つのプログラミング手法、そしてこのプラットフォームで利用可能なさまざまなツールやソフトウェア、ハードウェアについて説明します。
    2008/10/14  
 
サポート通信: WebSphere Application Server Community Edition を適切に使用するためのチェックリスト
この記事で取り上げる簡単な質問は、IBM WebSphere Application Server Community Edition を使用する際の一般的な誤りを避ける上で有用な質問です。これらの質問を利用すれば、開発に集中することができ、成功に近づくことができます。 (IBM WebSphere Developer Technical Journal)
    2008/10/08  
 
Perl と xev を使って継続的キーストローク・ダイナミックス・モニターを作成する
Perl と xev、そしてカスタム・アルゴリズムを使用して、個人に特有のタイピング・パターンをベースに、誰が今キーボードを操作しているかをモニターする方法を学んでください。
    2008/10/07  
 
真の Web 2.0: Creative Commons をマスターする
CC (Creative Commons) イニシアチブでは、Web コンテンツを始めとする、コンテンツのための一般的なライセンスが作られています。一部の人は、こうしたライセンスを利用する場合はコンテンツに関するすべての権利をあきらめなければならないと思っているようですが、それは数ある誤解の 1 つにすぎません。Web サイトやアプリケーションでの CC ライセンスの選択方法や使用方法、そして CC ライセンスをコードの中で扱う方法を学びましょう。
    2008/10/07  
 
Rubyを使ったDB2プログラムのエッセンス
この記事では、Rubyから直接DB2にアクセスするようなプログラムの書き方について、ご紹介したいと思います。
    2008/10/03  
 
セキュアな PHP アプリケーションを作成するための 7 つの習慣
PHP アプリケーションのセキュリティーには、リモートでのセキュリティーとローカルでのセキュリティーに関するものがあります。リモートとローカル両方でのセキュリティーに対応した Web アプリケーションを実装するために、PHP 開発者が身につける必要のある習慣を学びましょう。
    2008/09/30  
 
Spring、Apache CXF を使用した POJO Web サービスの設計と実装: 第 2 回 RESTful な Web サービスを作成する
オープンソースの Web サービス・フレームワーク、Apache CXF を使って、Spring Bean として定義した RESTful な Web サービスを作成してください。この記事では、REST (Representational State Transfer) アーキテクチャーの機能とこのアーキテクチャーを使用した場合の利点を探り、CXF の REST API を使うと簡単に RESTful なサービスを開発できることを説明します。
    2008/09/25  
 
WebSphere Application Server Community Edition 用のリッチ・インターネット・アプリケーションを作成する
この記事では WebSphere Community Edition 2.1 に含まれる Ajax 用の機能とフレームワークの一部を簡単に紹介します。また Web 2.0 のサンプル・アプリケーションを作成する手順を説明しながら、これらのフレームワークを使うことによって開発が容易になることを示します。
    2008/09/24  
 
Google Earth の画像オーバーレイ・マップに高度の属性を追加する
Perl と Imager モジュールを使って地図作成アプリケーションを機能強化しましょう。色に基づいて高度の情報を抽出して地図に適用することによって、データを 3 次元で表現し、より多くの情報を同じスペースに表示します。
    2008/09/23  
 
Apache Derby によるオフラインの Ajax
Ajax アプリケーションは非常に人々に好まれており、デスクトップ・アプリケーションの代わりに Ajax アプリケーションを使おうとする人が増えています。Ajax アプリケーションの唯一の問題は、ネットワークにアクセスできない場合には使うことができないことで、そうした場合にはオフライン機能が必要になります。Apache Derby は、Ajax 機能を備えたアプリケーションにオフラインでアクセスするための素晴らしい選択肢です。Apache Derby をローカルのデータ・ストアとして使う方法を学び、Ajax アプリケーションをオフラインで使えるようにしましょう。
    2008/09/23  
 
IBM のとがった人たち ~ 「IBM Japan Geeks」: 勉強会レポート(後編): 「Google基盤」と「カリー化」
「IBM Japan Geeks」(以下、Geeks)は、2007年に社内で開催された「ITLMC RoR(Ruby on Rails)勉強会」に集まったとがった人たちによって発足したもの。「主にプログラミング言語を中心とした最新技術動向の情報交換を行うための社内コミュニティ」として、定期的に勉強会を開催しています。
    2008/09/19  
 
Eclipse の API Tools の紹介
Application Public Interface (API) を作成し、さらに、異なるリリース間での API を管理することは非常に困難なものです。このプロセスを容易に、そして日々の開発作業にシームレスに統合するために、Eclipse の PDE API Tools ツールを利用する方法を学びましょう。ただしこの記事は Eclipse V3.4 (Ganymede) のみを対象にしていますので注意してください。
    2008/09/16  
 
Ghosd と Synergy を使って複数画面のユーザー・インターフェースを機能強化する
複数画面による表示システムでは、従来の単一画面によるセットアップとは異なり、UI (ユーザー・インターフェース) に関して特別な考慮が必要です。この記事では、複数のモニターを使用する際に、どのモニターに入力フォーカスが置かれているかという情報を取得したり、入力フォーカスの切り換えに対処したりといったことができるように設計されたツールとコードについて説明します。
    2008/09/09  
 
XSLT、KML、そして Google Maps API を使って地図上にデータをオーバーレイする: 第 2 回 データを変換し、使用する
この 2 回シリーズの記事では不動産仲介業者のためのアプリケーションを作成し、入居可能な部屋の賃貸情報のすべてを、クリック可能な Placemark として Google マップ に表示します。第 1 回では、このアプリケーションの前半として、ユーザーから部屋の賃貸情報を収集し、その住所を Google のジオコーダ Web サービスを使って地理座標 (経度と緯度) に変換し、変換したその座標を住所の情報と共にデータベースに保存する部分を作成しました。第 2 回では、このデータを使って KML オーバーレイ文書を作成し、その文書を Google マップと Google Earth に表示します。最初にストアード・プロシージャーを使って MySQL から XML を作成します。次に XSLT と Muenchian グループ化と呼ばれる手法を使って、オーバーレイ情報 (部屋の賃貸物件がある建物ごとに 1 つの Placemark) を含む KML 文書に XML データを変換します。各 Placemark をクリックするとポップアップ表示されるバルーンには、その建物の中で入居可能な部屋の賃貸情報を表示します。最後に Google Maps API を使って、皆さん自身の Web サイトに埋め込まれた Google マップに KML オーバーレイを表示します。
    2008/09/09  
 
PHP を使用して Ajax ベースの Web サイトを作成する
ネイティブ JavaScript コードと PHP を使って Ajax (Asynchronous JavaScript + XML) アプリケーションを作成するプロセスを学んでください。この記事では、完全な Ajax ベースの Web アプリケーションを完成させるために必要となるコードの作成量を減らすフレームワークおよび API (Application Program Interface) をいくつか紹介します。
    2008/09/02  
 
IBM のとがった人たち ~ 「IBM Japan Geeks」: 勉強会レポート(前編): 「Scala」と「Android」
IBMにて2008年2月より毎月開催されている勉強会「IBM Japan Geeks」。40名以上の“Geek”が登録しているというこの会では、さまざまな言語や最新技術をディープに情報交換しています。そこで CodeZineがこの勉強会に参加し、これまで発表のあったもののうち、反響のあった4編をバージョンアップして再現していただきました。この会の模様を2回に分けてレポートします。
    2008/08/29  
 
Perl と Google Earth を使って連絡可能時間マップを作る
連絡可能時間マップでは、特定の場所で特定の時間に連絡が取れる可能性の高いメンバーのリストが提供されるので、Google Earth と通信ログを活用して、連絡が取れる時間と場所を特定してマップを作成する方法を学んでください。
    2008/08/26  
 
Apache Derby と JRuby on Rails を使った迅速なプロトタイピング
Ruby on Rails を使うことで、データ駆動型 Web サイトを以前よりも迅速に開発できるようになりました。また JRuby プロジェクトによって、Ruby はこれまでにないほど高速かつスケーラブルになりつつあります。Java 仮想マシンで Rails を実行することによる大きなメリットの 1 つは、他の Java ライブラリー (Apache Derby 組み込みデータベースなど) を活用できることです。Derby と JRuby、そして Rails を組み合わせることで、動的な Web アプリケーションのプロトタイピングを迅速に行えるようになります。これらの技術を組み合わせて使う方法を学び、次に皆さんが素晴らしいアイデアをプロトタイピングする際に活用しましょう。
    2008/08/26  
 
CodeIgniter 入門
CodeIgniter アプリケーションは皆さんが考えるより簡単に作成することができます。初めてのプロジェクトとして、連絡先フォームを表示する単純な Web ページの作成手順を試してみてください。
    2008/08/26  
 
Java XPath API
XPath 式は、詳細な DOM (Document Object Model) ナビゲーション・コードよりもずっと簡単に書くことができます。XML 文書から情報を抽出する場合、最も手軽で単純な方法は、XPath 式を Java プログラムの中に埋め込んでしまう方法です。Java 5 では、XPath を使って文書をクエリーするための、XML オブジェクト・モデルに依存しないライブラリー、javax.xml.xpath パッケージが導入されています。
    2008/08/25  
 
Google App Engine をベースに Eclipse を使用して作成するマッシュアップ: 第 3 回 RESTful な Web サービスを使用する
ソーシャル・ネットワークでは、画期的な新しい Web アプリケーションを作成するためのデータを容易に収集してマッシュアップできるようになっていますが、それでも、スケーラブルな Web アプリケーションを作成する上で常に伴う問題のすべては自分で処理しなければなりません。この部分の負担を軽くしてくれるのが、GAE (Google App Engine) です。GAE を使用すれば、アプリケーション・サーバーのプールの管理について一切忘れ、優れたマッシュアップを作成することに専念できます。3 回連載の「Google App Engine をベースに Eclipse を使用して作成するマッシュアップ」の最終回では、これまでに作成したアプリケーションをさらに拡張していきます。拡張の内容としては、まず、このアプリケーションの他のユーザーを表示して彼らの集約フィードを購読する機能を加えます。次にアプリケーションを Web サービスとして公開し、他のマッシュアップにも使えるようにすることで、マッシュアップの輪を完成させます。
    2008/08/19  
 
Google App Engine をベースに Eclipse を使用して作成するマッシュアップ: 第 2 回 Ajax マッシュアップを構築する
ソーシャル・ネットワークでは、画期的な新しい Web アプリケーションを作成するためのデータを容易に収集してマッシュアップできるようになっていますが、それでも、スケーラブルな Web アプリケーションを作成する上で常に伴う問題のすべては自分で処理しなければなりません。この部分の負担を軽くしてくれるのが、GAE (Google App Engine) です。GAE を使用すれば、アプリケーション・サーバーのプールの管理について一切忘れ、優れたマッシュアップを作成することに専念できます。3 回連載の「Google App Engine をベースに Eclipse を使用して作成するマッシュアップ」の第 2 回目では、第 1 回で作成したアプリケーションを拡張します。まず、アプリケーションのパフォーマンスを改善するために GAE のデータ・モデリング機能を追加します。次に GAE の Memcache サービスを利用して、さらにパフォーマンスを改良していきます。
    2008/08/12  
 
Eclipse による容易な Ruby 開発
developerWorks では約 3 年前に「Eclipse に Ruby Development Tools プラグインを使用する」を公開し、その記事の中で、Eclipse 用の RDT (Ruby Development Tools) プラグインの中にあるいくつかの機能を紹介しました。その時点での RDT の最新バージョンは V0.5 でした。この記事では、このツールを再度取り上げます。現在では RDT は Aptana RadRails と呼ばれ、Aptana Studio または Eclipse 用のプラグインとして入手することができます。この記事では、このプラグインの新機能のいくつかを紹介します。
    2008/08/12  
 
Grails をマスターする: Grails のイベント・モデル
Grails ではアプリケーションのライフサイクル全体をとおして、ビルド・スクリプトから個々の成果物 (ドメイン・クラスやコントローラーなど) に至るまでのあらゆるものが重要なポイントでイベントをスローします。連載「Grails をマスターする」の今回の記事では、これらのイベントをキャッチし、カスタムの振る舞いで応答するリスナーをセットアップする方法を説明します。
    2008/08/12  
 
技術ヒント: Tomcat での Informix JDBC/JCC コネクション・プーリング用にグローバル JNDI マッピングを設定する
ここ数年、Apache Tomcat の人気が高まっています。IBM Informix Dynamic Server の人気も同様に高まっており、多くのユーザーはこの 2 つの製品を一緒に使いたいと考えています。そして実際に 2 つを組み合わせ、統合しようと試みますが、その過程でいくつかの問題に直面します。この記事ではTomcat の JNDI DataSource を Informix Dynamic Server 用に構成するための手順を追いながら、そうした問題を解決する方法を学びます。
    2008/08/07  
 
Apache Tomcat Version 6.0.x から WebSphere Application Server Community Edition V2.1 にマイグレートする
この記事ではまず、アプリケーションを Tomcat 6.0 にデプロイするための手順を説明した後、そのコードを WebSphere Application Server Community Edition V2.1 にマイグレートしてデプロイする手順を説明します。この記事で紹介するサンプル・アプリケーションから、この 2 つの実装の間での大きな違いのいくつかを明確に知ることができます。
    2008/08/06  
 
Google App Engine をベースに Eclipse を使用して作成するマッシュアップ: 第 1 回 アプリケーションを作成する
ソーシャル・ソフトウェアを活用することは、アプリケーションに価値を加える素晴らしい手段となり得ます。ソーシャル・ネットワークでは、画期的な新しい Web アプリケーションを作成するためのデータを容易に収集してマッシュアップできるからです。しかしそれでもやはり、スケーラブルな Web アプリケーションを作成する上で常に伴う問題のすべては、自分で処理しなければなりません。この部分の負担を軽くしてくれるのが、GAE (Google App Engine) です。GAE を使用すれば、アプリケーション・サーバーのプールの管理について一切忘れ、大量の静的コンテンツと動的データの保存について懸念することなく優れたマッシュアップを作成することに専念できます。この 3 回連載の「Google App Engine をベースに Eclipse を使用して作成するマッシュアップ」の第 1 回では、GAE アプリケーションの開発に取り掛かる方法を説明し、GAE 開発をさらに容易にするために、どのように Eclipse を利用するかを検討します。
    2008/08/05  
 
Web 時代の非リレーショナルデータベース: 第 2 回 Apache CouchDB と Ruby on Rails を使って wiki アプリケーションを作成する
本連載では今 Web 開発者が注目する Apache CouchDB[1] に関する技術情報を紹介します。今回は 5 回シリーズの第 2 回として、Ruby on Rails による wiki アプリケーションの作成を通じて、CouchDB の RESTful API についてプログラムからの利用方法を学びます。
    2008/08/01  
 
WebSphere Application Server Community Edition V2.1 の新しい機能
この記事では、WebSphere Application Server Community Edition V2.1 の新しい機能を紹介します。このリリースには、GShell を使ってGeronimo コマンドを実行する機能や、複数のサーバー・アセンブリーを独自のサーバー・セットから作成する機能、そしてエキスパート・モードと新しい Monitoring ポートレットを使ってサーバーを完全に制御する機能などが新たに加わりました。すでに指折りの強力さを誇るオープンソースのアプリケーション・サーバーがさらに改善されています。
    2008/07/29  
 
OpenLaszlo: RIA/Ajax にも Write Once Run Anywhere の波
コードネーム Legal, OpenLaszlo v4.1 が 2 年の歳月を経てリリースされました。このバージョンから、OpenLaszlo は DHTML(Ajax) をサポートしました。これまでは、RIA(Flex 等の Flash)や、Ajax を開発するには別々のテクノロジーをマスターしなければならず、プログラマーに多大な負担がかかっていましたが、OpenLaszlo を採用することで、RIA も Ajax もこれひとつで開発できるようになりました。
    2008/07/25  
 
Spring、Apache CXF を使用した POJO Web サービスの設計と実装: 第 1 回 CXF と Spring を使った Web サービス作成の概要
オープンソースの Web サービス・フレームワーク、Apache CXF を使用すれば、POJO (Plain Old Java Object) スタイルの Web サービスを簡単に作成することができます。連載第 1 回目のこの記事では、Spring と CXF を使って POJO を Web サービスとして公開する方法を説明します。また、CXF と Spring Framework との統合についても説明します。
    2008/07/24  
 
Eclipse に Ruby Development Tools プラグインを使用する
この記事では、Eclipse を第 1 級の Ruby 開発環境に変身させる Eclipse 用 RDT (Ruby Development Tools) プラグインの使い方を紹介します。Eclipse コミュニティーの充実したインフラストラクチャーを使用して Ruby 言語をサポートする方法を学びたいと思っている Ruby 開発者、そして Ruby を使用することに興味を持っている Java 開発者の両方に役立つ記事です。
    2008/07/24  
 
Apache Geronimo に Lift を活用する
Lift は Web アプリケーションの新しいフレームワークです。Lift は Scala プログラミング言語をベースに構築された非常にスケーラブルなフレームワークであるため、Apache Geronimo などの非常にスケーラブルなサーバーと組み合わせて使うには最適です。特にベースとなっている Scala が Java 言語と同様にバイトコードにコンパイルされ、Java プラットフォームを活用できることも最適な組み合わせである大きな理由のひとつです。この記事では、Lift を使って Web アプリケーションを作成する方法、そしてそのアプリケーションを Geronimo にデプロイする方法を学びます。
    2008/07/22  
 
Grails をマスターする: Grails とレガシー・データベース
連載「Grails をマスターする」で今回 Scott Davis が取り上げるのは、Grails の命名規則に当てはまらないデータベース・テーブルを Grails で使用するためのさまざまな手段です。Grails では、レガシー・データベースにすでにマッピングされている Java クラスがあれば、レガシー・データベースをそのまま変更せずに使用することができます。この記事では、レガシー Java クラスと併せて Hibernate HBM ファイル、そして Enterprise JavaBeans 3 アノテーションを使用する例をそれぞれ紹介します。
    2008/07/15  
 
Firefox 拡張機能を利用して Google カレンダーに暗号化機能を組み込む
最近の Web アプリケーションは、オンライン・ストレージ、オンライン・アクセス、オンライン・コラボレーションにさまざまなメリットをもたらしています。しかし、一部のアプリケーションは別としても、ユーザー・データを暗号化するアプリケーションはほとんどありません。この記事では、よく使われるオンライン・カレンダー・アプリケーションのユーザー・データに基本的な暗号化サポートを追加するために必要なツールとコードを紹介します。Firefox 拡張機能の非常に優れた柔軟性と Gnu Privacy Guard を利用して、Google のカレンダー・アプリケーションに暗号化された予定に関する記述のみを保存し、適切な復号化キーを持つユーザーには、この記述をプレーン・テキストで表示する方法を説明します。
    2008/07/15  
 
Ruby on Rails と Eclipse による iPhone アプリケーション開発: 第 3 回 iPhone 対応の高度なビューを開発する
iPhone と iPod touch は、Mobile Safari を米国で最も人気のあるモバイル・ブラウザーにしました。Mobile Safari は通常の Web ページのレンダリングにも十分対応できますが、それでも数多くの Web 開発者たちは iPhone を対象としたアプリケーションのバージョンを作成しています。連載「Ruby on Rails と Eclipse による iPhone アプリケーション開発」の第 3 回では、ユーザーがリスト構造の最後に達したときに、アプリケーションが実際にコンテンツを表示するために必要な処理について説明します。
    2008/07/15  
 
Apache Geronimo と Grails
皆さんは Web サイトを迅速かつ安価に構築したいと思う一方、産業レベルの実力を持った技術を活用したいと思っているのではないでしょうか。Grails と Apache Geronimo を使うことで、まさにそれを実現することができます。Grails は動的言語である Groovy の強力さを活用して開発を加速します。その一方で Grails は実証済みの Java 技術を活用して Java 仮想マシン上で実行されます。そのため、Apache Geronimo に Grails アプリケーションをデプロイすることで、そのアプリケーションを容易に次のレベルに高めることができます (Apache Geronimo は Java EE V5 に認定された、オープンソースの主要なアプリケーション・サーバーです)。この記事では、Grails によって Web 開発がいかに容易になるか、また Geronimo によって Grails のデプロイメントがいかに容易になるかを説明します。さらに Geronimo によって提供されるリソースやサービスを Grails アプリケーションがどのように活用するかについても説明します。
    2008/07/08  
 
Ruby on Rails と Eclipse による iPhone アプリケーション開発: 第 2 回 iPhone 向けコンテンツをクライアントに表示する
iPhone と iPod touch は、Mobile Safari を米国で最も人気のあるモバイル・ブラウザーにしました。Mobile Safari は通常の Web ページのレンダリングにも十分対応できますが、それでも数多くの Web 開発者たちは iPhone を対象としたアプリケーションのバージョンを作成しています。連載「Ruby on Rails と Eclipse による iPhone アプリケーション開発」の第 2 回では、ドリルダウン・リストをナビゲーション手段として使用する一般的な方法を学びます。
    2008/07/08  
 
PHP アプリケーションから Google カレンダーを利用する
Google カレンダーでは、Web アプリケーションの開発者がユーザーの生成するコンテンツと予定の情報に REST ベースの開発者向け API を使ってアクセスすることができます。この API によって生成された XML フィードを処理し、これらの XML フィードを使ってカスタマイズした PHP アプリケーションを構築するには、PHP の SimpleXML 拡張機能と Zend の GData Library が最適です。この記事では Google Calendar Data API を取り上げ、この API を使用してユーザーが生成したカレンダーを閲覧する方法、カレンダーに予定を追加したり、予定を更新したりする方法、そしてキーワード検索を行う方法を、実例を挙げながら説明します。
    2008/07/08  
 
Web 時代の非リレーショナルデータベース: 第 1 回 Apache CouchDB の概要とインストール
RESTful API によるデータベースアクセス、MapReduce フレームワークによるクエリ、関数型言語 Erlang による実装、といった今話題の最新技術を取り入れた Apache CouchDB(*1) という非リレーショナルデータベースが注目されています。今回は 5 回シリーズの第 1 回として、CouchDB とはいったい何なのかを紹介します。Web 開発者の皆様は、ぜひこの新しいデータベース技術を習得してください。
    2008/07/04  
 
Seasar2: 第 5 回 Seasar2 から DB2 を利用する
本連載では,軽量コンテナ Seasar2 を IBM WebSphere Application Server や IBM DB2 と連携させる方法について紹介します.連載の第 5 回目となるこの記事では,Seasar2 から WAS のコネクションプールを経由して DB2 を利用する方法を紹介します.
    2008/06/27  
 
CDT デバッガーとのインターフェース: 第 2 回 Eclipse の CDT と MI を使って gdb にアクセスする
Eclipse の CDT (C/C++ Development Tooling) で提供されるグラフィカルなデバッグ環境はほとんど完璧であり、ブレークポイント、ウォッチポイント、変数、レジスター、逆アセンブリー、シグナル、そしてメモリーなどの内容を表示することができます。この環境に機能を追加したり、あるいはこれらのビューにアクセスして出力を表示したりといったことを、カスタムのデバッガーから行うことができます。しかしまず、CDI (C/C++ Debugger Interface) を理解し、この CDI がどのように Eclipse と通信するかを理解する必要があります。第 1 回ではこの CDI を上位レベルで説明し、この記事では実際の例を紹介し、CDT が CDI と MI (Machine Interface) をどのように使って GNU Debugger とインターフェースを取るのかを学びます。
    2008/06/24  
 
Eclipse の Ganymede の概要
Eclipse の Ganymede リリースには 24 種類のプロジェクトが含まれていますが、これは Eclipse のエコシステムの内部で行われていることの多様性と革新性を示しています。Ganymede のプロジェクトのいくつかについての概要と、さらに情報を得るためのリソースについて調べてみましょう。
    2008/06/20  
 
変形ポータルによる時間依存データの視覚化
時間に依存したデータ・セット間の関係を調べられるように、連続した画像フレームで変形ポータルを作成可能な SDL (Simple DirectMedia Layer) 対応アプリケーションを作成してください。
    2008/06/10  
 
万人のためのオートメーション: プッシュボタンによるドキュメント作成
ソフトウェア製品を提供する上で、プロジェクトのドキュメントの作成は必要悪の 1 つです。でも想像してみてください。ボタンのクリック 1 つでドキュメントを作成できたとしたらどうでしょう。連載「万人のためのオートメーション」では今回、オートメーションのエキスパート、Paul Duvall がオープンソースのツールを使って UML (Unified Modeling Language) 図、ビルド図、ERD (Entity-Relationship Diagram: エンティティー・リレーションシップ図)、さらにはユーザー・マニュアルの作成まで自動化する方法を紹介します。
    2008/06/10  
 
CDT デバッガーとのインターフェース: 第 1 回 C/C++ デバッガーのインターフェースを理解する
Eclipse の CDT (C/C++ Development Tooling) は C/C++ 開発用のオープンソース環境として最もよく知られたものの 1 つであり、その人気を支える大きな要素が CDT の持つ本格的なデバッガーです。一方、あまり知られていませんが、カスタムのデバッガーをサポートするために CDT フレームワークを拡張することができます。適切なプラグインを利用することにより、カスタムのデバッガーは CDT のグラフィカルなデバッグ環境のあらゆる機能を利用することができます (ステップごとのコード実行、ウォッチポイントの設定、ブレークポイントの設定、レジスターやメモリーの内容、そして変数の表示など)。こうしたプラグインの作成方法を、CDI (C/C++ Debugging Interface) に焦点を当てながら学びましょう。
    2008/06/10  
 
Ruby on Rails と Eclipse による iPhone アプリケーション開発: 第 1 回 iPhone 向けコンテンツを提供する
iPhone と iPod touch は、Mobile Safari を米国で最も人気のあるモバイル・ブラウザーにしました。Mobile Safari は通常の Web ページのレンダリングにも十分対応できますが、それでも数多くの Web 開発者たちは iPhone を対象としたアプリケーションのバージョンを作成しています。この連載、「Ruby on Rails と Eclipse による iPhone アプリケーション開発」では、サーバー・サイドでRuby on Rails を使用して Mobile Safari を識別し、このモバイル・ブラウザーにカスタム・コンテンツを提供する方法を紹介します。
    2008/06/03  
 
TouchPad を備えたラップトップにマルチタッチ・ジェスチャーのサポートを追加する
Synaptics TouchPad の synclient プログラムの出力を分析することによって、Linux アプリケーションで「スワイプ」や「ピンチ」といった操作を使えるようにしましょう。
    2008/06/03  
 
NASA の World Wind Java SDK を Eclipse に組み込む
NASA (アメリカ国立航空宇宙局) によるオープンソースの WWJ (World Wind Java) SDK によって、オープンな GIS (Geographic Information Systems) コミュニティーに新たな可能性が生まれます。World Wind は Java 言語と OpenGL で作成され、世界を 3D で見られる対話型のビューアーであり、ユーザーは宇宙空間から地球上の任意の場所にズームインすることができます。この記事では、Eclipse ベースのアプリケーションを機能強化したいと望む GIS 開発者のために、WWJ SDK を Eclipse のプラグインとして組み込むための方法について説明します。
    2008/06/03  
 
Eclipse の Rich Client Platform アプリケーションを URL から開く
今日容易に Web ページへナビゲートできるのと同じように、RCP (Rich Client Platform) アプリケーションのリッチな関数にまで容易にナビゲートできることを想像してみてください。この記事の手順に従うと、URL をクリックするだけで、Eclipse RCP アプリケーションの中の特定のビジネス・オブジェクトを開くことができます。
    2008/05/27  
 
JavaScript Development Toolkit の紹介
JSDT (JavaScript Development Toolkit) は、Eclipse プラットフォームに堅牢な JavaScript プログラミング・ツールを提供するオープンソースのプラグインです。JSDT は開発を効率化してコードを簡潔にし、純粋な JavaScript ソース・ファイルと HTML に組み込まれた JavaScript の生産性を向上させます。
    2008/05/27  
 
適切な Eclipse ディストリビューションを選択する
皆さんにとって、どの Eclipse ディストリビューションが適切なのでしょう。Eclipse Europa ベースの商用ディストリビューション (ディストロ) が提供するフィーチャーや便利さはそれぞれ異なります。また多くの商用ディストリビューションでは、フリー・エディション、またはコミュニティー・エディションをダウンロードして使用することができます。この記事では、CodeGear の JBuilder 2008 Turbo の試用版、nexB の EasyEclipse、IBM の Europa バンドル、そして Innoopract の Yoxo On Demand ディストロを比較します。これらのうちのどれを使用する場合も、既にパッケージされてカスタマイズされた Eclipse Europa をダウンロードすることができ、また多くのディストリビューションには、すぐに Eclipse Europa を使い始めるために必要なプラグインやツールが最初から含まれています。
    2008/05/20  
 
PHP を使って Google ノートブックのデータを処理、統合する
Google ノートブックは、ユーザーがオンライン・ジャーナルにメモと Web クリッピングを保存し、共有できる無料のサービスです。このサービスが提供する REST ベースの API を利用することで、開発者はこのサービス向けにカスタマイズした PHP アプリケーションを SimpleXML を使って構築できるようになります。この記事では、ノートブックやノートブックのコンテンツを PHP を使って読み取る例を用いて、この API の使い方を説明します。
    2008/05/20  
 
プロのように Ajax アプリケーションを開発する: 第 1 回 Prototype JavaScript ライブラリーと script.aculo.us を使う
もし皆さんが Web アプリケーションの開発を最近行っているとすると、おそらく皆さんは Ajax の開発を行っていることでしょう。Ajax は、もはや特別な場合にアプリケーションに追加するための風変わりなものではなく、Web 開発になくてはならないものになっています。これまでは、ある意味で、Ajax を使ってアプリケーションを機能強化する作業は複雑でした。クロスブラウザーの制約を処理し、大量の複雑な JavaScript を作成し、しかもそうした JavaScript の中にある魔法のような数字コードを学ぶ必要があるといったことは、Ajax 開発者が直面する困難のごく一部にすぎませんでした。幸いなことに、現在はそうした作業を容易に行えるようにしてくれる、オープンソースの JavaScript ライブラリーをいくつか入手することができます。この記事は 3 回シリーズの第 1 回として、Prototype JavaScript ライブラリーと script.aculo.us を使って曲を管理する Ajax アプリケーションを作成します。
    2008/05/13  
 
Seasar2: 第 4 回 WebSphere Application Server Toolkit での HOT deploy の利用
連載の第 4 回目となるこの記事では、統合開発環境である WebSphere Application Server Toolkit と Seasar2 の HOT deploy 機能を利用して Web アプリケーションを快適に開発する方法を紹介します。
    2008/05/09  
 
万人のためのオートメーション: Ivy による依存関係の管理
プロジェクトやツール間にあるソース・コードの依存関係を管理するのは厄介な作業となりがちですが、必ずしもそう決めてかかる必要はありません。オートメーションのエキスパートである Paul Duvall が連載「万人のためのオートメーション」で今回説明するのは、大規模な Java プロジェクトであれば必ず必要になってくる無数の依存関係の管理に、Apache Ant プロジェクトの Ivy 依存関係管理ツールで対処する方法です。
    2008/05/06  
 
PHP の将来
PHP の次期バージョンである V6 には新しい機能や構文の改善が含まれており、オブジェクト指向の観点から使いやすくなっています。その他の重要な機能、例えば多くのコア関数で Unicode がサポートされていることなどは、PHP V6 が国際化のサポートや堅牢さの面で一層優れたものになったことを示しています。
    2008/05/06  
 
ext4 へのマイグレーション
歴代の Linux ファイルシステムのなかで最新の Ext4 は、今までのファイルシステムと同じように重要かつ人気のファイルシステムになりそうです。Linux システム管理者としては、その利点と欠点、そして ext4 にマイグレーションする際の基本手順を認識しておかなければなりません。この記事では、ext4 を導入するタイミング、従来のファイルシステム・メンテナンス・ツールの使い方を ext4 に適応させる方法、さらにこのファイルシステムを最大限利用する方法を説明します。
    2008/04/30  
 
Jenabean: JavaBeans を RDF に難なくバインドする
RDF (Resource Description Framework) は、W3C (World Wide Web Consortium) が提唱する Web 上でのデータのリンクおよび表現に関する標準です。セマンティック Web アプリケーションを開発する Java 開発者は、RDF プロパティーを Java 型に、あるいは Java 型を RDF プロパティーに変換しなければなりません。Jenabean は Jena のセマンティック Web フレームワークの柔軟な RDF/OWL API を使用して JavaBeans を存続させることで、セマンティック Web アプリケーションの作成を Java 開発者にとって簡単かつ馴染みのある作業にします。
    2008/04/29  
 
.NET アプリケーションを Visual Studio から Eclipse にマイグレートする
Eclipse プラグインである Emonic を使ってオープンソースの C# アプリケーションを開発する方法と、既存の Microsoft .NET Framework V2.0 プロジェクトに対して Eclipse を使うための方法を学びましょう。
    2008/04/22  
 
PHP で YouTube API を操作する
YouTube 動画共有サイトでは、Web アプリケーション開発者が REST をベースとした開発者向け API を使って公開コンテンツにアクセスできるようになっています。この API によって生成された XML フィードを処理し、カスタマイズした PHP アプリケーションを構築するために使うには、PHP の SimpleXML 拡張機能が最適です。この記事では YouTube Data API を紹介し、この API を使用してユーザーが生成した動画のコンテンツをブラウズする方法、動画のメタデータや動画に対するコメントとレスポンスにアクセスする方法、そしてキーワード検索を行う方法を具体的に説明します。
    2008/04/18  
 
Zend Framework V1.5 では何が新しいのか
人気の高いオープンソースの Zend Framework に最近、いくつか非常に便利な機能強化が行われました。この記事では Zend Framework の V1.5 で何が新しくなったのかを学び、また Zend_Form、Zend_Layout、Zend_View などのアップグレードや、GData Web サービスのサポートの強化、そして Ajax サポートの改善などによって、PHP 開発者による最先端の Web アプリケーションの作成がどれほど容易になったのかを学びましょう。
    2008/04/15  
 
sndpeek を使って話し手を識別する
この記事では、sndpeek とカスタム・アルゴリズムを使って、事前に記録した音声ライブラリーと現在発せられている音声とを突き合わせるという方法で、電話会議やポッドキャスト、そしてライブ・メディア・イベントで誰が話しているのかをコンピューターに通知させるアプリケーションを作成します。帯域幅が限られているなかで、聴覚障害者が話し手を識別できるようにする基本的な支援プログラムを作成しましょう。
    2008/04/15  
 
Grails をマスターする: Ajax をほんの少し加えた多対多の関係
Web アプリケーションで多対多 (m:m) の関係を扱うには、さまざまな注意が必要になります。連載「Grails をマスターする」の今回の記事では、Scott Davis が Grails で m:m の関係をうまく実装する方法を説明します。GORM (Grails Object Relational Mapping) API とバックエンド・データベースではこの関係をどのように扱うか、そして Ajax (Asynchronous JavaScript + XML) を少し使うことでユーザー・インターフェースをいかに効率的なインターフェースにできるかを学んでください。
    2008/04/15  
 
EMF を使ったメタモデリング: 具体的で再利用可能な Java スニペットを生成する
再利用可能な Java スニペットをモデル化するために、EMF (Eclipse Modeling Framework) Ecore メタモデルに要素と属性を追加して拡張する方法を学んでください。この記事では、JET による動的テンプレートを使って拡張モデル要素の実装コードを生成する方法についてもステップバイステップで説明します。
    2008/04/08  
 
PlayStation 3 での Linux 開発: 第 3 回 簡単な方法で X11 をスリムにする
ソニーの PlayStation 3 (PS3) は Linux を実行することができます。しかし Linux を適切に実行させるためには少し調整が必要です。シリーズ最終回であるこの第 3 回では、Peter Seebach が、より小さなメモリー範囲に収まるように X11 をスリムにする方法について説明します。
    2008/04/08  
 
XStream を使って Java オブジェクトを XML にシリアライズする
XML にシリアライズしたデータには、オブジェクトの永続化やデータ・トランスポートなど、無数の使い方があります。しかし一部の XML シリアライズ技術は実装が複雑です。XStream は Java オブジェクトを XML にシリアライズし、またその逆の操作を行うための、軽量で使いやすいオープンソースの Java ライブラリーです。XStream のセットアップ方法を学び、また XStream を使ってオブジェクトをシリアライズ/デシリアライズする方法、そして XML 構成ファイルから構成プロパティーを読み取る方法を理解しましょう。
    2008/04/08  
 
プラグイン開発入門: 第 2 回 リッチ・クライアント・アプリケーションの導入
Eclipse でのプラグイン開発は、少しばかり芸術のようなところがあります。プラグインの概念、特に OSGi と Eclipse でのプラグインの概念を初めて学ぶ人にとっては、プラグインの作成を補助するために Eclipse に用意されている無数のツールを学ぶことは非常に大きな負担かもしれません。この記事の目的は、いくつかのベスト・プラクティスを適切に交えながら、プラグイン開発のための基本的なスキルを学ぶ手助けをすることです。
    2008/04/01  
 
PlayStation 3 での Linux 開発: 第 2 回 メモリーを有効に利用する
ソニーの PlayStation 3 (PS3) は Linux を実行することができます。しかし Linux を適切に実行させるためには少し調整が必要です。このシリーズの 2 回目である今回は Peter Seebach が、メモリーは一体どこに使われているのかを調べ、そうしたメモリーを有効に利用する方法について説明します。
    2008/03/31  
 
Seasar2: 第 3 回 Seasar2 による宣言的トランザクション
本連載では,軽量コンテナ Seasar2 を IBM WebSphere Application Server や IBM DB2 と連携させる方法について紹介します.連載の第 3 回目となるこの記事では,Seasar2 の宣言的トランザクションについて紹介します.
    2008/03/28  
 
Groovy を DSL として用いてプラグイン機能を実現する
これまでアプリケーションの設定を保持するファイルとして、XML が広く使われてきました。しかしコードに密接に関連した設定内容は、XML のかわりにプログラミング言語を利用して記述した方が、簡単に書ける場合が少なくありません。本稿ではアプリケーションにプラグイン機能を追加するためのプラグインライブラリを例として取り上げ、Groovy 言語を設定ファイルとして利用する方法について解説します。
    2008/03/28  
 
Eclipse BPEL プラグインを使って WS-BPEL V2.0 ビジネス・プロセスを開発し、実行する
BPEL V2.0 は、BPEL 以外の大量のコンポーネントや Web サービスから構成される巨大で複雑なアプリケーションの開発を補助する、強力な言語です。BPEL を利用すると、グラフィカル・エディターを使って人間が理解しやすい図でワークフローを表現し、長期にわたり実行されるワークフローを記述することができます。この記事では、プロセスを開発するための Eclipse BPEL プラグインと、プロセスを実行するための Apache ODE を組み合わせる方法について説明します。
    2008/03/25  
 
PlayStation 3 での Linux 開発: 第 1 回 単なるゲーム機を超える
ソニーの PlayStation 3 (PS3) は Linux を実行することができます。しかし Linux を適切に実行させるためには少し調整が必要です。この記事はシリーズの第 1 回として、Peter Seebach が PS3 Linux の特徴や利点を紹介し、また少し調整するだけでメリットが得られる問題をいくつか説明します。
    2008/03/18  
 
キーの打ち方によってユーザーを識別し、検証する
GDM (GNOME Display Manager) を変更して、キーストローク・ダイナミックス処理によるユーザー検証をサポートできるようにしてください。そのためには、ユーザー名を入力するときのキーストローク・パターンの一方向暗号化であるハッシュを作成して保管します。そして現行のキーストローク・パターンを読み取り、その特徴が一致するとユーザーのログインを許可するためのコードを GDM に追加します。
    2008/03/18  
 
動的計画法と配列アラインメント
分子生物学では、コンピューター・サイエンスのアルゴリズムを研究用のツールとしてますます利用するようになってきています。この記事では、コンピューターを使って生物学上の問題を解決する、バイオインフォマティクス (bioinformatics: 生命情報科学) を紹介します。そして多くのプログラミング・プロジェクトで役立つ高度なアルゴリズム手法である、動的計画法の基本を学びます。
    2008/03/11  
 
WSAS と Eclipse を使って Web サービスの作成を単純化する
今日では至る所に Web サービスがあります。どのような新しいアプリケーション、あるいは機能を開発している場合でも、Web サービスを作成する必要に迫られる可能性が高くなっています。そしてほんの少し前まで、Web サービスの作成は苦しい作業でした。WSO2 はそれを認識し、Web サービスに関する作業を楽に行える Eclipse プラグインを作成しました。この記事では、WSO2 の Web Services Application Server (WSAS) Eclipse プラグインと、このプラグインが Web サービスの開発にどう役立つのかを説明します。
    2008/03/04  
 
Varnish を使って PHP アプリケーションのスケーリングを行う
Varnish のようなリバース・プロキシーと PHP を使って Web サーバー・ファームの容量を増加させましょう。
    2008/03/04  
 
Seasar2: 第 2 回 UOWManager によるトランザクションの制御
WebSphere Application Server(以下WAS)のV6.0.2.19またはV6.1.0.9以降では,WASのトランザクション・コンテキストを制御するための新しいインターフェースUOWManagerが使用できます。Seasar2などのフレームワーク製品は,このインターフェースを使用してトランザクション制御を行っています。
    2008/02/29  
 
OLPC ラップトップ向けデスクトップ開発
XO ラップトップ (OLPC (One-Laptop-Per-Child) イニシアチブの一環) は、世界中の子供たちの教育支援を目的とした低価格のラップトップ・プロジェクトです。このラップトップには、低価格で耐久性に優れた今までにないハードウェア設計、そして基礎となるオペレーティング・システムに GNU/Linux を採用するなど、数多くの革新が盛り込まれています。また、XO には Python で作成されたアプリケーション環境も組み込まれており、この環境は Sugar というヒューマン・インターフェースを使って子供を含めた誰もが使用できるようになっています。developerWorks のチュートリアル「Application development for the OLPC laptop」から抜粋したこの記事では、Sugar の API を取り上げ、 Python を使用した Sugar でのグラフィックによるアクティビティーの開発およびデバッグ方法を紹介します。
    2008/02/26  
 
Project Zero および WebSphere sMash アプリケーションのセキュリティーを守る: 第 3 回 OpenID を使って Project Zero および WebSphere sMash アプリケーションを保護する
アプリケーション・リソースのアクセス制御ベースのセキュリティーは、Project Zero のコア機能のうちの 1 つです。OpenID はインターネット上で分散認証を行うための、オープンソースの新しいセキュリティー技術で、Web コミュニティーではこの技術への関心が次第に高まってきています。Project Zero ではこの新技術を導入し、セキュリティーの一部として提供しています。連載最終回となるこの第 3 回目の記事で、Project Zero Security の詳細、そして OpenID 認証を利用してアプリケーションに対してセキュリティー・ルールを定義し、ユーザー・レジストリーを拡張する方法を学んでください。
    2008/02/19  
 
PHP のフレームワーク: 第 5 回 外部タスクを統合する
ほんの数年前、PHP に対する一般的な批判の中に、PHP が MVC スタイルのアーキテクチャーをサポートしていないというものがありました。現在では、開発者は数多くの PHP フレームワークの中から好きなものを選択することができます。この「PHP のフレームワーク」シリーズは、広く使われている 3 つの PHP フレームワークである、Zend、symfony、そして CakePHP を取り上げます。そして、この 3 つの各フレームワークを使ってサンプル・アプリケーションを作成し、また拡張しながら、各フレームワークの類似点と相違点を検証します。今回の記事では、外部タスクを統合し、スケジューラー cron を使って呼び出すことのできる単純なタスクを作成します。
    2008/02/19  
 
Eclipse V3.3 でメニュー項目を構成して追加する方法
Eclipse の以前のバージョンでは、コマンドをメニューやポップアップ・メニュー、あるいはツールバーに追加するのは厄介な作業でしたが、それはもう過去の話になりました。Eclipse V3.3 には今までになく簡単なメカニズムが導入されているからです。この記事で、org.eclipse.ui.menus の使い方を学んでください。
    2008/02/19  
 
Web サービスと Ajax を使ってデータ入力を自動化する
この記事では、余分なものを整理し、Web サービスと Ajax (Asynchronous JavaScript + XML) によってアプリケーション (この場合は RoR (Ruby on Rails) アプリケーション) を改善する方法を学びましょう。具体的には、Web サービスを呼び出すとともに Ajax を利用することで、一般的な Web アプリケーションの動作 (ここでは住所の入力) を洗練したものにする方法について説明します。また、こうした基本的な Web 2.0 のコンポーネントを組み合わせるための手法をいくつか学びましょう。
    2008/02/14  
 
PHP のフレームワーク: 第 4 回 Ajax のサポート
初期のバージョンの PHP に対する一般的な批判の中に、PHP が MVC (Model-View-Controller) スタイルのアーキテクチャーをサポートしていないというものがありました。現在では、開発者は数多くの PHP フレームワークの中から好きなものを選択することができます。この「PHP のフレームワーク」シリーズは、広く使われている 3 つの PHP フレームワークである、Zend、symfony、そして CakePHP を取り上げます。そして、この 3 つの各フレームワークを使ってサンプル・アプリケーションを作成し、また拡張しながら、各フレームワークの類似点と相違点を検証します。このシリーズの第 1 回ではこのシリーズ全体の概要を示し、このシリーズを進めていく上で必要なことを行いました。第 2 回では 3 つの各フレームワークを使ってサンプル・アプリケーションを作成しました。第 3 回では、このサンプル・アプリケーションを拡張し、またフレームワークのルールから外れた場合の処理について調べました。今回は、各フレームワークで Ajax (Asynchronous JavaScript + XML) がどのようにサポートされているかについて調べます。
    2008/02/12  
 
Grails をマスターする: GORM: おかしな名前の真面目な技術
どんな優れた Web フレームワークにも、確固としたパーシスタンス・ストラテジーは必要です。連載「Grails をマスターする」の第 2 回目では、Scott Davis が GORM (Grails Object Relational Mapping) API を紹介します。この記事を読めば、Grails アプリケーションでテーブル間の関係を作成し、データ検証ルールを設定し、さらにリレーショナル・データベースを変更するのがいかに簡単であるかがわかるはずです。
    2008/02/12  
 
ThinkPad を携えて行うワイヤレス環境の実地調査
ThinkPad に組み込まれている加速度センサーを使って、自分の動きを記録しながらネットワークの接続性をモニターしてください。記録したデータからカスタム・アルゴリズムを使って歩行動作の特徴を抽出し、それから信号強度のグラフを自動的に見取り図に書き出すことで、最高のカバレッジを示すエリアを判断することができます。
    2008/02/12  
 
プラグイン開発入門: 第 1 回 開発の基本
Eclipse でのプラグイン開発は、少しばかり芸術のようなところがあります。プラグインの概念、特に OSGi と Eclipse でのプラグインの概念を初めて学ぶ人にとっては、プラグインの作成を補助するために Eclipse に用意されている無数のツールを学ぶことは非常に大きな負担かもしれません。この記事の目的は、いくつかのベスト・プラクティスを適切に交えながら、プラグイン開発のための基本的なスキルを学ぶ手助けをすることです。
    2008/02/12  
 
Eclipse PHP Class Generator プラグインを使って PHP アプリケーションをすぐに作成する
PHP のクラスは相変わらずブラック・ボックスの場合があり、初めて PHP で開発を行う人の多くにとっても、経験の長い PHP 開発者の一部の人にとっても、未知の部分がたくさんあります。しかし、クラスがそういった点ばかりというわけではありません。クラスを使うことでコードをモジュール化することができ、(コードをクラス内の関数に入れることによって) コード・ベース全体に散らばった余分なコードのコピーを削除することができます。するとコードの管理がずっと容易になります。Eclipse 用の PHP Class Generator プラグインは、そうした作業を PHP 開発者が行う際に役に立ちます。つまり PHP Class Generator プラグインはデータベース・テーブルの管理を行うのに役立つ PHP クラスを生成してくれるため、開発者はそういった作業を行う必要がなくなり、学習期間を短縮することができます。
    2008/02/05  
 
Seasar2: 第 1 回 WebSphere Application Server へ Web アプリケーションをデプロイする
本連載では、軽量コンテナ Seasar2 を IBM WebSphere Application Server(以降 WAS と表記)や IBM DB2 と連携させる方法について紹介します。連載の第1回目となるこの記事では、Seasar2 を利用するWebアプリケーションをWASへデプロイする際に気をつけるべき事柄について説明します。
    2008/02/01  
 
Eclipse で開発する iPhone の Web アプリケーション
iPhone の Web サイトを Eclipse、Aptana の iPhone Development プラグイン、そして iUi フレームワークを使って作成する方法を学んでください。この記事では iPhone の Javadoc ビューアーを開発する手順に沿って、ユーザー・インターフェースを設計する際のヒントを明らかにするとともに、今後の iPhone アプリケーション開発について説明します。
    2008/01/29  
 
XMLBeans からのイベント受信
XMLBeans は XML と Java のデータのバインディングを行う素晴らしい技術ですが、モデル変更のオブザーバーを登録することはできません。ただし、生成された POJO (Plain Old Java Object) をカスタマイズすれば、必要なインターフェースと変更の通知を組み込むことができます。この記事では、数独 RCP (Rich Client Platform) のゲーム・アプリケーションを Eclipse で作成し、イベンティング (イベント通知機能) を使用してユーザーの入力を検証する方法を学びます。
    2008/01/29  
 
コンポジット・アプリケーション連載: 第2回 QRコード を活用しよう(後編)
前編では、インターネット上で公開されているQRコード生成サイトを利用したコンポーネントを開発し、サンプルとして提供した別のコンポーネントと合わせて1つのコンポジット・アプリケーションに配置・ワイヤリングしました。今回は前編の続きのステップ2として、QRコードを表示するコンポーネントを改良していきます。
    2008/01/25  
 
ヒント: del.icio.us ブックマークを PHP で操作する
del.icio.us サービスでは、ユーザーがオンラインでブックマークを収集して共有できるようになっています。これらのブックマークを del.icio.us の REST API とインターフェースを取る PEAR の Services_Delicious パッケージで操作して、カスタマイズした PHP アプリケーションを作成してください。
    2008/01/22  
 
PHP で作成するカスタマイズ可能な RSS フィード・アグリゲーター
RSS (Rich Site Summary、RDF Site Summary、あるいは Really Simple Syndication) が登場したのは 1990年代中頃です。それ以来、RSS 形式にはいくつかの変形が生まれ、その所有権をめぐる論争も起きました。しかし形はどうであれ、1 つの Web サイトから多数の Web サイトに Web コンテンツを配信する際に RSS が役立つことには変わりありません。RSS の人気はフィード・リーダー、あるいはフィード・アグリゲーターとも呼ばれる新しい種類の Web ソフトウェアの成長を可能にしました。市販のフィード・アグリゲーターはいくつかあるものの、自分なりのフィード・アグリゲーターを作成して自分の Web アプリケーションに統合するのも簡単です。フィード・アグリゲーターを独自に作成する際には、この記事で紹介する十分機能的な PHP コード・スニペットが役に立つはずです。このコードは、PHP をベースとしたサーバー・サイドの関数を使ってカスタマイズ可能な RSS フィード・アグリゲーターを開発する実例となります。さらに、記事に付属の RSS フィード・アグリゲーター・コードの完全版をダウンロードして、そのまま利用することもできます。
    2008/01/22  
 
Grails をマスターする: 初めての Grails アプリケーションのビルド
最新の Web 開発フレームワークを採用するために、Java プログラマーが好みの言語や既存の開発インフラストラクチャーを放棄する必要はありません。毎月 1 回お届けする新連載、「Grails をマスターする」の第 1 回目では、Java のエキスパートである Scott Davis が Grails を紹介し、初めての Grails アプリケーションをビルドする方法を手ほどきします。
    2008/01/15  
 
Java API リファレンス・マニュアル: 第 3 回 JavaTOC ドックレットと ANT を実行して生成する Eclipse Javadoc API リファレンス構造
今回の記事でも引き続き、JavaTOC ドックレットを取り上げ、その使い方と拡張方法を説明します。ここで説明する方法は、Javadoc による標準的なソリューションによるものと、JavaTOC ドックレット・ツールを使って作成した Eclipse プラグインのヘルプ・システムを使うものです。Eclipse で JavaTOC ドックレットを実行する際には、カスタム・ドックレット・ウィザード、次に Ant ビルド・システムを使用します。JavaTOC ツールによって生成されるのは、Java API リファレンス・マニュアルの TOC XML ナビゲーションです。
    2008/01/15  
 
PHP と Apache Solr によるエンタープライズ検索
エンタープライズ用として活用可能な検索エンジンである Apache Software Foundation の Solr と PHP アプリケーションを組み合わせるための方法を学びましょう。
    2008/01/15  
 
Orangevolt Eclipse XSLT プラグイン入門
Orangevolt XSLT プラグインは Swing ベースの ROXES XmlWrite の後継であり、Eclipse で XSLT を編集するための環境として ROXES XmlWrite を強化したものです。このプラグインは既存の Eclipse WTP (Web Tools Platform) の上に構築されており、XSL と XML のための新しいフィーチャーを導入しています。この記事では、XSLT がどのように役立つのか、また Orangevolt XSLT プラグインによって XSLT の利用がいかに容易になるかを学びます。
    2008/01/15  
 
PHP で XML をプル型構文解析する
PHP 5 に同梱された XMLReader ライブラリーについて学びましょう。XMLReader ライブラリーを利用すると、PHP ページでの XML 文書処理を、効率的なストリーミング・モードで行うことができます。
    2008/01/11  
 
PHP での正規表現をマスターする: 第 2 回 PHP でのテキストの処理方法
この、「PHP での正規表現をマスターする」シリーズの第 2 回では、困難なテキスト処理に関するさまざまな問題を、いくつかの高度な正規表現 (regex) 演算子を使って解決するための方法を学びます。
    2008/01/08  
 
Cell/B.E. コンテナーの仮想化: 第 2 回 実装の問題
この 3 回連載の記事では、コンテナー仮想化 (オペレーティング・システム仮想化) として知られる、ハードウェア・リソースを中心としたソフトウェア仮想化について説明し、オープンソースのプロジェクトである OpenVZ を介してコンテナー仮想化の例を示します。ソフトウェアによる手法を使った Cell/B.E. プロセッサーの仮想化に必要なコンポーネントと手法のすべてを包括的に概説する連載の第 2 回目では、第 1 回で説明した専用仮想化とパーティショニングの実装について詳しく説明します。
    2008/01/08  
 
ヒント: DITA Open Toolkit による容易なコマンドライン処理
DITA Open Toolkit は DITA ファイルをさまざまな出力形式に変換することができます。初めて DITA Open Toolkit をインストールすると、このツールキットを使うためには Ant をよく知らなければならないという印象を受けがちですが、DITA Open Toolkit のオプションの大部分は 1 行の Java コマンドに詰め込むことができるのです。
    2008/01/08  
 
PHP での正規表現をマスターする: 第 1 回 Perl は正規表現の王様かもしれませんが、PHP も素早く自在に入力を調べることができます
パターン・マッチングはソフトウェアでは非常に一般的な作業です。そのため、そうした作業を手軽に行うための特別な手法として、正規表現が進化してきました。この手軽な手法をコードの中でどう使えばよいのか学びましょう。
    2008/01/01  
 
Java API リファレンス・マニュアル: 第 2 回 JavaTOC ドックレットを使って生成する Eclipse Javadoc API リファレンス構造
連載第 2 回目となるこの記事では、使いやすくて検索ができる Java アプリケーション・プログラミング・インターフェース (API) のリファレンス・マニュアルを作成するためのさまざまな方法について説明します。
    2007/12/26  
 
コンポジット・アプリケーション連載: 第1回 QRコードを活用しよう (前編)
第0回ではコンポジット・アプリケーションを学ぶ上で有用な背景知識を整理しました。今回からはプログラムコードを交えて、実際のアプリケーション開発のステップの例を紹介していきます。
    2007/12/21  
 
OpenLaszlo: パフォーマンスの調整
パフォーマンス面を考慮したLZXコーディングの要点としては、各画面の表示(インスタンス生成)やデータ表示(データバインディング)という特に負荷の高い処理に対して注意を注ぐことになります。どちらの処理にしても、一度に全てを処理させず、いかに効果的に処理を後回しさせるかということに尽きます。本稿ではその点に重点を置いたLZXコーディングの方法を紹介します。
    2007/12/14  
 
Cell/B.E. コンテナーの仮想化: 第 1 回 概念とアーキテクチャー、そしてツール
この 3 回連載の記事では、コンテナー仮想化 (オペレーティング・システム仮想化) として知られる、ハードウェア・リソースを中心としたソフトウェア仮想化について説明し、オープンソースのプロジェクトである OpenVZ を介してコンテナー仮想化の例を示します。ソフトウェアによる手法を使った Cell/B.E. プロセッサーの仮想化に必要なコンポーネントと手法のすべてを包括的に概説する連載の第 1 回目では、Cell/B.E. プロセッサーの仮想化に関連する基本概念、そして OpenVZ および Cell/B.E. アーキテクチャーの特徴と Cell/B.E. 上で OpenVZ がどのようにして動作するかを説明するとともに、OpenVZ ツールの一部を紹介します。
    2007/12/11  
 
コンポジット・アプリケーション連載: 第0回 コンポジット・アプリケーションを取り巻く技術
コンポジット・アプリケーションとは、複数の画面を集約し、さらに連携させることによって既存の資産を再利用しながら作業効率のよい新しいアプリケーションを作るモデルです。 この概念自体は決して新しいものではありません。しかしながら適用された場はまだまだ少ないのではないかと思います。IBMではコンポジット・アプリケーションを作業効率のよいユーザー・インターフェースを実現するための重要な概念と位置づけ、このモデルを採用したアプリケーション、ミドルウェア、開発ツールを提供しています。 本連載ではデベロッパーの皆様がお持ちの資産や技術をどのようにコンポジット・アプリケーションに適用できるのか、どのように新規にコンポーネントを作ることができるのか、サンプルコードを交えてご紹介する予定です。
    2007/12/07  
 
PHP のフレームワーク: 第 3 回 フレームワークのルールから外れた処理
初期のバージョンの PHP に対する一般的な批判の中に、PHP が MVC (Model-View-Controller) スタイルのアーキテクチャーをサポートしていないというものがありました。現在では、開発者は数多くの PHP フレームワークの中から好きなものを選択することができます。この「PHP のフレームワーク」シリーズは、広く使われている 3 つの PHP フレームワークである、Zend、symfony、そして CakePHP を取り上げます。そして、この 3 つの各フレームワークを使ってサンプル・アプリケーションを作成し、また拡張しながら、各フレームワークの類似点と相違点を検証します。このシリーズの第 1 回ではこのシリーズ全体の概要を示し、このシリーズを進めていく上で必要なことを行いました。第 2 回では 3 つの各フレームワークを使ってサンプル・アプリケーションを作成しました。この第 3 回では、このサンプル・アプリケーションを拡張し、またフレームワークのルールから外れた場合の処理について調べます。
    2007/12/04  
 
キーストローク・ダイナミックスを利用してテキスト入力のオプションを広げる
入力の合計時間を測定してキーストロークの間隔を検証し、どんなデータが入力されたとしてもユーザーを認証できるようにしてください。さらに、パスワードにバックスペースや改行などの印字不能文字を含めるようにして、新しいレベルのパスワード難読化を実現してください。この記事ではオープンソースのツール、xev と Perl をキーストローク・ダイナミックスの分野に適用して、人間とコンピューターとの相互作用での人によって微妙に異なる特性を測定する方法を説明します。
    2007/12/04  
 
OpenLaszlo: パフォーマンスの考察
日本では意外と知られていないオープンソースのRIA/Ajax開発プラットフォームであるOpenLaszloについて、“システム開発”の視点からその導入方法について紹介する連載です。今回は、パフォーマンスに気をつけたLZXコーディングを行う前に、アプリケーションのパフォーマンスの勘所と切り分け方について解説します。
    2007/11/30  
 
XPath を使用して Google Calendar イベントを PHP Web サイトに表示する
Google Calendar をはじめとするオンライン・カレンダー・アプリケーションが実現する一元化された単純なシステムでは、オンライン・コミュニティーがイベント・カレンダーを管理し、コミュニティーのメンバーが近く予定されているイベントの情報を入手することができます。しかし、イベント・カレンダーをコミュニティーのポータルやフォーラム、あるいはブログに表示したいという組織も数多くあります。このような組織はたいていの場合、イベント・カレンダーの情報をオンライン・カレンダー・アプリケーションから組織の Web サイトにコピーしてきますが、そうなるとオンラインでのイベント一元管理の有効性は損なわれます。この問題に対する効果的なソリューションとなるのが、Google Calendar が提供する統合 API (Application Program Interface) です。この記事を読んで、XPath を使用して Google Calendar データを抽出し、PHP Web サイトに表示する方法を学んでください。
    2007/11/27  
 
動的 EMF を使ってメタモデルを構築する
動的 EMF (Eclipse Modeling Framework) が、Java 実装クラスを生成しなくても開発者がオンデマンドで動的 Ecore モデルを構築できるようにする仕組みを学んでください。この記事では EMF の API を紹介し、動的 Ecore モデルとそのインスタンスをシリアライズしてロードする方法を説明します。
    2007/11/20  
 
developerWorks インタビュー: Web 2.0 EXPO Tokyoにてティム・オライリー氏に聞く
2007年11月15、16日、アジアで初となる Web 2.0 EXPO Tokyo が開催されました。私は、アドバイザリー・ボード・メンバーとして、USからロッドスミスを迎え、キーノート・スピーチの準備をするなど、このイベントを裏で支えてきました。Web 2.0 という単語の生みの親とも言えるティム・オライリー氏と、2日目のキーノートの直後にちょっとした会話をする機会を得ました。ティムはとてもフランクに、そして、楽しそうに会話してくれました。そのときの様子をIBMのXMLデータベース/Info 2.0 エバンジェリストである中林紀彦とともにお送りします。
    2007/11/19  
 
DB2 Express-C 9.5 for Linux クイックインストール
このドキュメントではDB2 Express-C 9.5 for Linuxをインストールする方法をご紹介します。
    2007/11/15  
 
Linux SCSI サブシステムの徹底調査
SCSI (Small Computer Systems Interface) は多数のデバイス (主にストレージ関連のデバイス) と通信するためのインターフェースおよびプロトコルを定義する標準の集合で、Linux では SCSI サブシステムを提供し、これらのデバイスとの通信を可能にしています。Linux はディスク、CD-ROM ドライバーなどの上位レベルのドライバーを、Fibre Channel や SAS (Serial Attached SCSI) などの物理インターフェースに結び付ける階層化アーキテクチャーの格好の例です。この記事では、Linux の SCSI サブシステムを紹介し、このサブシステムの将来について検討します。
    2007/11/14  
 
電話番号や頭字語など、口述された言葉を対象にした自動音声会話アノテーションを作成する
オープン・ソースの Sphinx-4 音声認識パッケージを利用して、注釈を作成するために会話からほぼリアルタイムで文字と数字を捕捉してください。この記事ではカスタム Sphinx-4 辞書ファイルによって口述された文字と数字との一致候補を抽出し、テキストを処理して電話番号や頭字語などの値に整えます。そして、検索エンジンによる検索とローカル・データベースを使用して会議用アノテーターを作成します。
    2007/11/13  
 
Eclipse Process Frameworkプロジェクト
IBMはEclipse Foundationに対して、企業がソフトウェア開発プロジェクトの計画、実行を一貫して行うための、オープンソースのプロセス・フレームワーク構築プロジェクトを提案しています。
    2007/11/10  
 
PHP で処理する XML 構成ファイル
XML はアプリケーションの構成ファイルには便利で使いやすい式言語になりますが、この情報を PHP スクリプトに抽出するとなると厄介な問題に突き当たることがあります。そんなときに役立つのが、XJConf for PHP パッケージです。このパッケージが提供する API を使うと、XML でエンコードされた情報を読み取り、その情報を直接使ってスカラー、配列、PHP オブジェクトといった PHP データ構造を構成することができます。この記事ではそんな XJConf for PHP パッケージを紹介し、有用な実際のアプリケーションを例に、複合クラス・ツリーの構成方法や Web ベースの構成インターフェースのビルド方法など、このパッケージの使い方を説明します。
    2007/11/06  
 
Eclipse の CFEclipse プラグインを使って ColdFusion アプリケーションを迅速にコーディングする
ColdFusion は他の Web 開発言語と同様、熱狂的な支持を得ています。Eclipse はオープン・ソースの開発フレームワークとしてよく使われているため、ColdFusion 用のプラグインが登場してくるのは時間の問題でした。この ColdFusion 用のプラグインのインストール方法と使用方法を学んで、サンプルの ColdFusion アプリケーションを開発、テスト、そしてデプロイしましょう。
    2007/11/06  
 
OpenLaszlo: Flashならではの表現力 - OpenLaszloのSWFコンパイル
2回目の記事でOpenLaszlo4を使って一つのソースコードからSWFとDHTMLの両方を出力させる方法がわかっていただけたでしょうか。今回はブラウザに搭載されたJavascriptでは表現できない機能をswfコンパイルを使うことで実現する方法を紹介したいと思います。ここではフォントの埋め込み、画像やフォントの回転、プログラムによる描画といった表現力の向上と、ビデオ、オーディオのストリーミング機能を使ったビデオ配信やweb会議システムの構築などリッチメディアを扱う方法をオープンソースのストリーミングサーバーRed5を使って作成する方法を説明します。
    2007/11/02  
 
オープンソース・ツールを使ってグリッド・アプリケーションを開発する
オープンソース・ツールを使ってグリッド・アプリケーションを開発することで、さまざまな可能性が生まれます。第 1 に、開発プロセスが非常に速くなります。特に、Perl や Python などのスクリプト言語と Apache のような開発環境を利用した場合にはそれが顕著です。また、参考として利用できる例が豊富です。オープンソース技術を使ってグリッド・ソリューションを開発する利点と欠点について調べてみましょう。
    2007/10/30  
 
OpenLaszlo: OpenLaszloで簡単にリッチなAjaxアプリ開発
OpenLaszloは非同期通信、動的更新といったAjaxの特徴を備えながら、しかもFlashコンテンツなどリッチなUIを持つRIAアプリ開発を実現できるフレームワークです。OpenLaszloバージョン4からそれらの特長を生かしたままDHTML(Ajax)出力もできるようになり、適用範囲が大きく広がりました。本稿では一例として同じ動作をするサンプルプログラムについて一般のAjaxとOpenLaszloでのコードを比較し、その大きな違いとOpenLaszloの利点について解説します。
    2007/10/26  
 
Ajax と XML: メディアのための Ajax
幅広く利用可能なブロードバンド・メディアの出現により、ムービー、画像、そして音声が Web 2.0 革命の原動力となっています。この記事で、メディアに PHP や Ajax (Asynchronous JavaScript + XML) などの技術を組み合わせてカスタマーに魅力的なエクスペリエンスを提供する方法を学んでください。
    2007/10/23  
 
AjaxTags で Ajax 開発を容易にする
Web 2.0 の時代には、Web ベースのアプリケーションのユーザビリティーと応答性に関する開発者やユーザーの期待はずっと高くなっています。この 2 年間ほど岩の下に住んでいたのでもない限り、皆さんはAjax (Asynchronous JavaScript + XML) の手法について聞いたことがあるはずです。Ajax を使えば、洗練されていていて、応答性が良く、しかも非常に動的なブラウザー・ベースのユーザー・インターフェースを、ブラウザーがページをリロードせずに作成することができます。この記事では AjaxTags について見ていきます。AjaxTags は Java/JavaScript ライブラリーであり、JSP ページに Ajax の機能を容易に統合することができます。
    2007/10/23  
 
Rich Ajax Platform: 第 1 回 概要
Ajax (Asynchronous JavaScript + XML)、そして Web 2.0 の概念は、Web ベースのアプリケーションにライブ感を与える手法として開発コミュニティーに広く普及しています。RAP (Rich Ajax Platform) は、そんな Ajax 対応の Web アプリケーションを Eclipse 開発モデルを使って構築するための手段です。この記事では RAP の概要として、RAP 開発環境のセットアップ手順を説明し、デモを披露します。そして最後にわかりやすいサンプル・アプリケーションを紹介して記事を締めくくります。
    2007/10/23  
 
OpenLaszlo: 今すぐできるWebシステムのRIA/Ajax化
日本では意外と知られていないオープンソースのRIA/Ajax開発プラットフォームであるOpenLaszloについて、”システム開発”の視点からその導入方法について紹介する連載です。WebシステムをRIA/Ajaxにしたい/してみたいとお考えの皆さん。OpenLaszloを使えばシステムに大幅な変更をせずに、今すぐにでも移行できます。OpenLaszloはMVCモデルを*完全に*実現します。そのため、OpenLaszloでクライアントプログラムを作成すればサーバサイドはほぼそのまま現状のものを使うことができます。連載第一回目は、OpenLaszloを導入した際にサーバサイドプログラムがどうなるかについて解説いたします。
    2007/10/19  
 
Linux のアセンブラー: GAS と NASM を比較する
この記事では、Linux で最も一般的な 2 つのアセンブラーである GAS (GNU Assembler) と NASM (Netwide Assembler) の間での、構文や意味体系の重要な違いについて説明します。比較する項目は、基本的な構文や、変数やメモリー・アクセスの方法、マクロの処理、関数や外部ルーチン、スタックの処理、コード・ブロックを容易に繰り返すための手法などです。
    2007/10/17  
 
syslog を使って PHP アプリケーションを改善し、デバッグする
実行中のプログラムを調べるための古い手法では、変数の現在の値を「表示する」コードを重要なポイントに置きます。しかしこれを、プログラムの標準出力を妨害せずに行うにはどうすればよいのでしょう。PHP の syslog() 機能を使うと、こうした値を簡単に検証することができます。その方法について調べてみましょう。
    2007/10/16  
 
PHP のフレームワーク: 第2回 サンプル・アプリケーションを作成する
この「PHP のフレームワーク」シリーズでは、PHP のフレームワークとして広く使われている Zend、symfony、そして CakePHP の 3 つについて取り上げ、それぞれのフレームワークを使ってサンプル・アプリケーションを作成し、拡張しながら、類似点や相違点を検証します。第 1 回はこのシリーズ全体の概要を示し、このシリーズを進めていく上で必要なことを行いました。この第 2 回では、この 3 つのフレームワークそれぞれを使ってサンプル・アプリケーションを作成します。
    2007/10/16  
 
Axis2 を使って非同期 Web サービスを開発する
アプリケーション開発にとって非同期 Web サービスの実装と呼び出しは重要です。Web サービスの機能を公開する UI は、より一層対話型になってきました。そのため非同期の呼び出しと実装は、より便利で効果的なものになっており、結果的にユーザー・エクスペリエンス全体を改善する上で役立っています。この記事では非同期の Web サービスにおけるシナリオのさまざまなパターンの概要を説明し、またそれらを Apache Axis2 を使って実装する方法についても説明します
    2007/10/11  
 
PHP のフレームワーク: 第1回 一般的な 3 つのフレームワーク
つい数年前までは、PHP に関する一般的な批判の中に、PHP が MVC スタイルのアーキテクチャーをサポートしていないというものがありました。時は変わりました。最近では、PHP のフレームワークにはいくつかの選択肢があります。このシリーズでは、広く使われている 3 つの PHP フレームワークである、Zend、symfony、そして CakePHP を取り上げます。そして、この 3 つの各フレームワークを使ってサンプル・アプリケーションを作成し、また拡張しながら、各フレームワークの類似点と相違点を検証します。
    2007/10/09  
 
Eclipse の Cusp プラグインを使って Lisp アプリケーションを開発する
Lisp は素晴らしいプログラミング言語です。ほとんど型を持たないという Lisp の性質を活用することで、プログラミング言語の知識を広げることができます。また、Java プログラミング言語や PHP、あるいは C/C++ の経験が豊富な人達にとっても、新しい考え方でアプリケーションを開発する上で Lisp が役に立ちます。さらに、Lisp を使うとスマートなことがいくつかできるのです。Eclipse の Cusp プラグインを使って Lisp アプリケーションを開発する方法を学びましょう。
    2007/10/09  
 
Python でのメタクラス・プログラミング、第 3 回
プログラミングが技巧的になりすぎると、設計が複雑になり、コードが脆弱になり、学習曲線がなだらかになり、そして何よりも困ったことに、デバッグが困難になります。著者の Michele と David は、彼らが以前に執筆した記事「Python でのメタクラス・プログラミング」が熱狂的に受け入れられたため、その後必要以上に技巧的になってしまったことに責任を感じています。この記事では、プログラマーが技巧的なプログラミングを避けるための支援をすることで、その修正を図ります。
    2007/09/25  
 
QEMU によるシステムのエミュレーション
QEMU は、PC システム全体を対象としたオープンソースのエミュレーターです。QEMU ではプロセッサーをエミュレートするだけでなく、必要なすべてのサブシステム (ネットワーク用ハードウェアやビデオ・ハードウェアなど) もエミュレートすることができます。さらに、対称型マルチプロセッシング・システム (最大 255 基の CPU) やその他のプロセッサー・アーキテクチャー (ARM、PowerPC など) といった高度なシステムをエミュレートすることも可能です。この記事では、QEMU とそのアーキテクチャーについて探り、Linux ホストでゲスト・オペレーティング・システムをエミュレートする方法を紹介します。
    2007/09/25  
 
現役 PHP プログラマーのための Unicode
PHP に関する一般的なチュートリアルや参考資料に見られる、Hello World などほとんどすべての例は、限定された形式の英語を「自然言語」での通信に使うことを想定しています。しかし PHP は、それ以上のことができます。適切な方法を使えば、PHP は英語での名前や外来語にときどき現れるアクセント記号付きの文字を処理できるだけではなく、ドイツ語やロシア語、中国語、日本語など、世界中の一般的な言語の大部分を効果的に処理することができます。
    2007/09/25  
 
ベクトル空間エンジンによる構造化 LDAP データの検索
この記事では、Perl とベクトル空間検索エンジンを使って LDAP (Lightweight Directory Access Protocol) データベースのレコードを検索し、表示する方法を説明します。この方法では語形変化させた文字と数字を活用して構造化 LDAP データから有用なベクトル空間を作り出します。さらにタイプミスやスペル・エラーを自動的に補完して、入力したクエリーに最もふさわしい一致結果を表示することができます。
    2007/09/18  
 
eJFace を使って組み込みアプリケーションを開発する
今後数年間はモバイル機器用アプリケーションの需要が増えると考えて間違いないでしょう。そんな今こそ、オープン・スタンダードの組み込み JFace ライブラリー、eJFace を学ぶにはちょうどいい時期です。組み込みアプリケーションの新しいビルド技術として登場した eJFace (embedded JFace) は eRCP (embedded Rich Client Platform) のコンポーネントの 1 つで、組み込みアプリケーションのユーザー・インターフェースを構成するための組み込み環境を開発者に提供します。この記事では eJFace を JFace と比較し、eJFace を使用してアプリケーションを開発する方法を紹介します。
    2007/09/11  
 
システム管理者のための Python
Python を導入して、UNIX システムを管理するとともに優れたプログラム設計の概念を取り入れてください。学習しやすいオープンソースのスクリプト言語、Python は、システム管理者のジョブを迅速に行えるようにするだけでなく、管理作業をもっと楽しいものに変えてくれます。
    2007/09/07  
 
EMF モデルのコンテンツをナビゲートするための Eclipse プラグインを作成する
EMF.Edit と CNF (Common Navigator Framework) を利用してツリー・ビューアーをベースとしたモデル・ナビゲーション・プラグインを作成する方法を学んでください。この記事では、ユーザーが EMF (Eclipse Modeling Framework) モデルのコンテンツを操作、ナビゲートできるようにする Eclipse プラグインを作成します。プラグインを開発し、EMF 編集フレームワークでモデルのコンテンツを抽出するのに適切な構造を実装して、CNF ベースのビュー・パーツにコンテンツを表示する方法をステップバイステップで解説します。
    2007/09/04  
 
Web サービスの脆弱性を避けながら Ajax アプリケーションをスピードアップさせる
効率的な処理を行える Ajax アプリケーションをデプロイしたからといって、SLA (Service Level Agreement) のサービス・レベルを高く維持できるとは限りません。効率的な処理を行えるようにどんなにうまく Ajax 形式のコードを変更したとしても、リスクと脆弱性は常に存在します。そのため、そのリスクと脆弱性を監視して軽減することも必要となるのです。この記事では developerWorks でお馴染みの著者、Judith Myerson が簡単に Ajax を復習し、Web サービスの脆弱性とは何か、そしてなぜ SLA が重要なのかを説明し、Ajax アプリケーションの速度を上げるためのソリューションをいくつか提案します。
    2007/08/28  
 
ヒント: PHP による NITF (News Industry Text Format) ファイルの読み取り
NITF (News Industry Text Format) とは、ニュース記事のコンテンツをエンコードし、共有するために報道界で使用している XML ベースのフォーマットのことです。この NITF フォーマットのファイルを読み取って解析するために PEAR の XML_NITF パッケージに用意された拡張可能 API を使えば、簡単に文献情報や記事のコンテンツを抽出して PHP アプリケーションで使用することができます。
    2007/08/28  
 
Geronimo への転向: 統合パッケージを使用する: GlassFish JSTL 1.2 と Apache Geronimo 2.0
Apache Geronimo チームが、新しい話題の Java EE (Java Platform, Enterprise Edition) 5.0 仕様の実装に成功しました。Java EE 5 で注目に値する特徴の 1 つは、新規 JSTL (Java Standard Tag Library) 仕様です。JSTL 1.2 の鍵である統一式言語により、JSF (JavaServer Faces) と併せてJSTL 選り抜きの機能を使用できるようになります。連載「Geronimo への転向」では今回、Java Web 技術の歴史を振り返って JSTL 1.2 の重要性を説明し、Geronimo チームが JSTL 1.2 サポートを Geronimo に追加するために、どのように GlassFish JSTL 1.2 の実装を活用したかを紹介します。
    2007/08/28  
 
Web サーバーのクラスターをセットアップする 5 つの簡単なステップ
Linux Virtual Server と Heartbeat v2 を使用した 5 つの簡単なステップで、複数の物理または仮想 Linux サーバーにまたがる高可用性 Apache Web サーバー・クラスターを構成してください。
    2007/08/22  
 
レガシー Hibernate アプリケーションから OpenJPA および EJB 3.0 へのマイグレーション
EJB 2.1 を使用した Hibernate アプリケーションの特徴と機能を OpenJPA および EJB 3.0 の対応する機能と比較することで、Hibernate アプリケーションのソース・コード、オブジェクト・リレーショナル・マッピング、そして構成パラメーターを OpenJPA にマイグレーションする方法を学んでください。IBM WebSphere 開発者向け技術ジャーナルより。
    2007/08/22  
 
Visual Studio ユーザーのための Eclipse 入門
Microsoft Visual Studio を使用する開発者にとって Eclipse は新しい世界であり、Eclipse を使い始める際には混乱しがちです。プラグインによるアーキテクチャーやワークスペース中心のプロジェクト構造、そして自動ビルドなどの新しい概念は、最初は直感に反しているように思えます。これらの概念について、またその他 2 つの環境の間でのさまざまな違いについて学び、Eclipse を気軽に使いこなせるようになりましょう。
    2007/08/21  
 
ODF 文書と Microsoft Office 2007 文書を DB2 9 の pureXML で扱う
IBM の DB2 9 を利用すると、これまでとは比較にならないほど容易に ODF 文書と Microsoft Office 2007 文書をエンタープライズ・アプリケーションやインターネット・アプリケーションに統合することができます。MS Office 文書に関する以前のデータ交換方法を調べ、MS Office 2007 ではもっと優れたデータ交換方法が提供されていることを学びましょう。この記事では、DB2 9 の XQuery や Zend Core for IBM、PHP (HP: Hypertext Preprocessor)、そして PDO (PHP Data Objects) などの技術による交換方法について解説します。
    2007/08/16  
 
公衆に対する重要な警告を Web に公開する
最近完成された Atom 出版プロトコルは、Web 上でコンテンツを公開し、管理するための、単純な HTTP ベースの機構を提供します。Atom 出版プロトコルを Common Alerting Protocol 標準と組み合わせて使うことで、重要で命にかかわる情報を配布するための強力で柔軟な手段を提供することができます。危険を知らせるアラートを Atom を使って作成し、公開し、そして利用する方法を学びましょう。
    2007/08/14  
 
PHP と XML による iPhone 開発
Apple の iPhone は市場で最もホットな新製品です。既存の Web ツールを使って iPhone 用のアプリケーションを開発する方法を学びましょう。
    2007/08/14  
 
連載「Web 2.0 - 企業への応用」: 第1回:Web 2.0を整理しよう
近年のインターネットは、使い方がかなり変化し第二世代に入ったと言われており、Web 2.0と呼ばれていることはよく知られていることですね。これは、Tim O'Reilly氏の提唱によるものですが、インターネットの様々な例をあげて、その変化を説明しているものです。この記事では、Web 2.0に取り上げられている多くの技術や考え方を、三つの視点から分類・解説し、理解することを目標にしましょう。
    2007/08/10  
 
PHP V5 でマルチタスク動作のアプリケーションを開発する
PHP 開発者の多くは、標準的な PHP にはスレッド機能がないため、実際の PHP アプリケーションでマルチタスク動作をすることはできないと考えています。例えば、アプリケーションが別の Web サイトの情報を必要とする場合、そのアプリケーションは、そのリモート情報の取得が完了するまで停止しなければならないと思ってしまうのです。しかし決してそんなことはありません。stream_select と stream_socket_client を利用した、PHP のプロセス内マルチタスク動作について学びましょう。
    2007/08/07  
 
リッチ・クライアント・アプリケーションのパフォーマンス、第 2 回: メモリー・リークの修復
Eclipse リッチ・クライアントのパフォーマンスに関するこの 2 回連載記事の第 1 回では、アプリケーションのパフォーマンス測定、インスツルメンテーション手法の適用、UI の応答性維持、そして誤ったスレッド化を避けるための Job の使用についての基本を説明しました。第 2 回となる今回は、メモリー使用量に焦点を当て、メモリー・リークを突き止める方法を説明します。
    2007/08/07  
 
Linux のヒント: スケジュール・ジョブの持続時間をコントロールする
例えば皆さんが、真夜中に 30 分間、いくつかのトレースを実行することで面倒な問題をデバッグしなければならない、あるいは単純に、Linux システムを目覚まし時計として使いたいとしましょう。このヒントは、cron や at の機能を使って開始したジョブを、一定時間実行した後に、あるいは他の判断基準を満たした時に、停止する方法について説明します。このヒントは AppleTalk ネットワーキング・パッケージ (Netatalk) での timeout コマンドに関する情報を含むように変更されました (編集者より)。
    2007/08/02  
 
リッチ・クライアント・アプリケーションのパフォーマンス、第 1 回: パフォーマンス分析のツール、手法、そしてヒント
どんなに綿密に計画されたアプリケーションであっても、重大なパフォーマンス問題というのは持ち上がるものです。この 2 回連載の記事では、Chris Grindstaff がパフォーマンス問題を分析し、それに対処する手法を紹介します。第 1 回となる今回の記事では、Eclipse ベースの RCP (Rich Client Platform) アプリケーションのパフォーマンスを測定し、速度低下が CPU または I/O のどちらのボトルネックによって発生しているかを判断し、応答性を維持するために UI スレッドをアイドル状態にしておく方法を説明します。続く第 2 回ではメモリー問題を取り上げます。
    2007/07/31  
 
PHP でカスタム検索エンジンを作成する
Google などの検索エンジンは実質的にあらゆる情報を網羅しますが、すべてのサイトに Web の強力な検索エンジンが最適というわけではありません。サイトのコンテンツが極めて専門的だったり、はっきりとカテゴリー化されている場合には、Sphinx と PHP を使って、きめ細かく調整したローカル検索システムを作成してください。
    2007/07/31  
 
Java Web サービス: 第 3 回 Axis2 でのデータ・バインディング
Apache Axis2 Web サービス・フレームワークは、当初から複数の XML データ・バインディング手法をサポートするように設計されています。現行のリリースで完全にサポートしているのは、XMLBeans および JiBX データ・バインディング、そして Axis2 専用に開発されたカスタム ADB (Axis Data Binding) の手法です。この記事では、Axis2 でこれらの異なるデータ・バインディングを使用する方法を紹介するとともに、アプリケーションに応じてデータ・バインディングを使い分ける理由を説明します。
    2007/07/26  
 
Ajax と XML: 評価とコメントのための Ajax
人々によって Web が動かされるこの時代、読者がサイトのコンテンツにランクを付けたり、論評できるようにすることは必須です。Ajax を使えば、どんなに簡単に評価機能とコメント機能をサイトに追加できるのか、この記事を読んで理解してください。
    2007/07/24  
 
Geronimo への転向: 統合パッケージを使用する: Codehaus の Woodstox
XML パーサーがハイパフォーマンスで堅牢なアプリケーションの鍵となることは珍しくありません。従来からの XML の構文解析手法には DOM (Document Object Model) と SAX (Simple API for XML) などがありますが、今や革新的な新しい構文解析手法が登場しています。それが、Java EE (Java Platform, Enterprise Edition) 5 仕様に統合されるほど有益な StAX (Streaming API for XML) です。Java EE 5 の完全実装である Apache Geronimo 2.0 でも、StAX パーサーとして Codehaus の Woodstox を組み込んでいます。今回の記事では、StAX の利点、そして Geronimo チームが StAX パーサーとして Woodstox を選んだ理由を説明します。
    2007/07/24  
 
PHP による SQL から XML への変換
SQL 結果セットを XML に変換する簡単な方法が欲しい思ったことはありませんか? その願いを叶えるのが PEAR パッケージ、XML_Query2XML です。このパッケージはデータベース・クエリーの結果をカスタマイズ可能な XML 文書に効率的に変換するための包括的フレームワークになります。XML_Query2XML を紹介するこの記事では、実用的なアプリケーションを例に、このパッケージを XSL と XPath で使用する方法、外部 Web サービスからのデータと組み合わせる方法、そしてデータベース・ダンプ・ファイルを作成する方法を説明します。
    2007/07/24  
 
Eclipse でとびきり快適にする Mac OS X Java の開発エクスペリエンス
Mac OS X は、Java 開発のための強力なプラットフォームです。Java 開発環境は Mac OS X にすっかり統合されていますが、Eclipse 統合開発環境 (IDE) を使えば、一貫したクロスプラットフォームな体験を実現する完全に統合された Java 開発環境を Mac OS X にもたらすことができます。この記事を読んで、Eclipse IDE を使用して既存の Xcode プロジェクトを Eclipse にインポートする方法、キーの割り当てを調整する方法、そして Eclipse を Mac OS X にバインドされた CVS (Concurrent Versions System) に統合する方法を学んでください。
    2007/07/24  
 
Linux のヒント: cron と at を使ったジョブ・スケジューリング
皆さんはシステム使用率が低い真夜中にジョブを実行しなければなりません。あるいは毎日、あるいは毎週ジョブを実行しなければならないかもしれません。しかし皆さんは、そんなことをするよりも眠りたい、あるいは他の方法で人生を楽しみたいと思うはずです。そういうときにジョブをスケジューリングすると役立ちますが、ジョブをスケジューリングすると、ルーチン・タスクを自動的に行わせることができたり、またタスクを必ず毎回同じ方法で処理することができます。このヒントでは、定期的に、あるいは将来のある時点で、ジョブが実行されるようにスケジューリングするために、cron 機能と at 機能を使う方法について説明します。
    2007/07/18  
 
Geronimo 内部の Apache Pluto を管理する
Web 2.0 対応アプリケーションを開発するときには言うまでもなく、ポータルとポートレット技術による開発は身に付けていたい最新の手腕です。Apache Pluto プロジェクトは Java Portlet Specification のリファレンス実装で、元々は Java Community Process と JSR (Java Specification Request) 168 によって作成されました。Java Portlet Specification は、Java プログラミング言語で開発するポータルおよびポートレット・コンポーネントに関するガイドラインを定義しています。この仕様は現在、従来のポータルに関する世界共通の標準、そしてプラグ可能な Web アプリケーションを構築するためのフレームワークとして認められています。この Pluto プロジェクトと Apache Geronimo の Java EE (Java Platform, Enterprise Edition) プラットフォームとを組み合せることによって、ポータルとポートレットを使用してカスタマイズ可能かつ管理しやすいシステムをビルドできる、極めて柔軟で強力な環境が実現することを学んでください。
    2007/07/17  
 
PHP アプリケーションの表示形式と機能を Smarty で分離する
PHP は他の Web ページ・マークアップと混在させやすいため、プログラム・ロジックと HTML、CSS (Cascading Style Sheets)、JavaScript が複雑にからみあった状態になりやすく、維持管理が非常に面倒になります。Smarty テンプレート・エンジンを利用すると、表示形式を機能から分離することができます。
    2007/07/17  
 
Eclipse Platform 入門
Eclipse Platform の起源とアーキテクチャーを含めて、Eclipse Platform について学びましょう。最初に、Eclipse がオープン・ソースであり、複数のプログラミング言語をサポートしていることについて簡単に説明し、そして簡単なプログラミング例を使って Java 開発環境について説明します。また、プラグイン拡張機能として利用可能な、いくつかのソフトウェア開発ツールの調査も行います。
    2007/07/17  
 
軽量 Web サーバー
最近では、lighttpd や litespeed、mongrel など、興味深い Web サーバー実装が全盛です。これらの Web サーバーは、パフォーマンスや管理の容易さ、移植性、セキュリティー、その他関連する価値をさまざまに組み合わせ、独特の機能を誇っています。これから述べる工学研究では、軽量 Web サーバーの領域について調査し、皆さんの次期プロジェクトの技術要件を満足できそうな 1 台を見つけるために役立てたいと思います。
    2007/07/10  
 
Eclipse C/C++ Development Toolkit を使ってアプリケーションを開発する
大抵の人は「Eclipse」を考えるときに「Java IDE」を連想しますが、Eclipse はそれだけにとどまりません。適切なプラグインを使えば、Eclipse で PHP、Ruby、Groovy、C、そして C++ を扱うことができます。この記事では、Eclipse CDT (C/C++ Development Toolkit) の使い方から始め、CDT と C++ STL (Standard Template Library) を使用して、プロセスを合理化し、C++ ならではの強力な機能を利用する単純なアプリケーションをビルドします。
    2007/07/10  
 
Ajax - 困っている人のためのガイド、第 1 回: Ajax のツールと手法の調査
Ajax (Asynchronous JavaScript + XML) プログラミング手法がますます Web アプリケーションの開発において威力を振るうようになってきた今、新しい開発者たちが毎日 Ajax 開発の世界に足を踏み入れています。しかし、それぞれの開発者が使ってきた開発手法と Ajax は本質的に異なります。そんな開発者に対して、この連載の第 1 回では、IBM の Ajax 開発者からなる専門家チームの Ajax 開発リソースが使用している Ajax 開発のチートシートを紹介します。筆者らは、Ajax 開発立ち上げ時の経験を元に、効果的な Ajax 開発への近道となる実用的な情報を提供します。
    2007/07/10  
 
Eclipse V3.3 によってコードを簡潔に保つ
コードが簡潔で読みやすければ、プログラムに慣れていない開発者も素早く完全にコードを理解することができ、他の方法を使うよりもソフトウェアの維持管理を効率的に行うことができます。この記事では Eclipse V3.3 の新しいクリーンアップ機能を紹介します。この機能では、これまでのバージョンよりも多くのクリーンアップ・オプションを利用することができます。
    2007/07/03  
 
オープン・ソース・ソフトウェアによる協調 Web サイトの設計、開発、デプロイメント 第 13 回: Eclipse 内での PHP 開発
この連載では、IBM Internet Technology Group が無料で入手可能なソフトウェア・パッケージを使って、架空の会社、IBC (International Business Council) のエクストラネット Web サイトを設計、開発、そしてデプロイする過程を追っています。今回の記事では、Eclipse 統合開発環境を使って Web サイトを作成する方法を説明します。焦点とするのは、Eclipse の PHP サポート、そして CVS (Concurrent Versions System) によるバージョン管理です。
    2007/07/03  
 
Geronimo への転向: OpenEJB 3.0 の最新情報
J2EE (Java 2 Platform, Enterprise Edition) の仕様は Java 技術をエンタープライズ・アプリケーション開発における最高位の技術にのし上げました。その地位を守るべく長年進歩を重ねている Java 技術ですが、Java EE 5 (Java Platform, Enterprise Edition 5) の仕様では特に大きな飛躍を遂げています。OpenEJB は当初から Geronimo に欠くことのできない部分となっていましたが、その 3.0 リリースが Java EE 5 の仕様を Geronimo へ実装する際の中核となっています。今回の「Geronimo への転向」では、EJB (Enterprise JavaBean) 3 を支える原動力、そして OpenEJB が Geronimo に大胆な新機能を提供するまでに強化された過程を明らかにします。
    2007/06/26  
 
DB2 と Ruby on Rails: 第 3 回 DB2 と Ruby on Rails によるテスト
アジャイル・アプリケーション開発で重要となる要件は、リグレッション・テストを確実にするインクリメンタル方式のコード統合です。Ruby on Rails フレームワークはこの作業全体を今までになく容易に行えるようにします。
    2007/06/21  
 
Eclipse ウィザードを使って開発を高速化する
Eclipse のフレームワークと IDE (integrated development environment: 統合開発環境) の持つ最も優れた特徴の 1 つが、その拡張性です。この記事では、新しいファイルの追加手順を自動化するウィザードを素早く構築する方法を学びます。ウィザードを使うと、作成するファイルの内容を事前定義できるため、これにより開発手順が自動化され、なおかつ手順の一貫性が保たれるようになります。
    2007/06/21  
 
WebSphere Application Server で Spring および Hibernate を使用する
IBM WebSphere Application Server で Spring または Hibernate を使用することを検討している読者のために、この記事ではこれらのフレームワークをどのように WebSphere Application Server で構成しなければならないかを、さまざまなシナリオの場合で説明しています。この記事はいずれのフレームワークについても徹底的に検討することはしませんが、このようなシナリオのインプリメントを成功させるには重要な資料となります。(Spring Framework 2.1 に対応して更新)
    2007/06/20  
 
プロパティー・エディターの調整
JVEを利用していると、「自分のコンポーネントもJVEできちんと使いたい」と思うようになります。自分で作成したコンポーネントを共通部品のような形で再利用し、ビジュアル・エディターの上で活用するには、ツールそのものを拡張していく必要があります。今回から、JVEを拡張(改造)して、独自コンポーネントをビジュアルエディターに統合する方法を紹介していきます。
    2007/06/20  
 
Cypal Studio for GWT を使って Ajax 開発をもっと簡単にする
GWT (Google Web Toolkit) を使えば、Java プログラマーが完全に Java プログラミング言語でリッチな Ajax (Asynchronous JavaScript + XML) アプリケーションを作成することができます。この GWT 構造の管理サポートするのが、Eclipse IDE 用に設計された Cypal Studio for GWT です。この記事を読んで、Cypal Studio for GWT が GWT モジュールの新規作成を支援する方法、そしてリモート・プロシージャー呼び出しをサポートして Web アプリケーションを簡単に表示、デプロイできるようにする仕組みを学んでください。
    2007/06/19  
 
Ajax と Apache Geronimo による非同期メッセージ・フレームワークの作成
Apache Geronimo を Ajax (Asynchronous JavaScript + XML) ユーザー・インターフェース (UI)、非同期メッセージング・システム、そして疎結合ビジネス・サービスと組み合わせて、応答性の高いエンタープライズ・クラスの Web アプリケーション・フレームワークを作成します。
    2007/06/19  
 
エンドツーエンドの Ajax アプリケーション開発、第 2 回: Ajax クライアント層とサーバー層の実装
Ajax (Asynchronous JavaScript + XML) は、ブラウザー・プラットフォーム上で実行する Web アプリケーションにデスクトップ品質のソフトウェア機能を実現する最新の方法として急速に広がっています。この 3 回連載記事の第 2 回では、引き続きオープン・ソース・コミュニティーから入手できる技術でエンドツーエンドの Ajax アプリケーションを開発する方法について説明します。
    2007/06/19  
 
Apache Pluto を組み込んだ Apache Geronimo に対してポートレットを作成し、デプロイする
ポートレットは、複数の場所にあるデータの集約や、異なるアプリケーションの統合を実現し、さまざまなユーザーのグループが協力する作業空間を提供するための、強力なツールです。Apache Pluto はポートレット仕様の参照実装であり、開発中のポートレットをテストするのに適しています。この記事は、Apache Geronimo サーバーの中に Pluto ポートレット・コンテナーをインストールし、構成するための方法について解説します。
    2007/06/12  
 
シームレスな JSF、第 3 回: JSF と相性のいい Ajax
JSF のコンポーネント・ベースの手法は抽象化を促進しますが、大抵の Ajax 実装は基礎となる HTTP 交換を公開するため、抽象化の妨げとなります。連載「シームレスな JSF」の最終回となるこの記事では、Dan Allen が Seam Remoting API と Ajax4jsf コンポーネントを使って、ブラウザー・サイドの Bean と通信しているかのようにサーバー上の管理対象 Bean と通信する方法を説明します。JSF イベント駆動型アーキテクチャーにふさわしい改善として Ajax を利用するのがどれほど簡単か、そして JSF コンポーネント・モデルに影響を与えずにこの改善を行う方法を学んでください。
    2007/06/12  
 
Eclipse で DocBook XML を構築する
DocBook XML は標準 XML タグのライブラリーであり、これを使うことで、ほとんどあらゆる出力の生成が可能なスタイルシートを作成することができます。しかし DocBook が登場してから長い時間が経っているため、さまざまなタイプの文書を生成するための数多くのスタイルシートが既に存在しています。この記事では、DocBook XML と Eclipse IDE とを組み合わせて使うことで、大部分のフォーマットで容易に配布できる再利用可能な技術文書を作成するための方法を学びます。
    2007/06/12  
 
ActiveScaffold を使って Ruby on Rails を機能アップする
Ruby on Rails の ActiveScaffold プラグインを使うことで、時間を節約して、頭痛の種を解消し、もっと管理のしやすいページを作成しましょう。ActiveScaffold はユーザー・インターフェースの CRUD (create, read, update, delete) に必要なことをすべて処理してくれるため、開発者はより多くの時間を、難しい (そして興味深い) 問題に集中して費やせるようになります。
    2007/06/08  
 
DB2 と Ruby on Rails: 第2回 Ruby on Rails を使用した DB2 と pureXML
XML は、今日の Web で最もよく使用されるデータ交換フォーマットの 1 つとして数えられています。DB2 の pureXML サポートを Ruby on Rails に用意された XML API (REXML) の解析および生成と組み合わせると、Web アプリケーション開発のための強力な組み合わせになります。DB2 データ・サーバーにおけるネイティブ XML サポートは、そのハイブリッド・データベース・エンジンのコンパイラーとパーサーを利用して、リレーショナル・データと併せて半構造化された階層構造の XML 文書を保管するという柔軟性をもたらし、SQL と XQuery の両方に対応します。連載「Ruby on Rails」の第 2 回では、第 1 回の記事で使用したサンプル・アプリケーション Team Room を実例に用いて pureXML を活用する方法を説明します。
    2007/06/07  
 
LAMP システムを調整する: 第 3 回 MySQL サーバーを調整する
LAMP (Linux、Apache、MySQL、PHP/Perl) アーキテクチャーを使ったアプリケーションは次々と開発され、デプロイされています。しかし多くの場合、アプリケーションはサーバー管理者以外の人が作成したものであるため、サーバー管理者はアプリケーション自体をほとんど制御することができません。この 3 回シリーズの記事では、アプリケーションのパフォーマンスを向上させる、あるいは低下させる、サーバー構成上のさまざまな項目について説明します。シリーズ最終回の今回は、最大の効率を実現するためにデータベース・レイヤーを調整する方法について説明します。
    2007/06/07  
 
JavaOne 2007: Sun が再びクライアントに力を入れ始めています
作成されたコード、討議された言語拡張、そしてダンスするロボットに、大量消費されたビール。どれを取っても今年の JavaOne 開発者のカンファレンスは成功でした。Elliotte Rusty Harold が振り返ってみると、カンファレンス最大のニュースだったのは JavaFX Script を初めとするクライアント・サイドのイニシアチブです。Sun がクライアントに再び力を入れていることが、この先 1 年、Java ベースのリッチ・インターネット・アプリケーション開発でどんな意味を持つのか、この記事で読んでください。
    2007/06/05  
 
PHP で XML をJSON に変換する
Web 2.0 の人気が高まりつつあるなか、ブラウザー上で実行するビジネス・ロジックでデータを表現するのに便利な方法として、JSON (JavaScript Object Notation) と呼ばれる新しいデータ交換形式が浮上してきています。この記事では、XML 形式のエンタープライズ・アプリケーション・データを PHPベースのサーバー・プログラムで JSON 形式に変換した上でブラウザー・アプリケーションに送信する方法を説明します。
    2007/06/05  
 
Apache Solr でもっと賢く検索する: 第 2 回 エンタープライズに対応した Solr
Solr の紹介を締めくくるこの記事では、Lucene Java のコミッター Grant Ingersoll が、管理インターフェース、高度な構成オプション、そしてキャッシング、複製、ロギングなどのパフォーマンス機能を含め、Solr のエンタープライズ向け機能を説明します。
    2007/06/05  
 
Eclipse 流のユニット・テスト
皆さんのレガシー・コードをテストする場合、そのソース・コード・ベースに対して実行するのに適したクラスを集めたテスト・スイートが必要でしょうか。jMock は、そうした目的に最適なテスト・フレームワークです。しかし、jMock はすべてのケースに最適とは限らず、特に jMock の想定外の方法でオブジェクトを作成しなければならない場合には最適とは言えません。アプリケーションの中でのユニット・テストをサポートするためにカスタムのモック・オブジェクト一式を作成する手間を避けるために、RMock を調整することで jMock をシームレスに扱うことができ、望ましい結果を得ることができます。
    2007/05/29  
 
Apache Solr でもっと賢く検索する: 第 1 回 基本機能と Solr スキーマ
Solr は Lucene をベースにしたエンタープライズ対応の検索サーバーで、ファセット検索、検索結果の強調表示、そして複数の出力形式をサポートします。Solr を紹介するこの 2 回の連載記事では、Lucene Java コミッターの Grant Ingersoll が Solr ならではの優れた全文検索機能を簡単に Web アプリケーションに取り込む方法を伝授します。
    2007/05/29  
 
プログラミング言語の進化を追え: 第1回 サルでも分かるプログラミング言語の新潮流(前篇)
近ごろプログラマーかいわいで、「関数型プログラミング言語」という言葉をよく耳にするようになりました。本連載では、プログラミング言語を取り巻く状況をあらためて俯瞰し、プログラミング言語開発の現場で何が起こっているのかを解説します。
    2007/05/25  
 
Apacheの戦士Geronimoが持つ実力: 第2回 WTPを使用したWebアプリケーション開発
前回は、Geronimoの導入と、アプリケーション開発環境となるEclipseとWeb Tools Platform(WTP)をインストールしました。今回は、WTPを使用して簡単なWebアプリケーションを開発する方法を紹介します。
    2007/05/25  
 
プログラミング言語の進化を追え: 第4回 大人のためのブラックボックス読解講座
前回に引き続き、Scheme言語の処理系、Gaucheを開発している川合史朗氏が、クロージャの機能を検証し、関数型言語とオブジェクト指向言語の関係について解説していきます。今回は、クロージャとオブジェクトのより深淵を探求します。
    2007/05/25  
 
Apacheの戦士Geronimoが持つ実力: 第4回 GBean×DI徹底解剖
コンポーネントの疎結合化・再利用を促す手法であるDI(Dependency Injection)ですが、Geronimoカーネルの最大の特徴は、GBeanの取り扱いにこのDIの考え方を取り入れている点と言えるかもしれません。今回は、GBeanに活用されているDIの仕組みを紹介します。
    2007/05/25  
 
プログラミング言語の進化を追え: 第2回 サルでも分かるプログラミング言語の新潮流(後篇)
「ガーベジコレクション」「リフレクション」「アスペクト指向」「クロージャ」「イテレータ」「型推論」など、近年、プログラミング言語の世界に新しい概念が続々となだれ込んでいるように見えます。しかし、この背景には、実はあまり知られていない歴史が隠されているのです。
    2007/05/25  
 
Apacheの戦士Geronimoが持つ実力: 第3回 GeronimoカーネルとGBeanアーキテクチャー
Tomcat、Jetty、ActiveMQ、OpenEJBなど、至難と思われたさまざまなオープンソースミドルウェアの柔軟な統合を実現したGeronimo。今回は、その統合を強力に支えるGeronimo特有の柔軟なアーキテクチャーを紹介します。統合用部品GBeanの疎結合連携を実現するDIカーネル機構などを通して、Geronimoが秘めた本当のポテンシャルを体験してみましょう。
    2007/05/25  
 
プログラミング言語の進化を追え: 第3回 大人のためのブラックボックス読解講座
SchemeやLispによって30~50年前に導入されたさまざまな概念は、その後のプログラミング言語に多かれ少なかれ影響を与えました。そのうちの1つであるクロージャは、関数型言語では抽象化の基本的な方法となり、最近では多くのスクリプト言語にも採り入れられるようになってきています。本稿では、Scheme言語の処理系Gaucheを開発している川合史朗氏が、クロージャの機能を検証し、関数型言語とオブジェクト指向言語の関係について解説します。
    2007/05/25  
 
Apacheの戦士Geronimoが持つ実力: 第6回 Ruby on Geronimoを試す(後編)
J2EEアプリケーションサーバ「Apache Geronimo」の魅力に迫ってきた本連載も、いよいよ今回で最終回となります。今回は、RoGの実現を通して、GBeanの原理をより深く理解してください。
    2007/05/25  
 
Apacheの戦士Geronimoが持つ実力: 第1回 勇気を出してジェロニモとお近づきになってみる
J2EEアプリケーションサーバ「Apache Geronimo」が静かにブレイクの兆しを見せています。本連載では、このGeronimoの魅力に迫っていきます。まず、Geronimoの導入ポイントと、Eclipse+Web Tools Platformを使った開発の流れを紹介しましょう。
    2007/05/25  
 
Apacheの戦士Geronimoが持つ実力: 第5回 Ruby on Geronimoを試す(前編)
Geronimoでオープンソースミドルウェアの柔軟な統合を実現できるなら、独自のミドルウェアも統合できるはず! 今回は、統合の実例として、近年注目を集めるRubyのランタイム環境をGeronimo上に統合してみます。
    2007/05/25  
 
多忙な Java 開発者のための db4o ガイド: db4o を使ってデータベースをリファクタリングする
Java コードのリファクタリングはリレーショナル・データベースのリファクタリングよりもずっと簡単ですが、幸いにもオブジェクト・データベースの場合には、そうとも言えません。今回の「多忙な Java 開発者のための db4o ガイド」では、Ted Neward が、彼の好きなオブジェクト・データベースの、もう 1 つの利点を紹介します。つまり db4o によって、ほとんど取るに足らないと思えるほどリファクタリングを単純化できるのです。
    2007/05/22  
 
Apache Derby を使用した開発 ― 3 連単を当てる: Apache Derby を使用した開発 ― 3 連単を当てる: Apache Derby を使用した Java データベース開発、パート 5
Apache Derby データベース・アプリケーションで準備済みステートメントを使うときに利用できる拡張機能について学んでください。まず初めに、ij ツールで動的に PreparedStatement を実行して迅速なプロトタイプ化を有効にします。続いてデータを PreparedStatement に流し込んで大量のデータを特定の列に効率的に挿入する方法、そして ParameterMetaData オブジェクトを使って、ベンダー固有の実装詳細をはじめ、PreparedStatement に含まれる個々のパラメーターに関する情報を取得する方法を説明します。
    2007/05/22  
 
Open Source People: 第1回 まつもとゆきひろ
オープンソースソフトウェアの開発にかかわっている人のインタビューをシリーズでお届けする「Open Source People」。記念すべき第1回はMatzのニックネームでも知られるまつもとゆきひろ氏。
    2007/05/18  
 
Open Source People: 第2回 夷藤勇人
もしあなたが美しい(あるいはトリッキーな)コードが飛び交う世界を知りたいと願うならそれはTopCoderに参加することで容易に実現することができます。このTopCoderに参加している数少ない日本人で、生涯プログラマーを宣言する人物にTopCoderの魅力を聞きました。
    2007/05/18  
 
DB2 と Ruby on Rails: 第 1 回 DB2 と Ruby on Rails の導入
強力な Rails フレームワークを備えた Ruby 言語の登場により、Web ソリューションの開発には数え切れないほどの可能性が生まれています。さらに IBM_DB アダプターおよびドライバーが導入されたことから、今では Rails アプリケーションと IBM データ・サーバーとのシームレスな相互作用も可能になっています。連載「DB2 と Ruby on Rails」の第 1 回目となるこの記事では、Starter Toolkit for DB2 on Rails を紹介し、IBM_DB ドライバーをインストールするさまざまな方法、そして DB2 での Rails のマイグレーションについて説明します。
    2007/05/16  
 
PHP V5.2 の新機能、第 5 回: ファイル・アップロードの進行状況を追跡する方法
PHP V5.2 では、開発者がファイル・アップロードの進行状況をリアルタイムで追跡する際に利用できるフックを追加しています。5 回からなる連載「PHP V5.2 の新機能」の最終回となるこの記事では PHP 進行状況表示バーの作成手順を通して、ファイル・アップロードを監視する方法とそのためのコードを作成する方法を紹介します。
    2007/05/15  
 
Ruby on Rails究極指南: 第4回 話題騒然!「言語内DSL」の概念とRake(後編)
近年、特定の領域に存在する問題の解決に特化してデザインされたコンピュータ言語「DSL」が注目を集めています。本稿では、前回に引き続いて、RubyとDSLの関係について解説していきます。
    2007/05/11  
 
Ruby on Rails究極指南: 第3回 話題騒然!「言語内DSL」の概念とRake(前編)
近年、特定の領域に存在する問題の解決に特化してデザインされたコンピュータ言語「DSL」が注目を集めています。本稿では、RubyとDSLの関係について解説していきます。Railsによって注目を浴びたRakeを取り上げて、DSLの概念やRakeの特徴、その使い方などを説明します。
    2007/05/11  
 
オープンソースで行こう!: 第1回 当然知ってるよね? オープンソースが意味するもの
本連載では、特にコンピュータを生業とするエンジニアやビジネスマンにとって、オープンソースとどう関係していくべきかを知る手引とするべく、オープンソースの歴史と現状を短時間で理解できるよう紹介していきます。今回は、オープンソースが何を意味するかを理解しましょう。
    2007/05/11  
 
新入学生/新社会人応援企画: 第3回 あるWebプログラマーの作業環境
春は出会いと別れの季節。入学や就職で、新しい生活を始める人も多いでしょう。それを機にPC環境もそろそろ大人への階段を上ってもいいかもしません。ここでは、はてなという企業でプログラマーとして働くあの人の開発環境を紹介することで、プロが好む作業環境を考えてみます。
    2007/05/11  
 
Ruby on Rails究極指南: 第1回 Instant Railsで始めるWindows環境のRails
世界中でRubyの人気が急上昇していますが、このきっかけの1つとなったのがWebアプリケーションフレームワークRuby on Rails(Rails)です。本連載では、このRailsの特徴や魅力を余すところなく伝えていきます。
    2007/05/11  
 
オープンソースで行こう!: 第2回 オープンソースライセンス事情を俯瞰する
フリーソフトやプロプライエタリなソフトウェアから「オープンソース」を区別しているのがライセンスになります。GPL、LGPL、Apache License……数多く存在するライセンスですが、それぞれの違いについてまとめましょう。
    2007/05/11  
 
オープンソースで行こう!: 第4回 ユーもオープンソースにジョインしちゃいなよ!
ソフトウェアを開発し、ライセンスを決めて公開すれば一丁上がり。言葉にすると簡単でも、具体的にやろうとすると戸惑うケースも多いでしょう。今回から2回に分けて、オープンソースソフトウェアの開発/公開における基本事項と、コミュニティーとつきあうコツを解説しましょう。
    2007/05/11  
 
オープンソースで行こう!: 第3回 デキる男のオープンソース理解 ビジネス編
オープンソースソフトウェア(以下、OSS)を業務で利用する場合、またOSSを使ってビジネスを展開する場合、どのような点がポイントになるでしょうか。具体的な利点と問題点をピックアップし、事例を合わせて整理していきましょう。
    2007/05/11  
 
新入学生/新社会人応援企画: 第4回 あるWebプログラマーの作業環境
はてなという企業でプログラマーとして働くあの人の開発環境には欠かすことのできない三種の神器が存在します。後編となる今回は、前回紹介できなかった神器を紹介するとともに、意外と知られていないWebプログラマーの生態についてもみてみましょう。
    2007/05/11  
 
Ruby on Rails究極指南: 第2回 Rails専用IDE「RadRails」でRailsをもっともっと快適に
いくらRailsが「less code」をキャッチコピーに使っているとはいえ、まったくコードを書かなければ何も起きません。今回は、コードを書くための環境として、Rails専用IDEである「RadRails」を取り上げます。
    2007/05/11  
 
新入学生/新社会人応援企画: 第2回 Windows上でLinuxを走らせてみよう
Linuxを使ってみたいとは思っても、Windowsから完全に移行するのはまだ早いかな、とお考えのあなた。Windows上でLinuxを動作させることができるcoLinuxを使って、まずはLinuxに触れてみてはいかがでしょうか。
    2007/05/11  
 
オープンソースで行こう!: 第5回 達人たちの秘密の隠れ家
OSS開発では、多様なコミュニティーによって業界横断的なイベントも多数行われています。ここでは、技術系の勉強会、会合を主宰されているお二人にインタビューし、コミュニティー活動の魅力を伺いました。
    2007/05/11  
 
Eclipse RCP アプリケーションを独自ブランド化する
この記事は、Eclipse の「製品構成 (Product Configuration)」機能と PDE (プラグイン開発環境) を利用して、RCP (Rich Client Platform) アプリケーションを皆さん独自のブランドの製品としてパッケージし、管理する方法についてのガイドラインを、順を追って説明します。スプラッシュ画面やアイコン・ファイルの色やサイズといった一般的な概念の他に、この記事では「製品構成」機能を利用したブランド化の高度な側面についても紹介します。具体的には、RCP 実行可能ファイルとその構成ファイル、プログレス・バーとプログレス・メッセージ、RCP ウィンドウ画像、About ダイアログとウェルカム・ページ (つまり製品の紹介) などについて説明します。この記事を読むことで、Eclipse プラットフォームとは独立の、配布可能な製品として RCP アプリケーションをカプセル化するための主要なスキルを身につけることができます。
    2007/05/08  
 
Tomcat と Eclipse を使って Web アプリケーションを開発する
Eclipse を Apache Tomcat と直接統合すると、Web 開発プラットフォームとしての Eclipse が一層使いやすくなります。Eclipse と Apache Tomcat V5.5 を設定する方法を、典型的な Hello World サーブレットを開発しながら学びましょう。
    2007/05/08  
 
Eclipse Platformを使ってデバッグする
Eclipse Platform に組み込まれたデバッグ機能を使ってソフトウェア・プロジェクトをデバッグする方法を学びましょう。デバッグはプログラマーにとって避けられないものです。デバッグの方法は数多くありますが、基本的にはバグの原因となっているコードを見つけることにつきます。例えば、Linux アプリケーションで最も一般的なエラーの 1 つは、セグメンテーション・フォールトとして知られています。これは、プログラムが、そのプログラム用に割り当てられていないメモリーにアクセスしようとし、セグメンテーション違反を起こして終了することで起こります。この種類のエラーを修正するためには、この動作を引き起こしているコード行を見つける必要があります。問題のコード行が見つかったら、エラーが発生するコンテキストや、関連する値や変数、メソッドなどもわかった方が問題を修正する上で役立ちます。デバッガーを使用すれば、こうした情報を非常に容易に見つけることができます。
    2007/05/01  
 
Second Life クライアント、第 3 回: Second Life に単純な変換機能を追加する
Second Life ソフトウェアを探るシリーズ最終回の今回は、言語変換機能を持つ単純なコマンド・ライン・プログラムを Second Life に組み込むための方法を学びます。
    2007/04/30  
 
Second Life クライアント、第 2 回: ドキュメンテーションを掘り下げる
Second Life クライアントの開発者用ドキュメンテーションは、ウィキの形式をとっています。この、Second Life ソフトウェアについて探るシリーズの第 2 回目の今回は、ドキュメンテーションについて調べ、それを利用して早速クライアントに一部変更を加えます。
    2007/04/30  
 
LAMP システムを調整する: 第 2 回 Apache と PHP を最適化する
LAMP (Linux、Apache、MySQL、PHP/Perl) アーキテクチャーを使ったアプリケーションは次々と開発され、デプロイされています。しかし多くの場合、アプリケーションはサーバー管理者以外の人が作成したものであるため、サーバー管理者はアプリケーション自体をほとんどコントロールできません。この 3 回シリーズの記事では、アプリケーションのパフォーマンスを向上させる、あるいは低下させる、サーバー構成上のさまざまな項目について説明します。今回の第 2 回は、Apache と PHP を最適化するために必要なステップに焦点を当てます。
    2007/04/30  
 
新入学生/新社会人応援企画: 第1回 ディストリビューションの選び方、試し方
春は出会いと別れの季節。入学や就職で、新しい生活を始める人も多いでしょう。そこで本連載では、新入学生/新社会人応援企画として、オープンソースで作る環境構築を解説していきます。また、デスクトップ環境のほか、新しくプログラミングを始める人のために、Web/Java開発の第一線でいまどのように環境が使われているかを紹介します。
    2007/04/27  
 
技術ヒント: OpenSSH トンネリングを使って DB2 との通信をセキュアにする
この記事では、IBM® DB2® のクライアントとサーバーとの間の通信を SSH を使ってセキュアにするための手順を概説します。
    2007/04/26  
 
Sugar と XO ラップトップで、子供たち一人ずつに 1 台のラップトップを
One Laptop per Child (OLPC) は、世界中の子供たちにコンピューター技能を広めるために、ソフトウェアが付属した低コストのラップトップ (USD100) を開発するという使命を掲げた組織です。そのコンピューターの対象は子供たちであるため、今までにないユーザー・インターフェースとアプリケーションを提供して、子供が表現や学習用のツールを試せるようにしなければなりません。OLPC のオペレーティング・システムは Linux カーネルの移植版ですが、Sugar という独特なインターフェースを備えています。この記事では、Sugar ヒューマン・インターフェースの概要、標準的な PC でQEMU を使って OLPC ラップトップを仮想化する方法、そして Sugar と OLPC の機能を紹介します。
    2007/04/24  
 
作って学ぶ、今どきのWebサービス: 第7回 Webアプリケーション開発にチャレンジ(後編)
PerlによるWebプログラミングの基礎から応用まで解説してきた本連載の締めくくりとして、今回は、これまで学んだことを踏まえた上で、実際にWWW::OpenSearchを使ってアプリケーションを組み立てていきましょう。
    2007/04/20  
 
Linux カーネル仮想マシンを探る
Linux と柔軟性は切り離せないものですが、仮想化のオプションにしてもそれは同じことです。しかし最近では、カーネル仮想マシン (KVM) の登場によって Linux 仮想化の全体像が変わってきています。KVM は主流の Linux カーネル (V2.6.20) に統合される初の仮想化ソリューションです。Linux ゲスト・オペレーティング・システムの仮想化をサポートする KVM は、Windows でさえも仮想化を認識するハードウェアでサポートします。この記事で、Linux KVM のアーキテクチャーについて、そして Linux KVM と Linux カーネルとの統合が Linux の使い方を変えるかもしれない理由について学んでください。
    2007/04/18  
 
Apache Derby を使用した開発 ― 3 連単を当てる: Apache Derby を使用した Java データベース開発、パート 4
SQL カーソルの概要、そして SQL カーソルを使用して Apache Derby データベースで動的にデータを変更する方法を学んでください。SQL カーソルは、ij ツールを使って明示的に使用することも、該当する Java メソッドを呼び出して暗黙的に使用することもできます。この機能をマスターすれば、ビジネス・アプリケーションに合わせて選択的にデータを変更可能な Java アプリケーションを作成できるようになれるはずです。
    2007/04/17  
 
Perl、GD、および plot-latlong を使用して、データをプロットした地図を作成する
この記事では、世界地図、カスタム米国地図、Perl、GD、および Cooperative Association for Internet Data Analysis (CAIDA) plot-latlong ツールを使用して、Google マップや米国ナショナル・アトラス (国勢地図) と同じように効果的なデータ表示を独自に作成する方法を説明します。
    2007/04/10  
 
Apache Geronimo で Apache Pluto ポータル・アプリケーションを開発し、デプロイする
Apache Geronimo の機能セットにはあらかじめポータル・サーバーが統合されてはいませんが、Geronimo をポータル・アプリケーションのテストと開発用の環境として使うことができます。この記事では、Apache Pluto のドライバーとコンテナーを Geronimo にデプロイする手順をステップごとに追いながら、ポータル・アプリケーションのための 100% オープンソースの環境を実現します。そして Pluto と Geronimo でサンプルのポータル・アプリケーションを開発し、デプロイし、テストするための方法を学びます。
    2007/04/10  
 
ICPCレポート: 最終決戦!ACM国際大学対抗プログラミング・コンテスト
3月15日、ヒルトン東京ベイ東京ディズニーリゾートにて『ACM国際大学対抗プログラミング・コンテスト』の最終決戦が行われました。午前8時。これから5時間に渡って繰り広げられるバトルの会場に、選手たちが入場。6大陸82カ国の中の、1756大学6099チームから勝ち残った88チーム。264名の顔には闘志と自信が漲り、会場の音楽、歓声、拍手がさらに選手たちを鼓舞する。午前8時15分、プログラミングのワールドカップ、あるいはオリンピックとも言える大会が、いよいよスタートを切りました。
    2007/04/06  
 
coLinux による仮想化
最近の仮想化には、VmWare、Xen、そして KVM (Kernel-based Virtual Machine) が盛んに使われていますが、Linux と Microsoft Windows を連携させて実行できることをご存知でしたか? この記事では Cooperative Linux (coLinux) に焦点を当て、仮想化の簡単な紹介から始めて、coLinux による仮想化の手法、そして Windows 上で coLinux を起動して動作させる方法を説明していきます。
    2007/03/31  
 
LAMP システムを調整する: 第 1 回 LAMP アーキテクチャーを理解する
LAMP (Linux, Apache, MySQL, PHP/Perl) アーキテクチャーを使ったアプリケーションは次々と開発され、デプロイされています。しかし多くの場合、アプリケーションはサーバー管理者以外の人が作成したものであるため、サーバー管理者はアプリケーション自体をほとんどコントロールできません。この 3 回シリーズの記事では、アプリケーションのパフォーマンスを向上させる、あるいは低下させる、サーバー構成上のさまざまな項目について説明します。今回の第 1 回は、LAMP のアーキテクチャーと、測定を行うための方法、そして Linux のカーネルやディスク、ファイル・システムなどの基本的な調整方法について説明します。今後の記事では、Apache と MySQL、PHP のコンポーネントの調整方法について調べます。
    2007/03/31  
 
developerWorksの歩き方 第1回
現場で使える技術を求めて日々Webサイトを巡回する技術者は多い。国内ではコアな情報を扱うサイトや雑誌が少ないが、developerWorksには多くの有益な情報が存在している。本連載では、developerWorksを徹底的に活用するためのガイドを提供します。
    2007/03/30  
 
作って学ぶ、今どきのWebサービス: 第6回 Webアプリケーション開発にチャレンジ(前篇)
本連載ではこれまで、PerlによるWebプログラミングの基礎から応用まで解説してきました。今回は、これまで学んだことを踏まえた上で、Webサービスを使ったWebアプリケーション開発にチャレンジします。
    2007/03/30  
 
作って学ぶ、今どきのWebサービス: 第4回 Webサービスって実はこんなに簡単
前回まで3回に渡って、PerlにおけるWebプログラミングの基礎を解説してきました。今回は一歩進めて、より実用的なアプリケーションを作るため、その足がかりとなるであろうXML Webサービスの使い方について解説していきたいと思います。
    2007/03/30  
 
developerWorksの歩き方: 第2回 ゾーンを巡る
前回は、日本語による技術情報が集約された「IBM developerWorks」を紹介しました。今回は、developerWorksにはどういったコンテンツがどのように配置されているのかを紹介します。
    2007/03/30  
 
「Zend Framework」で加速するPHP開発: 第3回 ブログツールで学ぶ実践的Zend Frameworkの使い方
今回は、Zend Frameworkで構築されたブログツールを題材にして、実際にZend Frameworkに備わる機能や使い方を解説します。題材とするブログツールは、Alexatnet.comで提供されている「Alex@Net Blog」です。
    2007/03/30  
 
作って学ぶ、今どきのWebサービス: 第2回 RSSフィードの料理はLWPとXML::RSSにおまかせ
今回から、いよいよPerlプログラミングの世界に入っていきましょう。手始めに、PerlにおけるWebプログラミングの要ともいえるLWPを用いた、HTTPコンテンツをPerlでHackする手法を解説します。
    2007/03/30  
 
developerWorksの歩き方: 第3回 トレンドをつかむ
developerWorksのコンテンツを十分に味わうには、外部のサービスなども活用した方がいいでしょう。今回は、RSSやソーシャルブックマークを活用してdeveloperWorksの人気記事をチェックしていきます。
    2007/03/30  
 
「Zend Framework」で加速するPHP開発: 第1回 PHP開発でZend Frameworkを知らないだなんて嘘ですよね?
Zend Frameworkは、MVCアーキテクチャーを構成し、各種コンポーネントを組み合わせることで効率的なPHPアプリケーションを構築できるフレームワークで、PHP用フレームワークの本命と呼ばれています。本稿では、Zend Frameworkについて、その機能と各種コンポーネントの使い方を解説します。
    2007/03/30  
 
作って学ぶ、今どきのWebサービス: 第5回 Amazon Webサービスを料理してみる
Webサービスを使いこなすといっても、Web検索の機能をアプリケーションに統合するだけでは、いまいち面白みがありません。今回は、Amazon.comが提供するAmazon Webサービスを料理してみましょう。
    2007/03/30  
 
作って学ぶ、今どきのWebサービス: 第3回 XML::SimpleであらゆるXML文書を料理する
RSSにおけるXML::RSSのように、専用のモジュールがある場合にはそれを使えばよいのですが、そうでない場合は汎用のXMLパーサーモジュールを使ってパースすることになります。今回は、XML::Simpleを使ってあらゆるXML文書を料理できるようにしてみます。
    2007/03/30  
 
「Zend Framework」で加速するPHP開発: 第4回「ソースは明かせない……」--ソースコードをバイナリ/難読/暗号化する
PHPはスクリプト言語であるため、PHPでアプリケーションを作成して配布すると、ソースコードが読める状態になってしまいます。最終回となる今回は、PHPのソースコードをバイナリ/難読/暗号化する「Zend Guard」を紹介します。
    2007/03/30  
 
作って学ぶ、今どきのWebサービス: 第1回 何はなくともCPANを知ろう
最近のWebかいわいでは、Webアプリケーション同士が連携してどんどん面白いサービスが生まれています。しかし、Web上のサービスは手元にソフトウェアも何も残らないので、どうしても雲をつかむような分かりにくさがあります。そこで本連載では、Webサービスを実際に利用/作成しながら、そういった「今どき」のテクノロジーを学んでみたいと思います。
    2007/03/30  
 
Ajax をマスターする: 第 10 回 JSON を使用したデータ転送
非同期アプリケーションで情報の送受信に使用できるデータ・フォーマットにはプレーン・テキストと XML がありますが、連載「Ajax をマスターする」の今回の記事で紹介するのはもう 1 つの便利なデータ・フォーマット、JSON (JavaScript Object Notation) です。JSON がアプリケーションでのデータやオブジェクトの移動をさらに簡単にする仕組みを説明します。
    2007/03/27  
 
多忙な Java 開発者のための db4o ガイド: クエリー、更新、そして ID
データを探し出して、取得するための主要な機構として、RDBMS は SQL を使いますが、OODBMS では、いくつかの異なる機構の中から 1 つを選んで使うことができます。Ted Neward によるシリーズ第 2 回目の今回は、そうした機構の例として、Query by Example や OODBMS 特有のカスタム機構などのオプションを紹介します。これから彼が説明するように、SQL に代わる方法のいくつかは、SQL そのものよりも簡単に使うことができます。
    2007/03/27  
 
dW が Jolt Hall of Fame 賞を受賞。dW の著者、Booch、Ambler も受賞の栄誉に輝きました
シリコン・バレーの SD West コンファレンスで先週開催された第 17 回 Annual Jolt Product Excellence Award (「業界のオスカー」と呼ばれています) 授賞式で、IBM developerWorks が Jolt Hall of Fame 賞を受賞しました。この賞は、ソフトウェア開発業界で製品あるいはリソースに与えられる最高の栄誉とされています。
    2007/03/27  
 
Second Life クライアント、第 1 回: Second Life の詳細を調べる
Second Life を開発した Linden Lab が Second Life のビューアー・プログラムをオープン・ソースでリリースしたことによって、クローズド・ソースの開発モデルとオープン・ソースの開発モデルそれぞれの強みを比較できる稀な機会が得られました。シリーズ第 1 回の今回は、両者の開発スタイルの違いの概要と、皆さんが独自のビルド環境を設定するために必要な事項を解説します。
    2007/03/27  
 
Graphical Editing Framework を使用して Eclipse ベースのアプリケーションを作成する
GEF (Graphical Editing Framework) を使って Eclipse ベースのアプリケーションを作成するのに必要な初期手順を学んでください。この記事では、Eclipse におけるグラフィカル・エディター作成プロセスを自力で行うための最近の選択肢についても紹介しています。
    2007/03/27  
 
Axis2 と JiBX を使って Java クラスを Web サービスに変換する: 第 2 回 XML を完全機能の Web サービスに変換する
XML は、ほとんど何についてでも定義できるという意味で強力です。しかも、大部分のアプリケーションにとって、特にこのシリーズの目的である Axis2 と JiBX にとっては、外部から読み取り可能なフォーマットの基本でもあります。それに加え、Web サービスがより一般的になってきたため、レガシーの Java(TM) プロジェクトを完全機能の Web サービスに変換することの緊急度が次第に高まっています。これまで、Web サービスの自動生成は 1 つのサービスや1 つのクラスに限定されていましたが、現在では、既存のプロジェクトの中にあるさまざまな Java クラスから 1 つ以上のサービスを生成するという選択肢があります。この記事は 2 回シリーズの第 2 回として、Axis2 と JiBX を使って、XML から、そして既存の Java クラスから、完全機能の Web サービスへの移行を行います。
    2007/03/22  
 
WebSphere Application Server Community Edition の高度な管理: 第2回 スレッド・プールとクラスタリング、そして構成プラグインを扱う
IBM WebSphere Application Server Community Edition の Web ベースのコンソールを利用すると、高度な管理作業を、複雑な手動コマンドを入力せずに行うことができます。この記事では、管理コンソールを使ってスレッド・プールをモニターし、アプリケーションを再デプロイし、クラスタリング用に mod_jk 構成を設定する方法などを説明します。
    2007/03/21  
 
PHP V5.2 の新機能、第 2 回: 新たな入力フィルタリング拡張機能の使用方法
連載「PHP V5.2 の新機能」の第 2 回では、PHP V5.2 が新たに提供している入力フィルタリング拡張機能を効率的に使用する方法を学んでください。この極めて必要性の高い機能では、フォームやその他の入力メディアへの入力を、サード・パーティーのソフトウェアに頼らずに検証できます。この記事をひと通り読めば、入力を効率的にフィルタリングしてアプリケーションのセキュリティーを強化できるようになるはずです。
    2007/03/20  
 
Java API リファレンス・マニュアル: 第 1 回 Eclipse ヘルプに Java API リファレンス・マニュアルを編成する方法
この記事では、使いやすくて検索ができる Java アプリケーション・プログラミング・インターフェース (API) のリファレンス・マニュアルを作成するための 2 通りの方法を説明します。
    2007/03/20  
 
多忙な Java 開発者のための db4o ガイド: 紹介と概要
このシリーズ記事の第 1 回では、db4o を紹介し、今日のリレーショナル・データベースに対する重要な代替手段となった理由を説明します。
    2007/03/20  
 
Axis2 と JiBX を使って Java クラスを Web サービスに変換する: 第 1 回 XML を使って Java クラスから Web サービスを定義する
XML は、ほとんど何についてでも定義できるという意味で強力です。しかも、大部分のアプリケーションにとって、特にこのシリーズの目的である Axis2 と JiBX にとっては、外部から読み取り可能なフォーマットの基本でもあります。それに加え、Web サービスがより一般的になってきたため、レガシーの Java プロジェクトを完全機能の Web サービスに変換することの緊急度が次第に高まっています。これまで、Web サービスの自動生成は 1 つのサービスや1 つのクラスに限定されていましたが、現在では、既存のプロジェクトの中にあるさまざまな Java クラスから 1 つ以上のサービスを生成するという選択肢があります。この記事は 2 回シリーズの第 1 回として、XML を使って既存の Java クラスから Web サービスを定義します。
    2007/03/20  
 
Axis2 デプロイメント・モデルの使いやすさが際立つ 6 つの理由
複数のサービスをデプロイするのに時間がかかったり、変更を加えるたびにサーバーを再起動しなければならないことにうんざりしていませんか? そんな場合に救いの手となるのが、Apache Axis2 です。Axis2 は簡潔で拡張可能なオープン・ソースの Web サービス・プラットフォームとして人気が高まっています。Axis2 には Apache SOAP ファミリー全体における大幅な改善点がいくつかあり、その多くは Axis2 のデプロイメントに生かされています。この記事では、Axis2 の新しいフィーチャーのなかでも、とくに Axis2 デプロイメント・モデルを Axis1 に比べてはるかに使いやすくしている注目のフィーチャーを取り上げます。
    2007/03/15  
 
コマンド・ライン PHP? もちろん可能です!
コマンド・ラインから PHP コードをデバッグする方法を学び、PHP そのものに対するシェル・スクリプト言語としての PHP の強みを検証しましょう。
    2007/03/13  
 
PHP V5.2 の新機能、第 1 回: 新しいメモリー・マネージャーの使用方法
この「PHP V5.2 の新機能」シリーズの第 1 回では、PHP V5.2 に導入された新しいメモリー・マネージャーの使用方法を学んでください。メモリー使用量を追跡および監視する腕を磨けば、PHP V5.2 で一段と効率的にメモリーを使えるようになれます。
    2007/03/13  
 
PHP 開発者のための XML: 第 3 回 XML を読み取り、操作し、作成する高度な方法
3 回シリーズの最終回である今回は、PHP5 で XML を読み取り、操作し、作成するための、その他の方法について解説します。ここでは、今やおなじみとなった API である DOM と SimpleXML について、より高度な環境での使い方に焦点を当て、またこの 3 回シリーズでは初めて、XSL エクステンションについても説明します。
    2007/03/13  
 
UIMA 101 後編 - テキスト分析エンジンを開発する
前編ではUIMAの概要を紹介して、UIMA SDKに付属のサンプルからテキスト分析エンジンがどのように構成されているかを見てきました。後編ではEclipse上でテキスト分析エンジンを開発する手順を紹介します。
    2007/03/09  
 
UIMA 101: 前編 - UIMAことはじめ
世の中にひしめく多数のデータのうち8割は構造化されていないデータ(非構造化データ)として存在していると言われています。UIMAはこれらの非構造化データの取り扱いに対して、IBMが示した解のひとつです。本稿ではUIMAの概要を紹介すると共に、サンプルのテキスト分析エンジンを動かしながらUIMAコンポーネントの構成を解説します。
    2007/03/09  
 
Little-G: アプリケーション・サーバーをコンパクトにする
単純なアプリケーションをビルドしたものの、アプリケーションのデプロイメントには大掛かりなアプリケーション・サーバーを使わなければならなかったという経験は何度ありますか。Java EE (Java Platform, Enterprise Edition) の機能のうち、通常使用している機能は何パーセントかご存知でしょうか。私が推測するところ、10% そこそこでしかありません。代表的な例として、Apache Geronimo は安定したオープン・ソースの J2EE (Java 2 Platform, Enterprise Edition) 1.4 認定アプリケーション・サーバーですが、機能満載で持て余すほど巨大です。そこで、Apache の関係者は Web アプリケーション用に単純で軽量ながらも十分役目を果すコンテナーをビルドするという目的で、オリジナルの Geronimo アプリケーション・サーバーから余分な機能を取り除いた最小構成バージョンを作成しました。それが、Apache Geronimo Little-G です。Little-G は J2EE 認定アプリケーション・サーバーではありませんが、完全な Web コンテナー、トランザクション・マネージャー、データベース接続をはじめ、よく使用されている J2EE 準拠の機能をほとんど備えています。この記事では、Little-G の機能を紹介し、Web アプリケーションを Little-G 上でデプロイして実行する方法を説明します。
    2007/03/06  
 
PHP アプリケーションを高速に、より高速に、最高速にする、第 2 回: PHP アプリケーションをプロファイリングして遅いコードを発見し、診断し、高速化する
PHP アプリケーションが遅い場合には、プロファイラーを使うことによって、どこで時間が消費されているかを測定することができます。そうすれば、最も遅いステートメントやループ、関数、クラス、ライブラリーなどを見つけることができます。時間ではなくメモリーの使用量が問題の場合にも、適切なプロファイラーはコンポーネントのフットプリントを示してくれます。
    2007/03/06  
 
アプリケーションの並列化で Linux のブートをより高速に行う
Linux について特に開発者たちが持っている一番大きな不満の 1 つは、Linux がブートする際の速度です。Linux は、細かい設定をしなくてもデフォルトでクライアント・デスクトップまたはサーバーとしてすぐに機能する汎用オペレーティング・システムです。このような柔軟性を持つ Linux は幅広い用途に向いてはいるものの、特定の構成に対応するのに最適とは言えません。この記事では、初期化プロセスを並列化するための 2 つのオプションをはじめ、Linux のブート速度を向上するための方法を説明します。また、ブート・プロセスのパフォーマンスをグラフを使って視覚的に表示する方法についても紹介します。
    2007/03/06  
 
PHP 開発者のための XML: 第 2 回 高度な XML 構文解析方法
3 回シリーズ第 2 回目の今回は、大きな XML 文書、あるいは複雑な XML 文書の構文解析に焦点を当てながら、PHP5 での XML 構文解析方法について説明します。ここでは構文解析の拡張モジュールについて背景を少し紹介し、また具体的に、どのタイプの XML 文書にどの構文解析方法が最適なのか、その理由は何かについて説明します。
    2007/03/06  
 
ヒント: XHTML に対して適切な MIME タイプを送信するように Apache を構成する
このヒントは、Microsoft Internet Explorer など、標準に準拠しないブラウザーには相変わらず text/html を送信する一方、XHTML (Extensible Hypertext Markup Language) 文書をサポートするブラウザーには XHTML 文書をメディア・タイプ application/xhtml+xml でタグ付けするように Apache を構成する方法について説明します。
    2007/03/06  
 
Fedora Live CD を作成する
Fedora Linux は一般的で成熟した Linux ディストリビューションであり、多くの人が Fedora をベースとした Live CD ディストリビューションを作成していますが、Fedora プロジェクト自体は 2006年の12月まで、最初の正式な Live CD をリリースしませんでした。Fedora Live CD 作成ツールである Pilgrim をリライトしたものを使って、使いやすい、独自のカスタム Live CD を作る方法を学びましょう。
    2007/02/28  
 
Geronimo への転向: Spring Framework を使って、データ・アクセスと構成の問題を軽減する
典型的な開発者であれば間違いなく、データ・アクセスの問題へのソリューションを歓迎して、構成を楽にするためのツールなら何でも喜んで採り入れるはずです。けれども Web アプリケーション全般の話、そしてデータ・アクセスの問題についての具体的な話をスムーズに進めるには、誰かにどこかの時点で Spring について説明してもらわないわけにはいきません。そもそも他の Web アプリケーション・フレームワークは本当に必要なのでしょうか。私が連載「Geronimo への転向」で Apache Geronimo と Spring の共通部分を取り上げた記事を書こうと決めたのは、Spring Framework フレームワークの人気の全容を突き止める潮時だとわかっていたからです。そこで私の質問攻めに遭ったのは、Jeff Genender です。
    2007/02/27  
 
Google Web Toolkit、Apache Derby、Eclipse を使用して Ajax アプリケーションをビルドする 第 4 回: デプロイメント
この連載ではこれまで 3 回の記事で、GWT (Google Web Toolkit) を使って単純ながらも機能的な Web アプリケーションをビルドしました。今までは、GWT のホスト・モードを使用して、このアプリケーションを編集し、デバッグしてきました。そのため、Java 開発ツール内で Web サーバー環境をシミュレートできましたが、残念ながらすべてのユーザーにこの Web アプリケーションを実行するためだけに Eclipse をダウンロードしてもらうのは、現実的ではありません。そこで連載 4 回目となる今回の記事では、Java Web アプリケーション・サーバー内で GWT をデプロイする方法と、Apache Derby データベースを使って GWT を動作させる上でのヒントを紹介します。
    2007/02/27  
 
Eclipse の User Assistance プロジェクトを知る
この記事は Eclipse の User Assistance プロジェクトを紹介し、Eclipse ベースのアプリケーションに品質の高いユーザー支援を実現するための方法について解説します。
    2007/02/27  
 
PHP 開発者のための XML: 第 1 回 PHP での XML を 15 分で学ぶ
3 回シリーズの第 1 回の今回は、PHP5 の XML 実装を紹介します。そして、まだ PHP で XML を使うことに慣れていない人達のために、PHP 環境の DOM と SimpleXML を使って、短くて簡単な XML ファイルを読み取り、構文解析し、操作し、そして作成する方法について説明します。
    2007/02/27  
 
Linux のヒント: Bash のテスト関数と比較関数
皆さんは、Bash シェルの膨大なテスト・オプションや比較オプションで混乱していないでしょうか。このヒントでは、さまざまなタイプのファイル・テストや算術テスト、文字列テストの神秘を解き明かします。このヒントによって、どういう場合に test や [ ]、[[ ]]、(( ))、あるいは if-then-else といった構成体を使うべきかを理解できるはずです。
    2007/02/20  
 
LTA によるマルチイベント・ソフトウェア問題の分析
サンプル・シンプトン・カタログと関連イベントを使って、ソフトウェアの問題が複数のシステムに及ぶ場合に IBM LTA (ログ&トレース・アナライザー) がどのように問題の診断に役立つかを理解してください。LTA を紹介するこの記事では、問題判別の機能に焦点を当て、シンプトン(症状)、シンプトン定義、イベント、さらにイベントとシンプトンの関係をご紹介します。また、マルチイベント・シンプトンを管理する上での複雑さについても説明します。
    2007/02/20  
 
PHP アプリケーションを高速に、より高速に、最高速にする、第 1 回: パフォーマンスとスループットをオペコード・キャッシュ・ソフトウェアで増強する
PHP は、Web アプリケーションの作成に最も頻繁に使用されるスクリプト言語です。PHP は学びやすく、目に見える結果を即座に作成します。しかし PHP はインタープリター型のため、PHP コードは実行の都度、構文解析とオペ・コードへの変換が必要です。オペ・コード・キャッシュによって、そうしたリワークがなくなり、PHP アプリケーションが高速化されます。
    2007/02/20  
 
Apache Derby を使用した開発 ― 3 連単を当てる: Apache Derby を使用した Java データベース開発、パート 3
Java プログラムから Apache Derby データベースを変更する方法を学んでください。今回は連載の前の 2 回の記事を基に、Java アプリケーション内から Apache Derby データベースのテーブルを作成および削除する方法、データを挿入、更新、削除する方法を説明します。また、JDBC の Statement および <code>PreparedStatement</code> クラスの使用方法、そして SQL バッチによってパフォーマンスを改善する方法も取り上げます。
    2007/02/20  
 
GT4 による開発: 完全な相互認証
Grid Security Infrastructure (GSI) は、Java Generic Security Services (GSS-API) の実装の 1 つです。GSS は、通信アプリケーション間でメッセージを安全に交換するために使用されます。GSS では、Kerberos など、基礎となるさまざまなセキュリティー・メカニズムに基づいたセキュリティー・サービスに一様にアクセスできます。この記事では、GSI/GSS-API 拡張機能とプロキシー証明書を利用して独自のクライアント/サーバー・アプリケーションを構築する方法について学びます。これは、グリッド・ミドルウェアで使用される基本認証メカニズムになります。
    2007/02/20  
 
ソフトウェアテストシンポジウム ウェブレポート
東京、大阪、札幌と三都市で行われ、多くのソフトウェアに関する情報を提供してご好評をいただきました、「ソフトウェアテストシンポジウム」( JaSST )が、今年も「ソフトウェアテストシンポジウム 2007」と称して、東京の目黒雅叙園にて、1月30日と31日、2日間にわたり開催されました。
    2007/02/16  
 
Apache Geronimo の JNDI ネーミングおよび Java リソース接続プール、第 3 回: メール・セッション
この連載ではこれまで、データ・ソース接続と JMS (Java Message Service) リソース・グループを作成し、それぞれが Apache Geronimo および JNDI (Java™ Naming and Directory Interface) とどのように連動するかを説明してきました。4 回連載の第 3 回目となるこの記事では、Apache Geronimo、JNDI、メール・セッションが相互に作用する仕組みについて取り上げます。単純な Geronimo アプリケーションで JNDI を使ってメール・セッションを作成する方法、そしてメール・セッションにアクセスする方法を紹介します。
    2007/02/13  
 
Google Web Toolkit、Apache Derby、Eclipse を使用して Ajax アプリケーションをビルドする 第 3 回: 通信
この連載ではこれまで 2 回の記事で、GWT (Google Web Toolkit) と Apache Derby リレーショナル・データベースによる単純な Web アプリケーションの作成方法を紹介してきました。第 1 回では、GWT を使用して Slicr というピザ宅配システムのフロントエンドをビルドする方法に焦点を当てました。第 2 回では、Derby を使って実際にリレーショナル・データベースを作成し、データベースの行を Java オブジェクトに変換するメカニズムの基本を説明しました。話がいよいよ面白くなってきたところで、第 3 回となるこの記事では、クライアントとサーバーを互いに対話させる方法を説明します。GWT 内のリモート・プロシージャー・コール (RPC) フレームワークを使えば、Java メソッド呼び出しを作成するのと同じくらい簡単にサーバーからデータを取得できるようになります。
    2007/02/13  
 
Ghosd や Perl を使用して、装飾付きのオンスクリーン表示を作成する
Perl や Ghosd などのネットワーク・プログラミングを利用し、ローカル・システムやリモート・コンピューターからのメッセージに基づいてテキストやグラフィックスのオンスクリーン・オーバーレイを表示します。カスタム画像、フォント・サイズ、および色を定義して、ご使用のデスクトップに融合した形で情報を伝達します。
    2007/02/13  
 
PHP でファイルを読み取るための正しい方法
PHP のさまざまなファイル関数の使い方を学びましょう。まず fopen や fclose、feof などの基本的なファイル関数について調べ、さらに fgets や fgetss、fscanf などの読み取り関数について学びます。そして、1 行か 2 行のコードで全ファイルを処理できる関数についても見て行きます。
    2007/02/13  
 
Linux のヒント: CUPS を使って DVI ファイルを印刷する
皆さんは、Linux で DVI ファイルや他のファイルを印刷しようとして「unsupported format」メッセージを受け取ったことはないでしょうか。このヒントでは、既存のツールを組み合わせて DVI ファイル印刷用の CUPS プリント・フィルターを作成する方法を説明します。
    2007/02/07  
 
Geronimo への転向: JSF との対面
前回「Geronimo への転向」を書いたとき、私は Spring のどこがそんなに素晴らしいのか不思議でしたが、その謎が解けたとき、今度は JSF (JavaServer Faces) の人気の理由を教えてくれる人が必要だと冗談にしました。その後どうなったかと言うと、JSF の実装に焦点を当てた Apache Geronimo と Apache MyFaces の共通部分に関する記事を書いて欲しいというリクエストが寄せられました。この話題を取り上げたのは正解でした。Geronimo と MyFaces の統合に取り組んでいる IBM の Tim McConnell から話を聞いた私は、このような仕様が実際はどのように実装されるかについて期待以上のことを学んだのです。
    2007/02/06  
 
Eclipse Plug-in Development Environment を使ってテンプレートを作成する
この記事では、皆さんのクライアントがエクスペリエンスを高めることができるように、Eclipse でテンプレートを作成する方法を紹介します。ここでは、PDE テンプレート作成システムの柔軟性の例として単純なテンプレートを作成します。
    2007/02/06  
 
Developers Summit 2007 ウェブレポート
日本のコンピューター技術の礎を支えるソフトウェア開発者の最大規模のイベント「Developers Summit」 が今年も目黒雅叙園にて2月14日、15日の2日間に渡り開催されました。2003年から続くこのイベントも今回で5年目を向かえ、さまざまな開発分野の講演が行われました。
    2007/02/01  
 
Eclipse の OSGi コンソールを探る
この記事で、OSGi (Equinox) コンソールとして知られる隠れた宝石について学び、この珠玉の宝を Eclipse 開発者のツールボックスに加える方法、そしてこのコンソールを拡張してツールボックスにさらに追加する方法についても学んでください。
    2007/01/30  
 
Web 2.0 ユーザー・インターフェース・テクノロジー
Web 2.0 で使用するアプリケーションを新たに作成するという仕事が、あなたに与えられたとします。HTML ベースのユーザー・インターフェースを心から歓迎するユーザーがいる一方で、自分の使用するすべてのアプリケーションが Excel のように動作することを望むユーザーもいます。
    2007/01/30  
 
Apache Derby を使用した開発 ― 3 連単を当てる: Apache Derby を使用した Java データベース開発、パート 2
ApacheDerbyデータベースに対して単純なデータベース・クエリーを実行する方法、そして結果を選んで処理する方法を完全に把握してもらうには、Statement、ResultSet、そして ResultSetMetaData という 3 つの新しい JDBC クラスについて紹介しなければなりません。この記事では、この 3 つのクラスを JDBC データベース接続で使用して、Apache Derby データベースから独自の Java アプリケーションに短時間で簡単にデータを抽出する方法を説明します。
    2007/01/30  
 
PHP と DB2 9、そして Xajax を組み合わせ、Ajax を使う
PHP は Web アプリケーションの開発に一般的に使われるスクリプト言語です。また Ajax (Asynchronous JavaScript and XML) は、JavaScript とDOM (Document Object Model)、そして XMLHttpRequest 技術を組み合わせ、クライアントとサーバーとの間で動的な対話動作を行わせるための Web 技術です。PHP で Ajax を使うための PHP クラス・ライブラリーには、さまざまなものがあります。そのうちの 1 つが、オープンソースでオブジェクト指向の PHP クラス・ライブラリーである Xajax です。この記事では、PHP と Ajax、そして Xajax を実装し、Linux、UNIX、Windows 用の IBM DB2 9 にアクセスする動的な Web アプリケーション・ソリューションを開発する方法について学びます。
    2007/01/25  
 
Ajax をマスターする: 第 9 回 Google Ajax Search API を使う
非同期要求を行うということは、自分のサーバー・サイド・プログラムと対話するというだけの話ではありません。Google や Amazon などで持っている公開 API と通信すれば、独自のスクリプトやサーバー・サイド・プログラムが提供する以上の機能を Web アプリケーションに追加できます。この記事では Brett McLaughlin が、Google で提供している公開 API との要求・応答方法を伝授します。
    2007/01/23  
 
Google Web Toolkit、Apache Derby、Eclipse を使用して Ajax アプリケーションをビルドする 第 2 回: 信頼できるバックエンド
GWT (Google Web Toolkit) を使用した Ajax (Asynchronous JavaScript + XML) アプリケーションのビルド方法についての連載第 2 回目では、Web アプリケーションのための Apache Derby データベースをビルドして GWT の制御に使用する方法について学びます。第 1 回の記事では GWT の概要と、GWT を使用して Web アプリケーションのリッチ・クライアント・フロントエンドを作成する方法を紹介しました。今回は舞台裏に回り、データベース、そして GWT が使用できる形式にデータを変換するためのコードでバックエンドをセットアップする方法について学びます。この記事を読み終える頃には、フロントエンドとバックエンドが対話する準備が完了しているはずです。
    2007/01/23  
 
Geronimo への転向: セキュリティーと Apache Geronimo の将来
Apache Geronimo のような包括的サービスを提供するアプリケーション・サーバーには、セキュリティーに関しても同じく包括的な実装が必要となります。つまり、SSL 接続をサポートすればいいだけの話ではなく、アプリケーション内で行われる内部要求にもセキュリティー保護が必要だということです。今回の記事では、David Jencks 氏が Geronimo のセキュリティー実装に関する現在と将来の展望について Geronimo へ転向した人へ説明します。
    2007/01/23  
 
PHP を使ってマルチメディアのコンテンツと帯域幅を Amazon に任せる
Amazon の S3 (Simple Storage Service) リモート・ストレージ・サービスを利用してメディア・ファイルをホストし、ディスク・スペースと帯域幅を節約すると同時にサイトの信頼性を向上させましょう。また S3 は、Web 2.0 の世界では非常に一般的な、拡大する一方のマルチメディア・ファイルを扱えることから、サイトの信頼性を改善することもできます。
    2007/01/23  
 
Rico LiveGrid ウィジェットでデータ・セットのナビゲーションを作成する
ソフトウェア・エンジニアの Nikhil Parekh によるこの記事で、Rico LiveGrid ウィジェットを使って手軽に Ajax スタイルのナビゲーションを Web アプリケーションに追加してみてください。
    2007/01/16  
 
PHP アプリケーションを国際化する
アプリケーションのローカライズは、事前に計画して行われる場合もあれば、あわてて後から行う羽目になる場合もあります。gettext や XML、XSLT、そしてデザイン・パターンなどによる方法やツールを学び、成熟した製品を後からローカライズする場合、あるいは最初からローカライズを計画する場合に役立てましょう。
    2007/01/16  
 
Ajax と XML: 5 つのクールな Ajax ウィジェット
Web 2.0 の流行によってユーザー・エクスペリエンスが新たな脚光を浴びるようになりました。そんなユーザー・エクスペリエンスの一端を担うのは、今までの開発にはなかった斬新なユーザーとの対話方法、そしてユーザーに対する情報の表示方法です。ウィジェットとも呼ばれるこれらの新しいインターフェースは、サーバーとのやり取りに Ajax (Asynchronous JavaScript + XML) を使用します。この記事では、サイトの対話性を強化する 5 つのウィジェットを紹介します。
    2007/01/16  
 
Apache Derby で Eclipse プラグインを開発する
Apache Derby データベースでリソース索引付け機能を使って Eclipse プラグインを開発する方法を実演します。Derby データベースを Eclipse に組み込んで使用すれば、セキュリティーやネットワークの問題 (接続が不安定になったり、待ち時間が長くなるなど) が一切ない SQL データベースをクライアント側に作成できます。情報を保管して、前に保管されたデータを素早く検索する簡単な方法としては、SQL データベースと JDBC API を使用します。
    2007/01/16  
 
Geronimo への転向: Web 2.0 成績表
その言葉が実際に何を意味するかという点で意見は大きく分かれてはいるものの、Web 2.0 は今でもコンピューター産業で最も注目を浴びている流行語です。今月の「Geronimo への転向」では大げさな宣伝は省き、Apache Geronimo プロジェクトを Web 2.0 アプリケーションの実現手段として、そして Web 2.0 アプリケーション自体として検討します。
    2007/01/09  
 
仕事中に口笛を吹いて、コンピューターにコマンドを実行させる
Linux あるいは Microsoft Windows とオープンソースの sndpeek プログラム、そして単純な Perl スクリプトを使って、特定のトーン・イベント・シーケンスを読み取らせ (つまり文字どおりコンピューターに向かって口笛を吹いたり、ハミングしたり、そして歌を歌ったりし)、こうしたトーンに基づいてコマンドを実行しましょう。コンピューターに向かって、ベートーベンの交響曲第 5 番の最初の数小節を、短くて低いトーンの口笛で吹くことで、E メールをチェックしたり、スクリーンセーバーのロックを解除したりすることができます。口笛を吹いて、作業効率を高めましょう。
    2007/01/09  
 
仮想 Linux
仮想化の意味は、人によってさまざまです。目下、仮想化で大きな焦点となっているのは、サーバーの仮想化、つまり複数の独立したオペレーティング・システムを単一のホスト・コンピューターでホストすることです。この記事では、仮想化の背後にある意図を説明した後、仮想化を実装する方法をいくつか取り上げます。さらに、Linux でのオペレーティング・システムの仮想化など、世間に出回っている仮想化技術についても目を向けてみます。
    2006/12/29  
 
DB2/Informix とオープン・ソース: 腹黒い政治的策略に対するデータベースの防御
システム管理者にとって、システム・ダウンは最もストレスの多い出来事の 1 つです。この記事では、データベースのリアルタイム・モニターを作成する方法を紹介します。これにより、問題の発生時にアラートを受けられるようにするとともに、データベース・サーバーのステータスに関する貴重な情報を人々に提供できるようになります。焦点となるのは、責任を追及することではなく、問題を解消することです。リアルタイム・モニターは、アプリケーション管理者とネットワーク管理者にとって、システムの機能停止の原因を迅速に診断するための資産にもなります。データベース・ステータスを公開するための PHP ページを含め、監視用の完全なソース・コードが用意されています。
    2006/12/21  
 
PHP を使ってすぐに Flash ムービーを作る
リッチ・インターネット・アプリケーションが Web 2.0 の新しい流行語となっていますが、Web 2.0 を支える実体のなかで鍵となるコンポーネントは Adobe Flash です。この記事で、Flash ムービーをアプリケーションに統合し、Ming ライブラリーを使って Flash ムービーを動的に作成する方法を学んでください。
    2006/12/19  
 
IP エイリアスを使って 1 枚のネットワーク・カードで複数の SSL サイトをホストする
SSL と名前ベースの仮想ホストの併用への関心が高まっています。そんなことは不可能だと言う人もいますが、Apache では IP ベースの仮想ホストを使って仮想ホストを実装できます。John Liao と Jim Miles がこの記事でその方法を伝授します。
    2006/12/19  
 
Rails を使って Web アプリケーションに Ajax を組み込む
Ruby on Rails は、Web アプリケーションを構築するための素晴らしいプラットフォームを提供します。このプラットフォームに組み込まれた Ajax (Asynchronous JavaScript(TM) + XML) 機能を使って、Web 2.0 のリッチなユーザー・インターフェース・エクスペリエンスを皆さんのアプリケーションで実現しましょう。
    2006/12/19  
 
Apache Geronimo の JNDI ネーミングおよび Java リソース接続プール、第 2 回: Java メッセージ・サービスの使用
JNDI (Java Naming and Directory Interface) は、オブジェクトに名前を関連付けるメソッド、そしてその名前に基づいてディレクトリー内のオブジェクトを検索するメソッドをアプリケーションに提供するアプリケーション・プログラミング・インターフェース (API) またはライブラリーです。連載第 2 回目のこの記事では、Apache Geronimo、JNDI、そして JMS (Java Message Service) リソース・グループの相互関係について説明します。さらに、JMS リソース接続を作成し、JNDI を使って単純な Geronimo アプリケーション内で JMS リソースにアクセスする方法についても学びます。
    2006/12/12  
 
Apache Derbyを使用した開発 - 3連単を当てる: Apache Derbyを使用したJavaデータベース開発、パート1
Apache Derby データベースと連動する Java アプリケーションを作成する旅にようこそ! 旅の始まりとなるこの記事では、Derby 組み込み JDBC (Java Database Connectivity) ドライバーを使って、組み込み Derby データベースに接続する方法を説明します。さらに、データベース・メタデータ、そして Derby によって生成される可能性がある Java アプリケーションの SQL エラーや警告を正しく処理する方法についても学んでください。
    2006/12/12  
 
PHP と RSS: その仕組みを理解する
RSS シンジケーションは最近では至るところで目にします。つまり、PHP 開発者にとって少なくとも RSS とその仕組みを理解することが不可欠になっているということです。そこで、この記事では RSS の基礎知識とその多彩な使用方法のいくつかをはじめ、PHPを使ってデータベースから RSS フィードを作成する方法、そして XML_RSS モジュールで既存の RSS を読み取り、HTML に変換する方法を説明します。
    2006/12/05  
 
Google Web Toolkit、Apache Derby、Eclipse を使用して Ajax アプリケーションをビルドする 第 1 回: 魅力的なフロントエンド
Google Web Toolkit (GWT) は、ユーザーの Web ブラウザーで動作する動的 JavaScript スクリプトを作成する上で大きな進歩となります。GWT では、開発者が馴染みの深い Java 技術で、ユーザー・インターフェース (UI) とイベント・モデルを設計できます。しかも、コードを主要な全ブラウザーに扱いやすくするという骨の折れる作業は GWT に任せることができるのです。連載第 1 回目のこの記事で、非同期 JavaScript + XML (Ajax) アプリケーションを作成しながらも Java 言語でコードを作成する方法をはじめとし、GWT の基礎知識を学んでください。この記事では、簡単なサンプル GWT アプリケーションとして、オンラインでピザを販売する Slicr という名前の最新の Web 2.0 ビジネスを作成して実行する方法も紹介します。
    2006/12/05  
 
Linux 対応のデータ可視化ツール
Linux 上でデータをグラフィカルに表示するアプリケーションは、単純な二次元グラフから三次元曲面、そしてサイエンティフィック・グラフィックス・プログラミング、グラフィカル・シミュレーションまで多岐にわたります。幸いにも、可視化ツールには gnuplot、GNU Octave、Scilab、MayaVi、Maxima、OpenDX など、多数のオープン・ソースが揃っています。ツールのそれぞれには利点と欠点があり、対象となるアプリケーションも異なるため、さまざまなオープン・ソース・グラフィカル表示ツールを学んで、そのなかからご使用のアプリケーションに最適なものを選択できるようにしてください。[この記事は OpenDX を追加記載するために更新されています (編集者)。]
    2006/11/30  
 
RCP アプリケーションのための宣言型セキュリティー・モデルを作成する
シック・クライアント・ベースのビジネス・アプリケーションには厳格なセキュリティー規制が求められ、そこではさまざまなクラスのユーザーが、事前に決定された一連のアクセス権を受け取ります。この記事では、Eclipse プラットフォームが提供するフィーチャーを活用することによって、RCP (Rich-Client Platform) アプリケーションのための柔軟なセキュリティー・モデルを構築する方法について説明します。
    2006/11/29  
 
Apache Proxy のディレクティブ (mod_proxy) を使って LAMP セキュリティーを改善する
この記事では Nick Maynard が、Apache の mod_proxy モジュールを使って LAMP セットアップのセキュリティーを改善する方法の概要を説明します。この記事は Linux のみを対象としますが、ここで説明する原則のいくつかは、他のオペレーティング・システムにも適用することができます。
    2006/11/29  
 
Eclipse のための Ajax Toolkit Framework を知る
ATF (Ajax Toolkit Framework) は新しい Open Ajax イニシアチブの中核であり、強力な Web プログラミング手法を、Eclipse Foundation によって利用しやすくすることを目的としています。ATF は、Dojo や Zimbra、Rico など、さまざまなオープンソース Ajax ツールキットのための Ajax (Asynchronous JavaScript and XML) 開発環境を追加することによって、WTP (Eclipse Web Tools Platform) を拡張しています。この記事では、HelloWorld の例をとおして ATF のインストールと構成方法を説明し、また Eclipse と Dojo を使って、基本的な Web アプリケーションを作成します。
    2006/11/29  
 
Apache Geronimo の JNDI ネーミングおよび Java リソース接続プール、第 1 回: データ・ソース接続
JNDI (Java Naming and Directory Interface) は、Apache Geronimo アプリケーション・サーバーにある接続プールとのインターフェースです。このインターフェースを介して、開発者は EJB (Enterprise Java Bean) をはじめとするすべての Java オブジェクトにアクセスします。この連載記事では、JNDI を使用してデータ・ソース、JMS (Java Messaging Services)、メール・セッション、そして URL 接続のための接続プールにアクセスする方法をそのコンセプトとともに説明します。
    2006/11/21  
 
3、2、1 ... Geronimo! 第 4 回: ものごとのスキーマ
Web ブラウザーはデータベース・スキーマで始まる行の終わりにマークを付けますが、優れたデータベース・スキーマとはどうやって作成するのでしょうか。それには効率的なツールだけではなく、計画が必要です。データベースの設計は、科学でもあり、芸術でもあります。この記事を読んで、データベースの設計手腕を磨きましょう。この記事には、高速かつ効率的で、変更にすぐに対応できるデータベース・スキーマを設計するのに役立つヒントが記載されています。
    2006/11/14  
 
Linux で Web スパイダーをビルドする
Web スパイダーとは、ユーザーに代わってインターネットを巡回して情報を収集、フィルタリング、そして場合によっては集約するソフトウェア・エージェントのことです。Web スパイダーは、一般的なスクリプト言語とそれぞれの一連の Web モジュールを使って簡単に開発できます。この記事では、Web サイトを巡回して情報 (この記事の場合は株価データ) を集める Linux&reg; 対応のスパイダーとスクレイパーをビルドする方法を紹介します。
    2006/11/14  
 
Linux ThinkPad の振動検出を活用する
カーネルを修正することによって最先端のカタルシス・インターフェースをコンピューターに実装しましょう。カーネル・パニックが起きた際に Linux ラップトップに振動を与えると、自動的にリセットすることができます。
    2006/11/07  
 
Ajax をマスターする: 第 8 回 要求および応答での XML の使用
この連載では前回、Ajax アプリケーションがサーバーへの要求を XML にフォーマット設定する方法を説明しました。また、サーバーに XML 要求を送信するのはほとんどの場合、有効ではない理由も説明しました。今回の記事では、多くの場合に有効なこと、つまりクライアントに XML 応答を返すことについて取り上げます。
    2006/11/07  
 
3、2、1 ... Geronimo! 第 3 回: ステートの問題
コンピューターと Web は日常的な仕事を一層手軽なものにしますが、その一方で、新しい課題ももたらします。今や、インターネットが HTML でコーディングされた Web ページの要求に応答するだけでいいだけの時代は終わりました。現代の Web サイトは、ユーザーに関する山のような情報を維持し、数々の複雑なタスクを管理できなければなりません。このようなステートに関する問題は、幸いにも最先端のツールによって単純化することができます。セッション状態という長年の問題に対する、業界ならではのソリューションとは何でしょう。この記事では、IT マネージャーを安心させるために Apache Geronimo が何千もの同時接続のステートを維持する方法について説明します。
    2006/10/31  
 
Apache Derby データベースを使う、第 1 回: 集中型のプロバイダー環境での管理対象オブジェクト
この 2 回の連載では、例えば IBM オートノミック・コンピューティングのタッチポイント技術や WSDM (Web Services Distributed Management) などの技術を使用して、Apache Derby データベースの管理を自動化することの重要性を取り上げます。第 1 回のこの記事では、需要が高まっている自動 IT 管理について説明します。
    2006/10/31  
 
Eclipse V3.2 Callisto では何がホットなのか
Eclipse Callisto (V3.2) は、Eclipse V3.1.x や、今日利用可能な他の多くの IDE よりも新しい、そして改善されたフィーチャーを備えています。
    2006/10/31  
 
真の Web 2.0: ブックマーク? それともタグ? 見事な手腕です!
この記事ではよく知られた Web 2.0 サイトの 1 つ、del.icio.us を、Web XML フィードと JSON を使い、Python および ECMAScript で操作する方法について学びます。Web 2.0 技術について考えるときに思い付くのは最新の Ajax の技かもしれませんが、それは全体像のほんの一部でしかありません。それ以上に基本的な関連事項として、オープン・データ、単純な API、そしてユーザーにソーシャル・ネットワークの形成を促す機能があります。これらの関連事項は同時に、Web アーキテクトにとって Web 2.0 を切実な問題にしています。この連載では、重要な現実世界での Web 2.0 サイトについて一歩踏み込んで見て行き、Web アーキテクトがどうしたら独自の Web サイトで Web の最大の利点を生かせるかを紹介していきます。
    2006/10/26  
 
エキスパートに聞く: Roland Barcia が AJAX と WebSphere について答える
WebSphere コンサルタントの Roland Barcia が、WebSphere 上で AJAX 技術を使った Web 2.0 アプリケーションの構築に関する質問に答えます。
    2006/10/25  
 
Apache Derby、Apache MyFaces、および Facelets による…
この記事では、Apache Derby、Apache MyFaces、および Facelets で JSF (Java Server Faces) アプリケーションを開発する方法を説明します。この記事でダウンロード用に準備されたサンプル・アプリケーションでは MVC (Model-View-Controller) アーキテクチャーを使用して、MyFaces コンポーネントの威力、そして Apache Derby と最新のビュー技術、Facelets による開発の容易さを説明します。
    2006/10/24  
 
Make をデバッグする
GNU make や System V make、Berkeley make などの make ユーティリティーは、アプリケーションのビルド・プロセスを効率化するための基本的なツールですが、お互いに少しずつ異なっています。この記事では、makefile の構造や makefile を作る際に犯しがちな誤りを防ぐ方法、移植性に関する問題への対処などについて学びます。また、その他の問題が発生した場合のための解決のヒントも解説します。
    2006/10/24  
 
CDT ベースのエディターを構築する、第 4 回: 高度な CDT 構文解析と Persisted Document Object Model
5 回からなる「CDT ベースのエディターを構築する」シリーズ第 4 回目の今回は、Eclipse の CDT (C/C++ Development Tooling) で 2 番目に使われている高度なパーサーを紹介します。この新しいプロセスは、その情報を PDOM (Persisted Document Object Model) で構成しており、索引付けやコード・コンプリーション、コンテンツ・アシストなどが可能です。皆さんが独自のカスタム・ツールとして CDT を改善、あるいは拡張しようとする場合には、この PDOM と新しい構文解析の理解が必須です。
    2006/10/24  
 
m17n を使って世界中にコードを移植する
Linuxアプリケーションを世界中で使えるようにするためには、しかも西欧の言語と世界各国の多くの言語との間に不公平を生じさせないためには、どんなに複雑な言語であっても任意の言語を入力でき、また保存、取得、描画できる、ローカライズしたアプリケーションを提供できなければなりません。多言語化ライブラリー、つまり m17n は、UNIX ライクのプラットフォームのあらゆる言語に対して、単一の国際化ソリューションを提供します。
    2006/10/17  
 
3、2、1 ... Geronimo! 第 2 回: 素材を形にする
料理本のようなガイドを手に、Apache Geronimo をダウンロード、インストールして、生産的に使用できるように構成してください。ちょっとした味付けをあれこれ加えると、最先端の Java 2 Platform, Enterprise Edition (J2EE) 認定サーバーというごちそうが完成します。
    2006/10/10  
 
PHP での SimpleXML 処理
PHP のバージョン 5 にバンドルされた SimpleXML エクステンションについて学びましょう。SimpleXML エクステンションを使うと、PHP ページで XML をクリエリーし、検索し、修正し、そして PHP で使いやすい構文で再公開することができます。
    2006/10/10  
 
Ajax をマスターする: 第 7 回 要求および応答での XML の使用
Brett McLaughlin が、非同期要求を送信するためのデータ・フォーマットとして XML を使う方法を解説します。
    2006/10/10  
 
CDT ベースのエディターを構築する、第 3 回: 基本的な CDT 構文解析
5 回構成の「CDT ベースのエディターを構築する」シリーズ第 3 回目の今回は、Eclipseの CDT (C/C++ Development Tooling) で使われている構文解析プロセスを紹介します。構文解析は CDT で最も重要な機能の 1 つですが、その複雑さから、最も理解されていない側面でもあります。構文解析機能のみを単純に抽出できないのかと尋ねる人が多かったのですが、ここではさらに進めて、さまざまなクラスの機能と、それが CDT 全体の中でどのような意味を持つかについて説明します。
    2006/10/10  
 
Apache Geronimo PetStore デモの分析
実際的な手順に従って、ビジネスに実用できるエンタープライズ・アプリケーションを構築してみませんか。iBATIS PetStore アプリケーションは、Sun Java BluePrints プログラムから作成されたサンプル・アプリケーションです。このアプリケーションは、iBATIS パーシスタンス・フレームワーク、Java のみによる Apache Derby データベース、そして Java EE (Java Platform, Enterprise Edition) の機能を使用して単純なクロスプラットフォーム・エンタープライズ・アプリケーションを開発する方法を教えてくれます。この記事では、iBATIS、Derby、Apache Geronimo の機能を活用して柔軟かつ実用的な PetStore アプリケーションの実装を作成する際に参考にできるヒントと技法を紹介します。
    2006/10/03  
 
オープン・ソース・ソフトウェアによる協調 Web サイトの設計、開発、デプロイメント 第 7 回: XHTML でテーマ設定するためのコンテンツを構成する
Drupal によるコンテンツを構成する重要な方法をはじめとして、チームが Web サイトを開発する手法を見ていきます。
    2006/10/03  
 
OpenSSL API によるセキュア・プログラミング 第 3 回: セキュアなサービスを提供する
セキュアなサーバー・アプリケーションがなければ、セキュアなクライアント・アプリケーションが必要になることもありません。OpenSSL では、セキュアなサーバー・アプリケーションを作成できます。文書の上では手ごわそうに見えますが、実際は難しいことではありません。この 3 回シリーズの第 1 回で説明したコンセプトに基づいて、セキュアなサーバー・アプリケーションを構築する方法を学んでください。
    2006/09/27  
 
RSS と Atom を使用したニュース・シンジケーションの実装
RSS と Atom テクノロジーの出現は、ニュース・シンジケーションに明るい新時代をもたらしました。とはいえ、Web サイト管理者が毎日手作業でニュースを公開し、メール購読者を管理するには時間がかかります。この記事では、RSS と Atom シンジケーション・フォーマットを使って、一般的なニュース公開アーキテクチャーを実装し、処理を簡単にして人的な誤りを最小限にする方法について説明します。
    2006/09/26  
 
PHP V5 マイグレーション・ガイド
PHP V5 の新しい言語機能を使用すると、コードの保守容易性と安定性を大幅に向上させることができます。このような新機能を利用しながら、PHP V4 で開発したコードを V5 に移行する方法について学びます。
    2006/09/26  
 
Eclipse での JFace データ・バインディングを理解する、第 1 回: データ・バインディングの利点と欠点
Java の GUI (graphical user interface) アプリケーションを開発する際には、ドメイン・オブジェクトと GUI コンポーネントとの間での単純なデータの出し入れのために、開発時間の大部分が費やされてしまいます。最近では、このデータ同期プロセスを自動化するために、いくつかのデータ・バインディング・フレームワークが登場してきました。この記事では、データ・バインディング・フレームワークが何をするのかを説明し、一般的な Java GUI データ・バインディング・フレームワークをいくつか紹介し、そしてデータ・バインディングを使うことの利点と欠点について解説します。
    2006/09/26  
 
IBM WebSphere 開発者向け技術ジャーナル: オープン・ソース・レポーティング・ツールとポータル・アナリティクスとの併用
「ポータル・アナリティクス」とは、ポータルがどのように使用されているかを理解するのに役立つプロセスのことです。この記事では、WebSphere Portal V5.1x および WebSphere Portal V6 での計測によって提供されたデータに基づいて、レポートとアナリティクス情報を入手する方法を説明します。
    2006/09/20  
 
CDTベースのエディターを構築する、第2回: CDTの中でテキストを表示
「CDT ベースのエディターを構築する」シリーズ第2回の今回は、Eclipse CDT (C/C++ Development Tooling) でのテキスト表示について紹介します。テキスト表示は、CDT にとって重要な利点です。明確に色分けされた表示によって、コードの読み取りやナビゲートが容易になります。
    2006/09/19  
 
仕様を知る: WS-ResourceTransfer 1.0 の概要
WS-ResourceTransfer 1.0 の最初のドラフト仕様 (WS-RT) は、リソース全体に影響を与えることなく単一リソース内の XML コード・フラグメントをアドレス指定できるようにすることで特定の操作を拡張する、オープン・スタンダードとして提案されています。ここでは、仕様の概要、仕様が継承している機能について説明し、フラグメントの定義については触れずに、WS-RT で採用された 3 つの式の方言を見ていきます。
    2006/09/19  
 
実用的なGroovy: Groovy を使って不要なコードを除去する
Groovy の簡潔な構文のおかげで、開発者はコードのコンパイルに必要でありながらプログラムが本当に成し遂げようとしていることの表現には役に立たない典型的な Java&trade; の構成から解放されます。「実用的な Groovy 」シリーズの再開にあたって今回は、Groovy 開発者にしてゲスト・コラムニストである J.Scott Hickey が、同じ内容の普通の Java コードと比較しながら、この刺激的な言語 Groovy の利用によって些細なことにとらわれずにコーディングの重要な側面に集中できる理由について解説します。
    2006/09/19  
 
オープン・ソース・ソフトウェアによる協調 Web サイトの設計、開発、デプロイメント 第 6 回: Drupal でカスタム・モジュールを作成する
この連載では、IBM Internet Technology Group が無料で入手可能な一連のソフトウェアを使って、閉鎖的コミュニティーの Web サイトを設計、開発、およびデプロイメントします。この記事では引き続きサンプル・プロセスを検討し、アナウンスメント用カスタム Drupal モジュールの作成について説明します。
    2006/09/12  
 
Eclipse GMF を 15 分で学ぶ
この記事では、GMF (Graphical Modeling Framework) プロジェクトを紹介し、単純な EMF (Eclipse Modeling Framework) モデルの開発方法について説明します。そしてこのモデルを、GMF のツールを使って本格的なグラフィカル・エディターに変換します。
    2006/09/12  
 
CDT ベースのエディターを構築する、第 1 回: C/C++ Development Tooling モデル
Eclipse の CDT (C/C++ Development Tooling) プロジェクトは、Eclipse のダウンロードとして利用できるものの中で最も人気のあるものの 1 つです。この、5 回シリーズの「CDT ベースのエディターを構築する」は、CDT エディターの動作を解説します。第 1 回の今回は、CDT が行う操作の対象となる、データ構造について紹介します。
    2006/09/12  
 
エラー: UNIX プログラムでの errno
UNIX の標準エラー・レポート機構、errno グローバル変数について、詳しく学びましょう。また、関連するグローバル変数 (sys_nerr や sys_errlist) や、エラーをユーザーに知らせるために役立つ標準関数についても学びます。
    2006/09/05  
 
商用に XMLBean を使い、XML と Java を融合する
SOA (Service-Oriented Architecture) と XML、そして XMLBean が現実のビジネス問題に対応する上で重要な役割を果たすことを、娯楽業界のケース・スタディーを通して学びましょう。この記事の目的はコードを学ぶことではありません。XML が必要となるすべての状況において、なぜ、どのように XMLBean を利用できるのかを学ぶことが目的です。
    2006/09/05  
 
オープンソースのロボット・ツールキット
ロボットを作るためには、組み込みのファームウェアやハードウェア設計、センサーの選択、コントロール・システムの設計、そして機械設計など、様々な分野でのスキルが必要です。しかしシミュレーション環境を利用すれば、開発に高いコスト (そして時間) をかけなくても、テストや測定、ロボット・アルゴリズムの視覚化などのための仮想的な場を作ることができます。この記事では、Linux 用のオープンソースのロボット技術ツールキットをいくつか紹介し、それらの機能を実際に使ってみながら、皆さんが最適なものを選ぶ際の参考にしたいと思います。
    2006/09/05  
 
オープン・ソース・ソフトウェアによる協調 Web サイトの設計、開発、デプロイメント第 5 回: Drupal 入門
。この記事では、Web 開発で用いる Drupal プログラミング・モデルを紹介し、さまざまなタイプのコンテンツ、モジュールを使用した新しい機能の開発、これらのモジュールを使用可能にするフックのインプリメンテーション、さらにサイトの URL 設計について説明します。
    2006/08/29  
 
プラグイン・サポートを使用して、Geronimo でクリック 1 つでアップグレードを実現
Apache Geronimo 1.1 リリースでもっとも期待されていた新機能のうちの 1 つが、プラグインのインストールおよび作成機能です。この記事では、Geronimo プラグインを紹介し、プラグインを見つける方法とインストールする方法、さらに独自のプラグインを作成する方法を説明します。
    2006/08/22  
 
Apache Derby を使用した開発 ― 3 連単を当てる: 第 6 回 Apache Derby を使用したデータベース開発
データベース・スキーマの作成、テーブルへのデータ入力の他、選択的にデータを変更できるというのも、データベース開発者に必要とされる最も重要なスキルです。この記事では、既存のテーブル内のデータを選択的に削除したり更新する方法、そして既存のテーブルの構造を変更する方法を説明します。
    2006/08/15  
 
ユニット・テストを使用して、あらゆるレベルで PHP コードをチェックする
テスト主導型の開発とユニット・テストは、変更やリファクタリングを行った後でもコードが期待通りに動作することを確認するための最新の方法です。モジュール、データベース、そしてユーザー・インターフェース (UI) レベルで PHP コードのユニット・テストを行う方法を覚えてください。
    2006/08/15  
 
Apache Geronimo EJB トランザクションのオプションを比較検討する、第 3 回: まとめ
この記事で、Apache Geronimo アプリケーション・サーバーでのコンテナー管理 EJB トランザクションと Bean 管理 EJB トランザクション両方の特徴、そしてその他のインプリメンテーション・オプション、構成オプションを把握してください。
    2006/08/15  
 
仕様を知る: SML が複雑な IT システムをモデル化
SML (Service Modeling Language ) 仕様について知りましょう。SML は、モデリング言語を定義するオープン・スタンダードとして提案されており、一連の構成体を備えています。この記事では、SML 仕様を簡単に調べることにします。
    2006/08/15  
 
JSTL の SQL アクションを使った簡単なデータベース・クエリー
この記事では、著者の Meenakshi G. Khanna が、単純な JSTL 1.1 SQL タグと Tomcat 5.5、そして Apache Derby データベースを使って、データベース・クエリーを容易に行う方法について解説します。
    2006/08/10  
 
DB2 9 Express-C for Windows クイックインストール
このドキュメントではDB2 9 Express-C for Windows(以下DB2 Express-C)をインストールする方法をご紹介します。
    2006/08/10  
 
GNU Linear Programming Kit 第 1 回: 線形最適化の紹介
複数の制約がある数値問題を解決する上で、GNU Linear Programming Kit は強力で実績のあるツールとなります。この記事では、glpsol クライアント・ユーティリティーである GLPK、そして、架空の玩具製造会社、Giapetto's Woodcarving, Inc. の運用最適化の問題を解決する GNU MathProg 言語について紹介します。
    2006/08/08  
 
セブン・ミニッツ: AIDE を機能強化する
アップデートされた AIDE ツールキット (Autonomic Integrated Development Environment toolkit) が提供する新機能について調べましょう。また developerWorks のフォーラムに立ち寄り、PMAC (Policy Management for Autonomic Computing) 技術を使う上での必要な情報を得ましょう。
    2006/08/08  
 
AppFuse を使用する 7 つの簡単な理由
Spring、Hibernate、あるいは MySQL などの Java プラットフォームを対象としたオープン・ソース・ツールを使い始めるのは難しい場合があります。オープン・ソース・プロジェクトの統合につきものの悩みの種を取り除いてくれるのが、AppFuse です。
    2006/08/08  
 
Eclipse と JET を使って、より多くの、より良いコードを作成する
(成果物を生み出す) ベスト・プラクティスを体系化したテンプレートを作成できるという能力は強力です。こうした能力を利用すれば、大きな時間節約を実現でき、また退屈なコーディング作業を削減することができます。この記事では、コード生成フレームワークであり Eclipse 技術プロジェクトの 1 つでもある、JET について紹介します。
    2006/08/08  
 
PHP データベースに共通の 5 つの問題
この記事では、データベースの設計や、データベースにアクセスする PHP コードで起こりがちな 5 つの問題、そして問題が見つかった場合の解決方法について説明します。
    2006/08/01  
 
JMX で Apache Geronimo を管理する
Java コミュニティーでは、システム、アプリケーション、そしてリソース管理の標準として、JMX (Java Management Extension) 仕様およびフレームワークを受け入れています。この記事を読んで、JMX を使って Geronimo プラットフォームを管理する方法を理解してください。
    2006/08/01  
 
Eclipse ナビゲーション・ファイルの DITA ナビゲーション・ファイルへの変換
2005 年 8 月、OASIS DITA Toolkit 1.1 に DITA ナビゲーション・ファイルを統合する新しい方法が導入されました。この記事のダウンロード・アーカイブに含まれる XSLT スタイルシートは、mapref 機能を利用して前回の記事のスタイルシートにその他の拡張機能を提供するように更新されています。
    2006/08/01  
 
Apache Geronimo EJB トランザクションのオプションを比較検討する、第 1 回: コンテナー管理トランザクション
全 3 回のこのシリーズで、Apache Geronimo での EJB (Enterprise Java Beans) コンテナー管理トランザクションと Bean 管理トランザクションの両方について学んでください。第 1 回では、この 2 つのタイプのトランザクションの違い、そしてコンテナー管理トランザクションでは、どのようにしてトランザクション・ロジックと管理の複雑さをなくし、エンタープライズ Bean のビジネス・ロジックに専念できるようにしているかがわかります。また、コンテナー管理トランザクションを Geronimo アプリケーション・サーバーに実装する方法、さらに Geronimo、OpenEJB、XDoclet を使って、やっかいな EJB コーディングから逃れる方法についても学びます。
    2006/07/25  
 
Linux ラップトップのためのノックによるコマンド
コンピューターをたたくと意味のある反応が返ってくる - そんなことが初めて可能になります!この記事では新しい展開、つまりノック・コードと、特定のノック・コードが検出されたときにコマンドを実行する単純なプログラムを紹介します。
    2006/07/25  
 
5 つの共通 PHP デザイン・パターン
デザイン・パターンは、Java 設計者たちだけのものである - 今までは、このように信じさせられてきたのではないでしょうか。実のところ、デザイン・パターンは誰にとっても役立つものです。では、これらのツールが設計のエリート専用のものでないとしたら、どんなもので、なぜ PHP アプリケーションに役立つのでしょうか。そんな疑問に、この記事でお答えしましょう。
    2006/07/18  
 
SVG と XML による実務グラフ作成
XML、PHP、そして SVG (Scalable Vector Graphics) 標準を使ってビジネス・グラフを作成する方法を学びましょう。SVG 標準は、グラフィックスを、無限大のベクトル・スケーラビリティーとビジュアル・効果があり、さらにはスクリプトによる対話性まであるものにしてくれます。
    2006/07/18  
 
基本に戻る: Apache Derby の ij ツール をスクリプト記述する
最近では誰もが Web アプリケーションをビルドしています。でも、ほんの少しのデータだけが必要な場合はどうでしょう?Derby のメイン・コマンドラインツールである ij は、まさにそのために設計されたものです。この記事では、ij の高度なスクリプト機能の使い方を説明します。
    2006/07/18  
 
Apache Derby を使用した開発 -- 3連単を当てる: Apache Derby によるデータベース開発第 5 回
このシリーズの前回の記事を元に、より強力な SELECT 文を開発します。クエリーで選択された複数のデータ行を変更するための ORDER BY 節や DISTINCT キーワードの使い方や、クエリーの中に基本的な算術演算子を含める方法を学びましょう。
    2006/07/11  
 
Python Web フレームワーク、第 2 回: TurboGears と Python を使って Web 開発を行う
TurboGears は、Python をベースにしたもう 1 つのオープン・ソースで、MVC スタイルの Web アプリケーション・フレームワークです。この記事では、TurboGears を使った Web ベースのショッピング・アプリケーションの作成方法を説明し、最後に Turbogears と Django を比較します。
    2006/07/11  
 
Perl、ImageMagick、MPlayer を使ってモザイク・ムービーを作成する
Perl、ImageMagick、MPlayer を使って、他のムービーのフレームからなるモザイク・ムービーを作成しましょう。特別なプロモーション・ビデオやホーム・ビデオのイベントのために、独自のモザイク・タイプのムービーを分解、合成、そしてエンコードします。
    2006/07/11  
 
Eclipse で Subversion を使う
Eclipse には、変更管理機能が利用できるように最初から CVS (Concurrent Versions System) が堅固に統合されています。Subversion リポジトリーを使用するプロジェクトで Eclipse を使用する方法を学びましょう。
    2006/07/11  
 
Apache Geronimo および POJO を使用して SOA フレームワークを構築する
Apache Geronimo フレームワークは、高度なアプリケーションおよびサービスを構築するために、POJO 開発用の強固なインフラストラクチャーを提供します。POJO の戦術を使用してサービス指向の開発を成功させるために使用できる Geronimo フレームワークのコンポーネントと技法の一部を探索しましょう。
    2006/07/11  
 
Git を使ってソース・コードを管理する
Git は、Linus Torvalds が開発した、Linux カーネルの開発を管理する上で役立つオープン・ソースのリビジョン・コントロール・ソフトウェアです。ダウンロードして、独自のカーネル・ハッキング、または自分自身のソフトウェア開発プロジェクトのために使うことができます。
    2006/07/06  
 
Ajax RSS リーダー
Ajax (Asynchronous JavaScript and XML) RSS (Really Simple Syndication) リーダーと、RSS フィードで記事を読むために Web サイトに設置する Web コンポーネントの構築方法を学びます。
    2006/07/06  
 
初めての Eclipse RCP アプリケーションを開発する
Eclipse RCP (Rich Client Platform) の目標は、IDE (integrated development environment : 統合開発環境) 以外の広範囲のエンド・ユーザーが使うアプリケーションで Eclipse を使えるようにすることです。Eclipse V3.1 のリリースにより、RCP アプリケーションの作成が容易になりました。このチュートリアルでは、ユーザー独自の RCP アプリケーションの作成について、ステップバイステップで説明します。
    2006/06/27  
 
初めての Eclipse RCP アプリケーションを開発する
Eclipse RCP (Rich Client Platform) の目標は、IDE (Integrated Development Environment : 統合開発環境) 以外の広範囲のエンド・ユーザーが使うアプリケーションで Eclipse を使えるようにすることです。Eclipse V3.1 のリリースにより、RCP アプリケーションの作成が容易になりました。このチュートリアルでは、ユーザー独自の RCP アプリケーションの作成について、ステップバイステップで説明します。
    2006/06/27  
 
Zend Framework を理解する パート 1: 基本
逆説的に言えば、私たちプログラマーはとても怠け者です。 タスクを 5 分間ではなく 30 秒間で完了するようにするためのものを作成するのに、何時間も、あるいは何日間も費やしています。 そのため、このような目的で Zend Framework が作成されても、それほど驚くにはあたりません。 Zend Framework についてまだ聞いたことがなくてもいですって?心配には及びません。 この記事では、Zend Framework を概観し、その一般概念を説明し、この「Zend Framework を理解する」シリーズで学ぶ準備をします。このシリーズでは続いて、新しいオンライン RSS/Atom フィード・リーダーの作成を順を追っていくことによって、その詳細を説明していきます。 この記事ではコーディング・サンプルをあまり示しませんが、このシリーズの次回からは、PHP について精通しておくとよいでしょう。
    2006/06/27  
 
Apache Geronimo、JMSを使いイベントドリブンフレームワーク構築する
リアルタイムで発生する変化やイベントに即座に応答できることは、エンタープライズ・フレームワークにとって重要な要求です。この記事では、リアルタイムの刺激に対してアプリケーションやサービスが効果的に応答できるように、またアーキテクチャーの仮想レイヤーにまたがってイベントを送受信できるようにするための機能として、Apache Geronimoフレームワークの中に具体化されている技術や機構を紹介します。
    2006/06/27  
 
Java開発者のためのAjax: Google Web Toolkitを探る
この記事では、リモートのWeb APIから気象情報をフェッチしてブラウザーに表示する、単純なGWTアプリケーションの作成手順を説明します。その中で、GWTの機能について可能な限り多く取り上げるようにし、また皆さんが突き当たりそうな潜在的な問題についても触れることにします。
    2006/06/27  
 
Graphical Editing Frameworkを使用してEclipseベースのアプリケーションを作成する
この記事では、GEF(Graphical Editing Framework)を使ってEclipseベースのアプリケーションを作成するための最初のステップを説明します。GEFは、Eclipse用の様々なアプリケーションを構築するために使われてきています(ステート図やアクティビティー図、クラス図、AWT用のGUIビルダー、SwingやSWT、プロセス・フロー・エディターなど)。EclipseもGEFも、オープンソースの技術です。また両者は、IBMのWebSphere Studio Workbenchにも含まれています。
    2006/06/27  
 
XForms文書にSchematron制約を自動適用する
W3C(World Wide Web Consortium)は、プレゼンテーション用のXForms標準と、一連のフォーム・データを開発しました。W3C勧告の中に述べられているように、XFormsの目的は「Webのための次世代のフォーム」となることです。
    2006/06/27  
 
PythonとDB2 Express-Cを使ってアプリケーションを開発する
入手方法やインストール、コンフィギュレーションなどを含め、PythonをDB2 Express-Cインスタンスに接続して使い始めるまでに必要なすべての手順を、順を追って説明します。
    2006/06/22  
 
Hamlet をコンパイルする
Rene Pawlitzek は、Java サーブレットを拡張してコンテンツとプレゼンテーションを分離した、Hamlet フレームワークを発展させ続けています。この記事では、新たな改良点、すなわちアプリケーションのパフォーマンスを向上できる Hamlet テンプレートのコンパイル方法を提案します。
    2006/06/20  
 
Eclipse の推奨読み物リスト: dW
Eclipse の開発者と IBM の Eclipse ファンによって開発者向けに作成されたこの読み物リストを使って、Eclipse について学習しましょう。このリストはさまざまなソースから集められたものであり、Eclipse に関する読み物をまとめて探している人を対象としたものです。. Eclipse の新たなユーザーが直面する最大の難関は、正しい情報がどこにあるかを見つけることです。 この記事は、この問題を解決するための小さな一歩になります。
    2006/06/20  
 
Geronimoへの転向、第8回: Apache Geronimoの将来
Apache Geronimoの将来への見通しを知りたいのであれば、このシリーズの今回の記事が役立つはずです。今回は、Geronimoへの転向者が、Geronimoの将来を探ります。つまりGeronimoの開発者達はこのプロジェクトをどこに持って行こうとしているのか、また重要な新機能、改善事項などについて解説します。この記事を読んで頂ければ、皆さんも彼らと共に、Apache Geronimoの次期バージョンの幕開けに参加できるかも知れません。
    2006/06/20  
 
Python Webフレームワーク、第1回: DjangoとPythonを使ってWeb開発
この記事は2回シリーズの第1回として、Djangoを紹介します。Djangoを使うと、高品質で維持管理の容易なデータベース・ドリブンのWebアプリケーションを、数分で作成することができます。
    2006/06/06  
 
Ajaxを利用してPHPを開発する、第2回: 「戻る」「進む」「更新」
Ajax(Asynchronous JavaScript and XML)ドリブンのWebサイトの持つ大きな問題は、「戻る」ボタンがないことです。この「Ajaxを利用してPHPを開発する」シリーズの第1回で作ったAjaxフォト・ギャラリー用の履歴スタックを、JavaScriptを使って作りましょう。
    2006/06/06  
 
何をEclipseにプラグインするか
この記事では、Eclipseプラグインの中に組み込まれた機能、例えばRubyなど他の言語でプログラムできる機能や、OpenLaszloのような環境を使って対話型のマルチメディアを構成できる機能などについて学びます。
    2006/05/30  
 
Apache Derbyを使用した開発 -- 3連単を当てる : 第3回 Apache Derbyによるデータベース開発
自己記述式のSQLコマンド・ファイルの作り方を学びましょう。SQLコマンドと有用なコメントをテキスト・ファイルの中に置くことによって、コマンドを好きなだけ繰り返し実行することができます。この記事では、SQLスクリプト・ファイルの基本的な原理を紹介した後、スクリプト・ファイルを実行するための3つの方法について説明します。
    2006/05/12  
 
Apache Geronimoディストリビューションの最適化
ここでは、listenとアプリケーションサービスの停止/再開方法、必要な各アプリケーションモジュールとWebアプリケーションのアンデプロイ/再デプロイ方法について説明し、Apache Geronimoディストリビューションによるデプロイメントを必須のコアサービスやアプリケーションにまで効率的に利用できるようにします。
    2006/05/12  
 
XMLBeanを使ってApache GeronimoにSOAアプリをデプロイする
皆さんはXMLBeanに興味があるでしょうか。この、高度で使いやすいXML-Javaバインディング技術を利用すると、Java オブジェクトやJavaBeanにアクセスする場合と同じようにXMLファイルにアクセスすることができます。この記事では、XMLBean技術について、特にApache Geronimoで使う方法について学びます。また、XMLBeanによってSOA(service-oriented architecture)開発が単純化、合理化できることも学びます。
    2006/05/09  
 
EclipseのAjax Toolkit FrameworkにAjaxをもたらす2つのツール
IBMは、新しいOpen Ajax Initiativeの開始に貢献しています。その目的は、Eclipse Foundationによる強力なWebプログラミング手法を、より一層使いやすくすることです。この記事では、この新しいツールセットに対して開発者が準備できるように、2つの既存ランタイム・ツールであるDojoとZimbraを紹介します。これらは、ATF(Ajax Toolkit Framework)でサポートされるものです。
    2006/05/09  
 
Linux on POWERにEclipseをインストールし、使用する
この記事では、Eclipseのインストールと使い方の解説として、特にIBM POWERプロセッサー・ベースのシステムで実行するLinuxにEclipseをインストールし、使用する方法を学びます。また、サンプルのJava プログラムとCプログラムを通して、Eclipseを使ってアプリケーションをコンパイルし、実行する方法も学びます。
    2006/05/05  
 
Apache Directory ServerへのJavaオブジェクトの保管 第1回
この2部構成の記事では、ApacheDS (Apache Directory Server) にJava (TM) オブジェクトを保管する手順を詳しく説明します。この第1回目の記事では、Bilal SiddiquiがApacheDSを紹介し、コア・アーキテクチャーの概要を説明します。ApacheDSは主にJavaオブジェクトを保管するLDAPサーバーとして使用されるため、LDAPの概念と用語の概要について説明します。また、JXplorerを使用して属性タイプ、オブジェクト・クラスなどのLDAPスキーマ・コンポーネントを表示する方法、およびデータ・オブジェクトをApacheDSに格納する方法も示します。
    2006/05/02  
 
Apache Directory ServerへのJavaオブジェクトの保管 第2回
ApacheDS (Apache Directory Server) へのJava(TM) オブジェクトの保管手順を説明するこの記事では、第1回目の記事で説明した概念を、Bilal Siddiquiが9つのアプリケーションを例に取って解説していきます。また、ApacheDSを使用したJavaオブジェクトの保管、検索、取得、変更の各手順をすべて紹介した上で、LDAPスキーマ・コンポーネントを使用してこれらの機能をApacheDS内で組み合わせる再使用可能なJavaクラスを最後に説明します。
    2006/05/02  
 
PHPとDHTMLを使用したWeb 2.0アプリケーションの開発 第1回: 自分で試してみよう
2006年の流行語大賞はWeb 2.0で決まりです。この言葉の定義については熱い議論が戦わされていますが、これは先進の動的Webアプリケーションを指す言葉のようです。PHPで開発されることの多いこうしたWebアプリケーションでは、動的HTML (DHTML) を使用してWebページが作成されます。こうして作成されたページでは、ページ間の移動や変更の際にサーバーまで戻って更新処理を行う必要がなくなります。この記事では、PHPとDHTMLを使用したWeb 2.0アプリケーションの開発方法をJack Herringtonがシリーズで説明していきます。
    2006/05/02  
 
Geronimoへの転向: Apache GeronimoのJMS実装: ActiveMQ
Geronimoには、プロジェクトのニーズに応えて作成されたJMS (Java Message Service)の実装であるActiveMQが用意されています。この記事では、ActiveMQの共同創設者James StrachanにActiveMQ、メッセージング、およびメッセージング重視のアプリケーションの未来について話を伺いました。
    2006/04/25  
 
Apache Derbyを使用した開発 -- 3連単を当てる : 第2回 Apache Derbyによるデータベース開発
この記事では、スキーマ、テーブル、列のデータ型などの基本的なデータベースの概念を説明し、構造化照会言語 (Structured Query Language: SQL) について簡単に説明します。データベース開発担当者の役割を中心に見ていきながら、Apache Derbyデータベースにデータを格納する際に使用できる基本的なデータ型を紹介します。
    2006/04/18  
 
洗練されたPerl: Perl新刊ブック・レビュー パート2
今回は、システム管理に関する2冊をご紹介します。Shelley Powers、Jerry Peek、Tim O'Reilly、Mike Loukides著「Unix Power Tools」は、基本的なことをわかりやすく解説したシステム管理の必携書です。Mark Burgess著「Analytical Network and System Administration」は、理論計算機科学と数学の基礎ができている人を対象としたシステム管理の上級書です。
    2006/04/13  
 
Eclipseプラグインの問題点をOSGiで解決する
この記事では、Eclipseバージョン3.2の動的拡張APIを使用して、プラグイン間にバイナリ依存関係を作成することなくプラグインのコードに拡張を記述する方法について紹介します。Open Services Gateway Initiative (OSGi) のサービスAPIと動的APIを使用すれば、この処理だけではなく、その他の処理も可能になります。
    2006/04/11  
 
GNUプロファイラーによるコード処理速度の向上
アプリケーション性能の向上が無駄な作業に終わることはまずありませんが、プログラム実行時にどの部分で最も時間を費やしているのかは、常に明確になっているわけではありません。gprofを使用して、ユーザー空間およびLinux のシステム呼び出しの双方において、性能のボトルネックになっている部分を突き止める方法を説明します。
    2006/04/03  
 
Opensource:LinuxとXdmxを使用した分散型マルチヘッド・サポート
この記事ではXdmxと簡単な構成情報を使用して、1台のデスクトップ・コンピューターと3台のラップトップPCが4つのモニターを共有するコンピューティング環境を設定していきます。また、Chromiumとギガビットのネットワーク速度を利用し、複数のマルチメガピクセル画面に対してリアルタイムの3-D画像を送信する高性能の表示構成を紹介します。
    2006/03/28  
 
Apache Derbyを使用した開発 - 3連単を当てる: 第1回 Apache Derbyによるデータベース開発
Apache Derbyを今すぐ使用してみたいですか? この記事では「Apache Derbyを使用した開発 - 3連単を当てる」と題して、Derbyデータベースをすぐに使用できるよう、Apache Derbyをシリーズで紹介していきます。シリーズ第1回目となるこの記事では、リレーショナル・データベースの基本的な概念を紹介し、その概念がDerbyデータベースとどう関係するかに焦点を当てて説明します。
    2006/03/28  
 
インタビュー: Eric Raymond基本に戻る
「The Cathedral and the Bazaar」の著者であり、今話題のHalloween Documentsを発表した人でもあるEric S. Raymondが、彼の最近の計画について語り、なぜUNIX開発者がIDEを好まないのかについて光を当てます。
    2006/03/26  
 
Eclipseの埋め込みRCP(embedded Rich Client Platform)を探る
この記事ではeRCP(embedded Rich Client Platform)を紹介します。また、eRCPを構成する様々なコンポーネントについて学び、それらをアプリケーションの中でどのように使うかを解説します。
    2006/03/21  
 
境界を越える: 継続とWeb開発、そしてJavaプログラミング
『境界を越える』シリーズは、Javaではない言語が大きな問題をどのように解決しているかを学び、そうした解決方法が今日のJava開発者にとって何を意味するのかを考えます。今回の記事では、SmalltalkのSeasideのようなフレームワークの背景技術である、継続(continuation)を探ります。
    2006/03/21  
 
洗練されたPerl: Perl新刊ブック・レビュー パート1
今回は、Perl の解説書としてお薦めしたい優れた新刊を 2 冊ご紹介します。1 冊は、ビギナー向けに書かれた Randal Schwartz 著「Randal Schwartz's Perls of Wisdom」、そしてもう 1 冊は上級者向けの Mark Jason Dominus 著「Higher-Order Perl」です。
    2006/03/15  
 
DB2 UDB Express-C V8.2 for Windowsクイックインストール
このドキュメントではDB2 UDB Express-C V8.2 for Windows(以下DB2 Express-C)をインストールする方法をご紹介します。
    2006/03/14  
 
DB2 UDB Express-C V8.2 for Linuxクイックインストール
このドキュメントではDB2 UDB Express-C V8.2 for Linux(以下DB2 Express-C)をインストールする方法をご紹介します。
    2006/03/14  
 
ECF(Eclipse Communication Framework)入門
ECF(Eclipse Communication Framework)は新しいEclipseプロジェクトであり、Eclipseプラットフォーム上でコミュニケーション・ベース・アプリケーションを作成するためのオープンソース・フレームワークです。ECFと、その基本機能、将来の方向性について学びましょう。
    2006/03/14  
 
Eclipseのワークベンチ・タブをドラッグ・アンド・ドロップする
EclipseのEditorタブとViewタブの、ドラッグ・アンド・ドロップ振る舞いをプログラム的にカスタム化する方法を学びましょう。この記事を読むための前提として、基本的なSWTドラッグ・アンド・ドロップに慣れている必要があります。
    2006/03/07  
 
グリッド・システム「Platform LSF」へのオートノミック・コンピューティングの適用(3):自己修復
前回はLSFに対するオートノミックの問題判別テクノロジーの適用に関し、著者らが作成したログ変換アダプター、相関エンジン、シンプトンDBについて紹介しました。今回はオートノミック・コンピューティング・ツールキット R3のAME(Autonomic Management Engine)を用いてPlatform LSF 6.1に自己修復機能を実装するお話をします。
    2006/03/03  
 
DB2とオープン・ソース: Google Maps API、DB2/Informix、LinuxのPHPで地図の上を歩く
Google Maps APIをDB2、Informix、PHP、JavaScript、XMLとともに使用することにより、個人のデータを取り込んだ、使いやすい地図を作成することができます。自分の住んでいる地域の郵便番号を指定して、その地域のデータを見てみましょう。地図形式の変更やサイドバーの作成をしたり、カスタム・アイコンやイベント・ハンドラーを使用してみましょう。
    2006/03/02  
 
DB2とオープン・ソースを使用して地図に自分の街を追加してみよう!
Google Maps API を DB2、Informix、PHP、JavaScript、および XML と一緒に使用すると、独自のデータを取り込んで、使いやすい地図を作成できます。自分の郵便番号に画面をズームすると、地域固有のデータが表示されます。カスタム・アイコンを使用し、地図の種類を変え、サイドバーを作成し、イベント処理機能を使用してみましょう。
    2006/03/02  
 
コード品質を追求する: FITで解決する
この記事では、コード品質の完璧主義者であるAndrew Gloverが、FITとJUnitの良いところを組み合わせてチームワークを改善し、効果的なエンド・ツー・エンド・テストを行うための方法を解説します。
    2006/02/28  
 
Shaleのベールを剥ぐ:ShaleはStrutsではない
Shaleは、まだ自動インストーラーや洗練された管理インターフェースも備えておらず、きちんと梱包されているわけでもなく、あまりドキュメント化されてもおらず、よくテストされたわけでもありません。Shaleがどんなものかを知りましょう。
    2006/02/28  
 
Apache Geronimoでフェールセーフなトランザクショナル・アプリ構築する
この記事では、IBM Advanced Technology Solutionsチームが、Apache Geronimoでのトランザクション・サポートの概要を説明し、こうした機能を利用することでフェールセーフなトランザクショナル・アプリケーションが構築できることを示します。
    2006/02/21  
 
グリッド・システム「Platform LSF」へのオートノミック・コンピューティングの適用(2):問題判別
今回からいよいよグリッド・システムに対してオートノミック技術を具体的に適用していきます。オートノミック・コンピューティングの問題判別機能を適用する、というテーマで著者らが作成した3つの問題判別機能用コンポーネントについてご紹介します。これらのコンポーネントを利用することで、Platform LSFのログがオートノミック・コンピューティング・ツールキット R3 のログトレース・アナライザー上で効果的に解析できるようになります。なお、ここで使用するPlatform LSFはバージョン6.1が前提となります。
    2006/02/17  
 
Apache Geronimoでの依存性注入 第2回: 新たな時代
第1回に続いて、Apache GeronimoにおけるDI(dependency injection: 依存性注入)の動作を学びましょう。今回は、Geronimoアーキテクチャーの概要やDIがGeronimoに与える影響、GeronimoでのDI機能によって、コードの書き方がどのように変わるのか、などに関して解説します。
    2006/02/14  
 
Apache Derbyを使用した開発 -3連単を当てる:Apache Derbyの紹介
ほとんどすべてのアプリケーション開発者は、ある時点でデータを保存する必要に迫られます。この回では、Apache Derbyを紹介します。Apache Derbyは、オープン・ソースの、フットプリントの小さい、標準ベースのJavaデータベース・システムです。他のデータベース・システムとの比較を試み、ダウンロードとインストールについて論じます。
    2006/02/14  
 
Eclipse環境を管理する
Eclipseは成長し続けています。これは、管理すべきプロジェクトやプラグインの数が増え続けていることを意味します。この記事では、Eclipse環境を管理するためのベスト・プラクティスの幾つかを紹介します。
    2006/02/14  
 
グリッド・システム「Platform LSF」へのオートノミック・コンピューティングの適用(1):グリッドとオートノミック融合の意義
本稿ではグリッド・コンピューティングとオートノミック・コンピューティングを融合させる試みについてご紹介します。今回から三回に渡りPlatform Computing社のグリッド製品Platform LSF 6.1にオートノミック・テクノロジーの問題判別(Problem Determination:PD)と自己修復機能を適用していきます。第一回目の今回はPlatform LSFの紹介、およびLSFにオートノミックを適用する意義についてお話しします。
    2006/02/10  
 
Apache Geronimoでの依存性注入 第1回: J2EEアプリケーションでの分離を新しい角度から見る
この記事は、Apache GeronimoにおけるDI(dependency injection: 依存性注入)の動作を学ぶ2回シリーズの第1回です。ここでは最も軽量なDIコンテナーであるPicoContainerを使う例を通して、DIの理論的な基礎を、複雑な詳細を排除しながら解説して行きます。
    2006/02/07  
 
PHPでダイナミックに
PHP V5の新しいオブジェクト指向プログラミング機能は、この言語の機能性レベルを大幅に向上させています。PHP V5の動的機能を利用して、皆さんの必要に応える柔軟なオブジェクトの作り方を学びましょう。
    2006/02/07  
 
PerlとImageMagickを使ってモザイク画像を作る
単純なPerlスクリプトを使って、画像操作やテキスト作成、モザイク画像の合成などを自動化しましょう。ここではImageMagickやGD、The Gimpなどの使い方を学びながら、静止表示や動的コンテンツに適した、独自のモザイク画像を作ります。また、ImageMagickやオープンソースのグラフィカル編集ツールの機能についても解説します。
    2006/01/24  
 
Javaアプリから動的にPDFファイルを生成する
アプリケーションでPDF文書を動的に作成する必要がある場合、iTextライブラリーが必要です。オープンソースのiTextライブラリーを使うと、PDFは簡単に作成できます。この記事ではiTextを紹介し、Java 技術アプリケーションからiTextを使い、PDF文書を生成する方法を順に説明します。
    2006/01/24  
 
DB2をApache Geronimoに統合する
Apache Geronimoは、J2EE(Java 2 Platform, Enterprise Edition)アプリケーションを配置するための最新の選択肢です。IBM DB2は成熟したリレーショナル・データベース製品で、J2EE環境に最適です。IBMのソフトウェア・エンジニア、Emilio Zegarraが、これら2つの製品をJ2EEアプリケーションに統合する方法を詳細に説明します。
    2006/01/24  
 
Apache Geronimoを最初からビルドする
たくさんの新人開発者やベテラン開発者が成長を続けるApache Geronimoの流れに加わろうとしています。Geronimoをビルドする能力は、変更やフルカスタム・モジュールを組み込もうとする開発者にとって、ますます重要になっています。ここでは、Apache Geronimoのソース・コードを最初からビルドする方法を正確に理解できるよう、段階を追って説明します。
    2006/01/17  
 
Geronimoへの転向: Geronimoについて、そしてApacheライセンスの苦闘と収穫
ここではNealが、アプリケーションを構築する度に同じものを開発し直す苦労から解放するために、新たなコード・フレームワークに取り組む開発者達の努力を語ります。また、そうした努力と、Apache Geronimoプロジェクトとライセンスとが、どのように関係してくるかについても説明します。
    2006/01/17  
 
カスタムSWTコンポーネントでのMVCの実装
Eclipse SWT(Standard Wideget Toolkit)は、カスタムメイドのウィジェットを実装するための豊富なAPIセットを提供します。この記事では、MVC(Model-View-Controller)アーキテクチャーを概説し、構造化ビューアーの形での現在のMVC実装を説明し、カスタムSWTウィジェットを使用する実装を示します
    2006/01/11  
 
Apache Geronimoでログイン・システムとレジストリー・システムを構築する 第2回: JSPを使ってレジストリー・システムを構築する
この2回のシリーズでは、J2EE (Java 2 Platform, Enterprise Edition)の宣言的セキュリティー(declarative security)と、Geronimoに組み込みのDerbyデータベースの使い方を解説します。この第2回の記事では、JSP(JavaServer Pages)を使って新しいユーザーを登録し、第1回で示したインフラストラクチャー設定を使ってログインできるようにする方法を中心に解説します。
    2006/01/10  
 
Apache GeronimoにJ2EEアプリケーションをデプロイする
Apache GeronimoにJSP (Java Server Pages)、サーブレット、およびさまざまなEJB (Enterprise JavaBeans)をデプロイする方法を学びます。この記事では、他のJ2EE (Java 2 Platform, Enterprise Edition)コンテナーとは異なるApache Geronimoに必要なデプロイメント手順を説明します。
    2006/01/03  
 
Windows用Linuxスクリーンセーバー
Microsoft Windowsの標準的なインストール手順でインストールできて、Windowsの標準的なスクリーンセーバーとして動作するLinux LiveCDを構成し、パッケージにしてみます。この記事では、オープン・ソース・ソフトウェアについての最大の関心事に答えて、Linuxが、そう、Windowsの環境下で走ることを実証します。
    2005/12/20  
 
Apache Geronimoでログイン・システムとレジストリー・システムを構築する 第1回: J2EEの宣言的セキュリティーとGeronimoに組み込みのDerbyデータベースを使う
この2回のシリーズでは、J2EE の宣言的セキュリティー(declarative security)と、Geronimoに組み込みのDerbyデータベースの使い方を解説します。この記事ではJ2EEセキュリティーの設定と、Geronimo組み込みのDerbyデータベースを使ってユーザーを認証する方法を中心に解説します。
    2005/12/09  
 
統合グリッドの構築2:グリッド・ユーザー環境におけるポートレット・インターフェース
今回はグリッド・インターフェースを取り上げ、なぜグリッド・インターフェースがエンドツーエンド・プロセスにとって重要なのか、また、NCMIR のグリッド・プロジェクトにおいて、ポートレットの使用がどのようにしてよりリッチなグリッド・ユーザー環境をもたらしたのかを解説します。
    2005/11/29  
 
オープン・ソース・ライセンシング、第2回
オープン・ソース・ライセンスは、オープン・ソース・コード普及のための法的根拠となっています。この記事では、最も人気のある2つの形式、アカデミック・ライセンスと相互(reciprocal)ライセンスについて解説し、それぞれの条件を受け入れたライセンシーの義務について述べます。
    2005/11/15  
 
ビューのリンクでEclipseアプリケーションを豊かに
この記事では、Eclipseでのビューを、他のビューの状態と協調、応答動作させるための方法を説明します。また、ある場合には、他の方法よりもビューをリンクする方法の方が良いことについても説明します。
    2005/11/15  
 
Geronimoアプリケーション・サーバーでのトランザクション
この記事では、J2EEトランザクションに関する重要事項について、またApache Geronimoアプリケーション・サーバーでのトランザクションの使い方について、Java開発者であるNeal Sancheが解説します。
    2005/10/11  
 
オープン・ソース・ライセンシング、第1回:目的
「オープン・ソース・ライセンス」という用語は、ソフトウェアに固有の著作権を広く、公平に、可能な限り少ない制限で許諾する多数の取り決めを指しています。2回シリーズの第1回にあたるこの記事では、著作権についての見解を述べ、オープン・ソース・ライセンスの目的を説明します。
    2005/10/04  
 
IBM WebSphere Developer Technical Journal: Gluecodeとは何か? なぜGluecodeなのか?
この記事ではGluecodeを紹介します。Gluecodeを構成するコンポーネントを説明し、またGluecodeとIBM WebSphere Application Serverとの関係について解説します。
    2005/09/21  
 
.NETアプリをLinux対応にするMono
この記事では、Monoをシステムにインストールする手順と、LinuxとMicrosoft(R) Windows(R)の両方で動作する、Monoによってコンパイルされた初めてのサンプルC#アプリケーションを開発する手順を説明します。
    2005/09/19  
 
モデル・ドリブンXMLフォーム生成、第2回:Webサービス用のフォームの生成
XML Forms Generatorを詳しく見てみましょう。この2回シリーズの第2回では、XML Forms Generatorを使用してWeb Services Description Language(WSDL)ドキュメントからフォームを生成する方法を説明します。
    2005/08/25  
 
Eclipseで、未解決のプラグイン依存関係を見つける
未解決のプラグイン依存関係を見つけるのは大変な作業であり、時間もかかります。そのプラグインを手動で的確に見つけようとすると、予想以上に時間と手間がかかるものです。このプラグイン・チェックを自動化する方法がないかと思っている人は、ぜひこの先を読んでください。
    2005/08/23  
 
Eclipse Voice Tools Project
Eclipse Voice Tools Projectは、音声認識業界の企業と個人が協力して、標準準拠でオープン・ソースな音声開発ツールの共通セットを作成しようという新しい取り組みです。この記事では、Voice Tools Project環境のセットアップとカスタマイズの方法を説明します。新しい機能を追加するプロセスも説明します。
    2005/08/23  
 
モデル・ドリブンXMLフォーム生成、第1回:初めてのXML Forms Generator
XML Forms Generatorでは、Eclipse Modeling Frameworkのモデル・ドリブン開発の概念を利用して、XMLインスタンス・データからフォームを生成することができます。シリーズの第2回では、このソリューションによってWebサービス記述言語ドキュメントからフォームを生成する方法を解説します。
    2005/08/19  
 
CGIプログラマーのためのCherryPy
Python用のCherryPyアプリケーション・フレームワークを利用すると、平凡なCGI(Common Gateway Interface)よりも容易にWebアプリケーションを書くことができます。この記事では、CherryPyでWebアプリケーションを書くために必要なもの全てを紹介します。
    2005/08/16  
 
Geronimoのデプロイメント・アーキテクチャーを理解する
この記事では、Geronimo開発者であるSrinath Pereraが、Geronimoがこうした目標をどのように実現しているかを解説し、また、Geronimoユーザーから見えるものとGeronimoサーバー・アーキテクチャーの下にある概念とを結びつけます。
    2005/08/09  
 
Geronimoにサードパーティー・コンポーネントを統合する
この記事では、Apache Geronimoのチーム・メンバーでありコミッターでもあるJeff Genenderが、この機能について解説します。ここではOpenSymphonyのQuartzスケジューラーをGeronimoの中に統合するGBeanを使いながら、サードパーティーのオープンソース・プロジェクトを構築し、コンフィギュレーションを行います。
    2005/08/02  
 
Linux LiveCDを使用してシステムのセキュリティーを評価する
時間のかかるインストールや構成作業なしにLinux システムのセキュリティー脆弱性を評価できたら、と思いませんか?LiveCDのマジックを通じてそれを可能にする4つのパッケージ、すなわち、Auditor、Whoppix、Knoppix-STD、およびPHLAKを紹介します。
    2005/07/27  
 
セキュアなエンタープライズ・インフラをGeronimoで構築する
この記事では、IBM Advanced Technology Solutionsチームが、Apache Geronimoアプリケーション・サーバーの持つセキュリティー機能の全体的な概要と、こうした機能を利用してエンタープライズ・アプリケーションをセキュアにする方法について解説します。
    2005/07/26  
 
モデル・ドリブン複合ドキュメント開発
Eclipse Modeling Frameworkと基本のECoreモデルを使用して関数スキーマとそれらの接続を表現するオープン・スタンダード・ベースのアプローチによって、名前空間が混在するドキュメントを作成するための柔軟なツールを作成しましょう。
    2005/07/22  
 
なぜFreeBSDか
FreeBSDオペレーティング・システムは、フリー・オペレーティング・システムの未知の巨人です。386BSDプロジェクトから始まり、Intelチップとそのクローンを主な用途とした、きわめて高速なUNIXライクなオペレーティング・システムです。
    2005/07/19  
 
Linuxでの高可用性ミドルウェア、第5回:IBM DB2 Universal Database
この記事では、Linux High Availability solution for IBM DB2 Universal Databaseのセットアップと実装について解説します。これは、堅牢なオンデマンド・ビジネス・アプリケーションを構築するための柔軟で費用効果の高いデータベース・プラットフォームを提供するデータベース管理システムです。
    2005/07/14  
 
Apache GeronimoにWebサービスをデプロイする
この記事では、Javaの専門家である Kunal Mittalが、GeronimoのWebサービス機能の紹介として、標準的なJ2EE Webサービス・コードをGeronimoで書き、開発する方法を解説します。
    2005/06/28  
 
XMLデータの管理:eXist - オープン・ソースのネイティブXMLデータベース
XMLの人気が高まるにつれて、管理しなければならないXMLドキュメントが大量にあることに気づくユーザーが増えています。この明らかなニーズに応えるために、ネイティブXMLデータベースが開発されています。この記事では、そのようなデータベースの1つであるオープン・ソースのeXistについて解説します。
    2005/06/27  
 
Ruby on RailsによるWebアプリケーションの高速開発
この記事では、統合化されたすばらしいツール・セットが含まれており、あらゆる局面に対応できるRuby on Railsをご紹介しています。
    2005/06/24  
 
Geronimoアプリケーション・サーバーにデータベースを接続する3つの方法
この記事に含まれるアプリケーション例とダウンロード可能なEclipse IDEプロジェクトを使って、アプリケーションを接続する方法や、GeronimoでデプロイされたJDBCコネクション・プールを通して通信する方法を学んでください。
    2005/06/21  
 
Eclipseでヘルプを集中化する
この記事では、ヘルプの目次を持つEclipseプラグインの作り方や、ヘルプ・ファイルを外部化するためのInfocenterの使い方、また、集中化されたヘルプ・リポジトリーにEclipseのメイン・メニューからアクセスできるような、新しいメニュー・アイテムの作り方などに焦点を当てます。
    2005/06/21  
 
Graphvizによるファンクション・コールの視覚化
この記事では、オープン・ソース・ソフトウェアと少量のカスタム・グルー・コードを使用して、動的でグラフィカルなファンクション・コール・ジェネレーターを作成する方法を説明します。
    2005/06/21  
 
Geronimoの中でTomcatの力を解き放つ
この記事ではTomcatのベテラン・ユーザーであるSing Liが、GeronimoをTomcat用にコンフィギュレーションしなおす方法を解説します。Tomcatおなじみの基本機能をGeronimoで利用するにはどうすべきか、そして、それらの機能を強化する方法を学びましょう。
    2005/06/14  
 
XMLStarlet入門
Geronimoのクライアント・アプリケーション・コンテナーを活用するか、あるいは自分独自のものを作り出す
    2005/06/10  
 
高性能なコモディティー・コンピューティングが主流に
この記事では、LinuxWorld New York Summit を取材した記者が、金融サービスでの垂直市場におけるグリッドの利用の急増に関するテクノロジー・リーダーのディスカッションをレポートします。金融サービス会社がグリッドで開拓しようとしている戦略上の価値について、IBM、Novell、Globus Consortium の 3 者が論じています。
    2005/06/07  
 
クラスワーキング・ツールキット: 注釈とASM
このコラムでは、ASMバイトコード操作フレームワークを、J2SE 5.0のもう一つの新機能であるインスツルメンテーション・パッケージ(instrumentation package)と組み合わせ、クラスをJVMの中にロードする際に、注釈で指示された通りにクラスを変換する方法を解説します。
    2005/06/07  
 
Geronimo用のクライアント・アプリケーションを作る
Geronimoのクライアント・アプリケーション・コンテナーを活用するか、あるいは自分独自のものを作り出す。
    2005/06/07  
 
IBMの無償講義テキスト「SQL&データベース入門」プレビュー
本稿ではIBMアカデミック・イニシアティブ、今回のプログラムの詳細を説明します。また提供される講義用テキストの内容も紹介します。後半ではIBM Cloudscape/Apache Derbyデータベースを利用した演習方法について説明します。
    2005/06/03  
 
Perl/CGI投票システムを作る
この記事では、最小限の外部モジュールの使用を中心とし、クライアント・ベースのクッキーの使用を控え、CGI属性を利用したWebベースの投票アプリケーションという実例を紹介します。
    2005/05/31  
 
x86の枠を越えた Linux
非x86で Linuxを採用すると、仮想化を手頃で簡単に実現できる、信頼性、電力消費、拡張メモリーのサポートが向上する、ローレンジとハイレンジのマシンにも対応するため、ユーザーにミドルレンジ以外の選択肢も提供できる、古いハードウェアを再活用できる、新技術を導入しやすいなどの利点があります。
    2005/05/24  
 
独自のLinuxディストリビューションを作成する方法
この記事では、ソースでLinuxの基本を学び、自分専用のLinuxを作成する方法を学びます。
    2005/05/24  
 
Geronimo!: 第2回 野生のJ2EE 1.4を使いこなす
この第2回では、Sing LiがGeronimoの実際を取り上げます。最新のGeronimoディストリビューションを使って、Webアプリケーションやエンタープライズ・アプリケーション、EJB(Enterprise Java Beans)などをテストし、またデプロイを行います。
    2005/05/24  
 
EclipseでMavenを生かす
Mavenと他の技術を比較しながら、MavenとEclipseはどういう点で一致するのか、両者を共に生かすためにはどうすべきか、などについて解説します。
    2005/05/24  
 
洗練されたPerl: PerlでIMAPを使う 第2回
今回は、トンネリング(「ポート転送」とも呼ばれます)とMaildirメール格納形式へのスクリプトの適用を紹介します。
    2005/05/19  
 
囲い込まれた分散データを支援するOpenAFS
次世代のNFSライクなファイル・システムが、頭の痛いデータ問題の解答となるかもしれない
    2005/05/17  
 
Geronimo!: 第1回 J2EE 1.4エンジンへの道
Geronimoは、既存のオープンソース・コンポーネントを元にJ2EE 1.4認証されたサーバーを構築しようとする、大規模なプロジェクトです。第1回目は、Geronimoの存在理由や設計ゴール、アーキテクチャー、また中核的な概念や用語などを解説します。
    2005/05/17  
 
Cloudscapeと3つの「C」
IBM Cloudscapeは、Javaで記述された軽量なリレーショナルデータベースシステムです。IBMにはCloudscape以外にもDB2、Informixというデータベース製品がありますが、これらの中でCloudscapeは非常に小さなフットプリントを持つデータベースとして位置づけられています。Cloudscapeは軽量ながら、トランザクション、クラッシュリカバリー、トリガー、ビュー、インデックス、ストアードプロシージャをサポートする、マルチユーザー、マルチセッション対応の完全なリレーショナルデータベースシステムです。構成方法としてローカル関数呼び出しの感覚で使用可能な「埋め込み型」と、通常のデータベースと同様の「クライアントサーバー型」の2種類があります。 本稿では3つの「C」という観点でCloudscapeの特徴を紹介します。
    2005/05/13  
 
より良いJ2EEサーバーを、オープンソースの方法で構築する
IBMがGluecodeを買収するというニュースの後、私達はGeronimoの主要貢献者の1人でありGluecodeのCTOでもあるJeremy Boynesに対して、GeronimoやJava の方向性、オープンソースの現状などについてのインタビューを行いました。
    2005/05/10  
 
Apache Geronimoアプリケーションを作成しデプロイしデバッグする
Apache Geronimoサーバー用の新しいEclipseプラグインを使って、Webアプリケーションを開発し、デプロイするための方法を学びましょう。
    2005/05/10  
 
グリッドの視点:Ian Foster 氏が語る、GlobusToolkit 4.0の重要点
Globus Toolkit 4.0 は、「エンタープライズ・レベルのコード品質を備えている」という評価を開発者から受けた、初の製品です。GT4 には、以前のバージョンの GT をはるかに超える、幅広い Web サービス機能と標準規格が採用されています。グリッドのパイオニアである Ian Foster 氏が、GT4 の新しい特長と重要点について語ります。
    2005/05/03  
 
Irving Wladawsky-Berger:IT におけるオポチュニティーと課題
IBM のバイス・プレジデントである Irving Wladawsky-Berger 氏は、コンピューティングの未来に対する自分のビジョンを推し進めてきました。サンフランシスコで開催された「2005 年 Open Source Business Conference」から、Wladawsky-Berger 氏の基調講演をレポートします。
    2005/04/26  
 
ApacheのBeehive入門
この記事では、Beehiveを使い始めるための手掛かりを紹介し、またBeehiveアプリケーションを作るためのEclipseプラグインである、Pollinateを簡単に紹介します。
    2005/04/19  
 
EclipseのASTParserを試す
この記事では、既にEclipseを使っている人への朗報としてJDTとASTParserが利用できることを紹介します。
    2005/04/12  
 
inotify で Linux ファイル・システムのイベントを監視
inotify は、近々発表される Linux カーネルに組み込むためのファイル・システム・イベント監視メカニズムで、dnotify に代わる効果的なメカニズムとして設計されたものです。
    2005/04/12  
 
DITAナビゲーション・ファイルへの変換
この記事では、Eclipse TOC ファイルから DITA マップ・ファイルに変換するための XSLT スタイルシートを提供します
    2005/04/06  
 
洗練されたPerl: 複雑にレイヤー化した構成とAppConfig
XMLやYAMLのようなデータ・フォーマットを使う代わりに、少し手間をかけ、AppConfigを変えるだけで、マルチレベルのハッシュを作る複雑なコマンドライン・スイッチを処理できるのです。
    2005/03/31  
 
XSLT を使用して XML を OpenOffice Calc へのインポートするための準備
この記事では、インポートを行うための簡単な XSLT ツールを提供し、レコード指向の XML を Calc にインポートする方法を示します。
    2005/03/25  
 
XSLT 2.0で複数ファイルを作る
この記事では、XSLT 2.0での単一テンプレートを使って、1つの入力データ・セットから複数のHTMLファイルを作ることができるのかを検証します。
    2005/03/18  
 
Linux での Bugzilla を使用したバグの追跡
この記事では、Linux システムに Bugzilla をインストールするための段階的なガイドを示します。
    2005/03/18  
 
Xenでのひととき: 仮想化したLinuxでアプリケーションをテストする
この記事では、Fedora Coreを使ってXenをインストールする方法を説明します。
    2005/03/15  
 
Linuxでの高可用性ミドルウェア、第4回:IBM WebSphere Application Server
この記事では、WebSphere Application Serverの高可用性構成を構築するためのステップ・バイ・ステップの手順を説明します。
    2005/03/10  
 
洗練されたPerl: データベース・テーブルにPerlを埋め込む
今回の記事では、Class::DBI CPANモジュールとMySQLを使って、データベース・テーブルにPerlを埋め込む方法を紹介します。
    2005/03/09  
 
Linuxでの高可用性ミドルウェア、第3回: IBM LoadLeveler
ここではLoadLevelerに組み込みの高可用性機能を使ってLoadLevelerクラスターの高可用性を実現する方法、そしてオープン・ソースの高可用性ソフトウェアを使って、それをさらに強化する方法について学びます。
    2005/02/28  
 
XSLT 2.0によるコード生成 第2回: XSLT 2.0でPHPを生成する
今回は、第1回で構築したXSLT 2.0のコード・ジェネレーターを拡張し、Webサーバーにデータベース・アクセス機能を提供す持たせるためのPHPコード部分を作成する方法を説明解説します。
    2005/02/18  
 
coLinuxとopenMosixで異機種混合のクラスターを構成する
この記事では、coLinuxとopenMosixを組み合わせることによって、異機種混合環境においてハイ・パフォーマンスのクラスター・ミドルウェアを構築する方法について学びます。
    2005/02/01  
 
容易な統合開発のためにXAMPPをインストールする
この記事では、Mandrake Linux10.0にXAMPPをインストールし、設定し、バックアップする方法と、XAMPPの設定管理方法、またXAMPP環境に自分のアプリケーションをインストールする方法について学びます。
    2004/11/30  
 
「Zend Framework」で加速するPHP開発: 第2回 Zend Frameworkの各コンポーネントを一気に制する
前回は、Zend Frameworkの概要とその導入方法について説明しました。今回は、各コンポーネントの使用方法について紹介していきます。
    2004/11/05  
 
Eclipseプラグインのロギング・フレームワークをプラグイン
この記事で、Apache Log4jを基にしたプラグインそのものであるEclipseプラグインのロギング・フレームワークを使用して構成する方法を学びましょう。
    2004/09/27  
 
ccacheを使って共同作業のビルド時間を改善する
この記事ではccacheのビルド方法とインストール方法、またccacheを既存の環境でどのように使うか、さらにグループでの開発プロジェクトでビルド時間をいかに短縮するかについて説明します。
    2004/08/24  
 
Kprobesによるカーネルのデバッグ
Kprobesを2.6カーネルと組み合わせることによって軽量で影響を与えない強力な機構ができ、printkを動的に挿入できるようになります。
    2004/08/19  
 
CodeRally 作ってみよう!
ここでは、仮想的な2次元グリッド上で車(オブジェクト)の自律的な動きをプログラミングによって競うラリーカーゲームCodeRallyをご紹介します。
    2004/08/13  
 
CodeRally ゲーム紹介
ここでは、仮想的な2次元グリッド上で車(オブジェクト)の自律的な動きをプログラミングによって競うラリーカーゲームCodeRallyをご紹介します。
    2004/08/13  
 
CodeRally FAQ
ここでは、仮想的な2次元グリッド上で車(オブジェクト)の自律的な動きをプログラミングによって競うラリーカーゲームCodeRallyをご紹介します。
    2004/08/13  
 
CodeRally 試してみよう!(6)
ここでは、仮想的な2次元グリッド上で車(オブジェクト)の自律的な動きをプログラミングによって競うラリーカーゲームCodeRallyをご紹介します。
    2004/08/13  
 
CodeRally 試してみよう!(5)
ここでは、仮想的な2次元グリッド上で車(オブジェクト)の自律的な動きをプログラミングによって競うラリーカーゲームCodeRallyをご紹介します。
    2004/08/13  
 
CodeRally 試してみよう!(4)
ここでは、仮想的な2次元グリッド上で車(オブジェクト)の自律的な動きをプログラミングによって競うラリーカーゲームCodeRallyをご紹介します。
    2004/08/13  
 
CodeRally 試してみよう!(3)
ここでは、仮想的な2次元グリッド上で車(オブジェクト)の自律的な動きをプログラミングによって競うラリーカーゲームCodeRallyをご紹介します。
    2004/08/13  
 
CodeRally 試してみよう!(2)
ここでは、仮想的な2次元グリッド上で車(オブジェクト)の自律的な動きをプログラミングによって競うラリーカーゲームCodeRallyをご紹介します。
    2004/08/13  
 
XML ウォッチ: XML でオープン・ソース・プロジェクトを記述する 第 4 回
今回は、オープン・ソースのソフトウェア・プロジェクトを記述するためのボキャブラリー開発を完了し、DOAPボキャブラリーを無事に開始するために必要なドキュメンテーションやツール、コミュニティーなどについて解説します。
    2004/07/28  
 
Linuxカーネルのストレス・テスト
ソフトウェアのテストを自動化することにより、同一のテストを一定期間に渡って行うことができるようになります。また自動化によって同じ種類のテスト結果を比較することで、確実に正確な評価ができるようになります。
    2004/06/30  
 
EclipseをJakarta Tomcatの開発環境として使う
この記事では統合のために、手順を追ってEclipse、Jakarta Tomcat、Eclipse Tomcatランチャー・プラグインをインストールして行きます。
    2004/05/20  
 
Eclipse Visual Editor Projectで、GUIを作成
この記事では、AWT/Swing アプリケーションを構築する際のVisual Editor 0.5の機能の短いデモンストレーション、そしてVisual Editor 1.0でのSWTサポートの下見と共に紹介します。
    2004/05/04  
 
Kexecを使ってLinuxの起動を早める
Kexecとは高速リブート機能で、bootloaderを通らずに新しいLinuxカーネルのリブートを可能にしてくれるものです。
    2004/05/04  
 
C99を使ったオープンソース開発
この記事では、LinuxやBSDシステムで使用可能な新しい機能に焦点を当てながら、1999年版のISO C標準について説明します。
    2004/04/24  
 
Eclipse Modeling Frameworkでモデリング: 第1回
Eclipse Modeling Framework(EMF)とは、モデル主導のアプリケーションを開発するためのオープン・ソース・フレームワークです。
    2004/04/15  
 
Eclipse用Easy Strutsを使用したStruts開発
この記事では、Easy Strutsプラグインからの助けを借りてEclipse IDE内でStrutsアプリケーションを開発する方法を紹介します。
    2004/04/08  
 
Perlモジュールの展開を自動化する
この記事では、最終システムをまとめる前に応用可能な解決手段を提案します。
    2004/03/08  
 
Runtime SpyでEclipseの起動パフォーマンスを調整する: 第1回
この記事ではEclipse.orgからコア・ツールの一つとして入手できるRuntime Spyを紹介します。
    2004/03/04  
 
Eclipseのヘルプ・システムを使ってプロジェクトを文書化する
Eclipseプラットフォームは非常に強力なIDEを提供するものですが、HTMLファイルを参照するXML目次に基づいた、独自のヘルプ・システムを持っています。
    2004/01/29  
 
EclipseとHSQLDB: リレーショナル・データベース・サーバーをEclipseに埋め込む 第2回
2回目の今回は、Eclipseのフィーチャーを使って、どのように前回開発したプラグインの限界を乗り越えるかをとりあげます。
    2003/12/04  
 
SWTアプリケーションにコンテンツ・アシスタントを備える
この記事ではどんなSWTベースのアプリケーションにも簡単にコンテンツ・アシスタント機能を追加する方法を説明します。
    2003/11/19  
 
EclipseとHSQLDB: リレーショナル・データベース・サーバーをEclipseに埋め込む 第1回
Pure Javaのリレーショナル・データベース・サーバーであるHSQLDBをEclipseワークベンチに埋め込むプラグインを、どのように開発するかを説明します。
    2003/09/30  
 
Linux 2.6へ
ここではコード・サンプルを挙げながら、次期新カーネルの新しくなった部分を大小取り混ぜ、いくつか見ていこうと思います。
    2003/09/23  
 
みんなのリファクタリング
この記事ではEclipseのリファクタリングを調査し、それぞれのツールをなぜ、どうやって使うか例を挙げて説明します。
    2003/09/09  
 
Perl/Tkを利用してのデータのビジュアル化
この記事では、カスタムなプロッティングやグラフ表示ツールを簡単に構築できるPerl向けの標準GUIツールキットであるPerl/Tkの使用方法について説明いたします。
    2003/08/27  
 
プログラミング改善への道: 第12回 perledit: sectionによるファイル編集
この連載では、Ted氏がcfengineのインタープリタをPerlで記述するというcfperlプロジェクトの開発を進めてきており、今回は、Perlベースのファイル編集の追加を行います。
    2003/08/20  
 
LSIDで生命科学の協力ネットワークを構築する
J2EEコンポーネントを組み合わせればプロトコルの取り扱い自体は考えることなく、サービス・ロジックを書くことだけに集中できるようになります。
    2003/08/15  
 
EclipseでのJava Development Toolsの拡張
この記事では、Eclipseでの拡張に際してリファクタリングを作成するためのステップについて手ほどきをいたします。
    2003/07/22  
 
Eclipseプラグインのサービス
この記事ではEclipseプラグインを利用したお客様から報告された問題を分析する方法について説明します。
    2003/07/08  
 
Java Web Startを使用して、SWTアプリケーションを配置する
この記事では、見栄えの良いクライアント側Javaアプリケーションを配置させる強力なツールとなる、Java Web StartとSWTとの調和について説明します。
    2003/06/19  
 
ActiveXコントロールをSWTアプリケーションへ統合する
Eclipseプロジェクトの一部であるSWTは、ActiveXコントロールをスタンドアロンのSWTアプリケーションに簡単に統合し活用する方法を提供することで、このようなニーズに答えています。
    2003/06/05  
 
ゾーン・リーダーのコラム :Robocodeコミュニティの手による大会プロジェクト発足
Robocodeコミュニティの手による大会プロジェクトが発足しました。
    2003/05/29  
 
Linux上にLSID認定システムを構築する
ここでは、ごくわずかなデータ・セットを用いたシステムやたんぱく質配列データベースSwiss-Protからダウンロードしてきたデータを用いたシステムをLinuxのプラットフォームに構築します。
    2003/05/27  
 
JFaceウィザードの開発
JFaceウィザードは、Standard Widget Toolkit (SWT) 内の他のコンポーネントと組み合わせて使用することにより、ユーザー入力を系統的に収集し、データの検証を実行するための柔軟なメカニズムを提供します。
    2003/05/21  
 
LinuxでCDを焼く
Linuxには、CDを作成するための強力で柔軟性の高いツールが用意されています。この記事では、mkisofs と cdrecord を紹介します。
    2003/04/23  
 
Eclipse Platformを使用したC/C++ 開発
この記事では、Eclipseで使用可能な最も優れたC/C++ ツールキットであるC/C++ Development Toolkit (CDT) の使用方法を学習します。
    2003/04/22  
 
Linuxのパフォーマンスをよくしよう
皆さんがアプリケーション開発を行う際に起こりそうなパフォーマンス関係のいろいろな問題について、ちょうど良いお手本となる例をいくつかまとめてご紹介します。
    2003/04/10  
 
EclipseによるXML開発
この記事では、Eclipse PlatformのXML開発サポートの概要を取り上げます。主に取り上げるのは、XMLBuddyというプラグインです。
    2003/04/08  
 
ヒント: uniqを使って、重複する行を削除する
多くの場合、重複する行があっても問題とならないのですが、ときどきそれが問題となることがあります。uniq コマンドを使って、そのためのフィルターを作成するのに時間と手間を節約する方法を解説します。
    2003/04/03  
 
Eclipse Platformを使用したコードの共有
この記事では、Eclipse Platformがどのようにソフトウェア・プロジェクトにおけるソース・コードのバージョン管理をサポートするかについて説明します。
    2003/03/13  
 
Eclipse Workbench以外でのEclipse GUIの使用 第3回: アクション、メニュー、およびツールバーを追加する
シリーズ最後のこの第3回目の記事では、第1回および第2回の記事で開始したファイル・エクスプローラーの例に、アクション、メニューバー、ポップアップ・メニュー、およびツールバーを追加して完成させます。
    2003/03/04  
 
Stowを使ってのパッケージ管理
この記事では、Linux向けソフトウェア・インストール管理ユーティリティーのひとつで、Red HatやDebianの実証済みのパッケージ管理システムに比べても数多くの利点を備えているStowについて解説します。
    2003/02/20  
 
Eclipse Workbench以外でのEclipse GUIの使用 第2回: JFaceイメージ・レジストリーを使用する
今回の記事では、シリーズ第1回のサンプルを引き続き使用して、コンテンツ・プロバイダーとラベル・プロバイダーを見栄え良く変更し、JFaceのビューアーでソートやフィルタリングを実行する方法について説明します。
    2003/02/14  
 
Knoppixがディスク1枚でブート可能なLinuxを実現
Knoppixが、非常に便利な特化したLinuxディストリビューションを、1枚でブート可能なCD-ROMにパッケージ化しました。
    2003/02/04  
 
RPMによるソフトウェアのパッケージング: 第2回
今回は、ルートとして実行することなくソフトウェアをパッケージする方法、Linuxでビルドするために一部を変更しなければならないソフトウェアを処理する方法、成果物を配布する方法について説明します。
    2002/12/01  
 
Eclipseプラグインの開発
この記事では、Plug-in Development Environmentのコード生成ウィザードを使ってEclipseプラグインを作成する方法、ランタイム・ワークベンチでプラグインを実行してデバッグする方法、完成したプラグインをEclipseにインストールする方法を紹介します。
    2002/12/01  
 
生物科学におけるオープン・ソース
生物科学と生物情報科学におけるオープン・ソースの利用は、これから大いに成長する分野です。生物情報科学で最も重要な意味をもつことになる専門的なソフトウェアの開発が、いくつか進められています。
    2002/11/01  
 
SashXBがLinuxにミニRADをもたらす
本稿では、SashXBの開発者がその内部的な働きを解説し、アプリケーションの開発、ダウンロード、インストールをSashXBによって簡略化する方法を紹介します。
    2002/11/01  
 
Eclipse Platform入門
この記事では、Eclipseプラグインを使ってアプリケーションの編集、コンパイル、およびデバッグを行います。また、Eclipse Platformの概要を説明し、UMLモデル化用のプラグイン拡張機能を示します。
    2002/11/01  
 
研究室におけるオープン・ソース
科学や工学の研究室では、昔から日常のデータ解析作業に独占的(Proprietary)である製品を利用してきましたが、現在では、数多くの研究室が、従来の製品では得られない技術的な利点を求めて、オープン・ソースの製品や開発言語に目を向けつつあります。
    2002/10/01  
 
Swingベース開発ツールのEclipseへの組み込み
独立したSwingベース・エディターをプラグインとしてEclipse Platformに統合する方法を学びましょう。簡単なテクニックを利用するだけで、SwingツールやEclipse Platform、および各種のSWTウィジェットの間でリソースを共用できます。
    2002/10/01  
 
LSB認定アプリケーションの開発
Linux標準ベースは、Linuxアプリケーション間のバイナリー互換を確保することを目指しての大きな一歩です。この記事では、5つの簡明な手順によってLSB認定アプリケーションを構築できることを紹介します。
    2002/10/01  
 
ヒント: catを使ってファイルを連結する
GNUのテキスト・ユーティリティーについての連載第2回目として、catコマンドを取り上げます。UNIXを愛する人からはこよなく愛され、UNIXを嫌いな人からはこよなく嫌われるコマンドです。
    2002/10/01  
 
PuffinによるWebアプリケーションのテスト: Puffinテスト・フレームワーク 第2回
最新バージョンのPuffinフレームワークでは、Web、ファイル、データベース、ソケット、コマンド行をはじめ、自動化できるアクションの幅が広がりました。この記事では、システムのアーキテクチャーの改良の背景にあるキーポイントとなる概念を紹介し、新たに拡張された使い方を検討します。
    2002/09/01  
 
スパムの選り分け手法
Eメールが勝手に送り付けられてくることが年々大きな問題となってきていますが、その防止策の記事が到着しました。無用なEメールを自動的に除去するためのいろいろな手法を比較・検討するとともに、これらの手法に基づく、いくつかの一般的なツールを紹介、テストします。
    2002/09/01  
 
freeVSD入門
本稿では、物理的な1台のマシンで複数の仮想サーバーを稼働させるためのfreeVSDというLinux用「仮想サーバー・デーモン」を紹介します。それぞれの仮想サーバーに、独立なWebホスト環境が用意されます。
    2002/08/01  
 
REXXで乗りこなす Apache
この記事では、Mod_Rexxパッケージについて紹介します。Mod_Rexxパッケージとは、mod_perlやmod_phpのような他のApache言語プロセッサー・モジュールに類似したものです。今回は、Mod_Rexxを使用して、動的Webページの作成やApacheの要求の処理を行う方法について説明します。
    2002/08/01  
 
オープン・ソースによる人工衛星制御
3つの言語と4つの開発プラットフォームが使われ、複数のクライアント環境に配備される人工衛星管制システムを、どうやって装備すればよいのでしょうか。 もちろん、オープン・ソースを使ってです。
    2002/08/01  
 
GNOMEnclature: GNOME 2に備える 第2回
第2回目の今回は、GNOMEを比較的初心者の観点から新たなGlibオブジェクト・システムについて説明しています。この記事が終わるまでには、GNOMEを十分に理解し、熱狂的なCファンであっても、それを自分で使用してみたいかどうかを決めることができるようになるでしょう。
    2002/06/01  
 
Eclipseプラグインの国際化対応
この記事は、国際市場向けにEclipseプラグインを作成するためのロードマップです。まずは国際化対応を行う理由とその技術的な課題を簡単に説明し、その後でプラグインの国際化対応方法をステップに分けて説明します。そして最後に、それらのステップがEclipse Platformの国際化対応にどのように適用されたのかを見てみます。
    2002/06/01  
 
PuffinによるWebアプリケーションのテスト: Puffinテスト・フレームワーク 第1回
4回連載の第1回に当たる今回の記事では、Puffinテスト・システムを紹介します。Puffinは、Webアプリケーションをテストするためのオープン・ソース・フレームワークであり、最も複雑なWebアプリケーションにも対応したレグレッション・テストを作成することができます。
    2002/06/01  
 
初心者のためのwxHTML
HTMLは、いろいろな用途に使われていますが、とりわけレポートやオンライン・ヘルプに多用されています。アプリケーションにWebブラウザーを組み込んでおけば、クライアントがそのページを閲覧するために使用するブラウザーに気を配る必要がなくなり、また、HTMLページを元のアプリケーションに関係付けるためのカスタム・タグを作成することができます。たとえば、IDEに組み込まれたヘルプ・システムを例に挙げると、ユーザーは、カスタム・タグを仕込んでおいた関数リファレンスをブラウズし、関数名をクリックすると、関数呼び出しをユーザーのコードに追加することも出来るでしょう。
    2002/05/01  
 
サーバー・クリニック: 期待以上の出来のExpect
新コラム「サーバー・クリニック」をスタートします。今回は人気ツールExpectについての概要を紹介します。この言語は、ほとんどのプログラマーやアドミニストレーターの予想をはるかに上回る機能を備えています。
    2002/04/01  
 
GNU Cライブラリーのオーバーライド -- やすやすと行う方法
glibcの関数をデバッグしたいときは、対象となる関数をオーバーライドして自分独自のバージョンに置き換えるのが巧いやり方です。これは、ルート許可がなくても可能ですし、libcのソースを再コンパイルする必要もありません。
    2002/04/01  
 
Javaの解放: Jason Hunter氏へのインタビュー
developerWorks は、Java Community ProcessのApacheの代表者であるJason Hunter氏にインタビューを行い、現在の状況について説明してもらいました。
    2002/04/01  
 
Linux (または異種混合) ネットワークでのコンピューターの共用: 第2回
遠隔からアプリケーションを実行する手段として、SSH、リモートX、VNCなどのテクノロジーを比較するシリーズの第2回目です。まずVNCの構成の問題を少し取り上げ、次にIBMのDesktopOn-Callに触れ、リモートXを紹介し、最後にセキュリティーについて少し言及しています。
    2002/03/01  
 
libtiffによるグラフィックス・プログラミング
TIFF仕様を標準ANSI Cで実現しているLibtiffは、無料で提供されており、数多くのオペレーティング・システムで利用できます。本稿では、libtiffライブラリーの使い方、また、モノクロ画像を処理するときのlibtiffの使い方の例をご紹介します。
    2002/03/01  
 
共通テーマ: OpenSSH キー (鍵) の管理: 第 3 回
連載第3回目のこの記事では、OpenSSHエージェント接続転送を利用してセキュリティーを高める方法や、keychainシェル・スクリプトに加えられた最近の改善点についてご紹介します。
    2002/02/01  
 
洗練されたPerl: システム管理用cfengine入門
簡単な管理タスクなら自動化し、難しいタスクについては難しさを軽減することを目的としたUNIX管理ツール "cfengine"の簡単な使用法の例をいくつかご紹介します。
    2002/02/01  
 
プログラミング改善への道: 第4回
今回は、map() 関数やgrep() 関数、さらにSchwartzianトランスフォームやGuttman-Roslerトランスフォームといった、コードにスピードと簡潔さを求めるPerlプログラマーにとって重要となる関数型プログラミング、および必須のPerlイディオムを紹介します。
    2002/01/01  
 
プログラミング改善への道: 第5回
このシリーズの第5回となる今回は、オブジェクト指向プログラミングとは何か、それはどのような時に使用すべきなのか、また、Perlにおいてそれはどのように機能するのかという点について解説します。
    2002/01/01  
 
魅力的なPython: SimpleParseモジュールを使った構文解析
このコラムでは、Python上に構築された高水準の構文解析言語について解説します。 SimpleParseは、文法を非常に分かりやすい形で表現できるEBNF形式の構文規則をmxTextToolsに付加します。
    2002/01/01  
 
GNOMEnclature: GNOME 2 に備える: 第1 回
developerWorks は、Linux ゾーンで好評の GNOMEnclature コラムを再開します。今回のコラムでは、CodeFactory のMikael Hallendal と Richard Hult の両氏が、新たな GNOME 2 プラットフォームを最大限に活用するために必要な内部情報を提供します。このシリーズによって、皆さんは GNOME 2 で使うことのできる改良された新しいライブラリーの使い方を学び、独自の Nautilusビュー、panel アプレット、その他さまざまなものの作成ができるようになるでしょう。今回の記事では、Mikael Hallendal 氏と Richard Hult氏が、GNOME 2 デスクトップ環境の新たな基盤である GTK+ 2 を分かりやすく紹介し、この連載を再開します。この記事を読み終える頃には、皆さんは、GTK+ 2 のサンプル・プログラムを記述し、コンパイルを行い、GTK+ 1 から GTK+ 2 への進化によって追加されたたくさんの機能を十分に理解することができるでしょう。
    2002/01/01  
 
共通テーマ: アドバンスト・ファイルシステム・インプリメンター・ガイド 第9回
Linux 2.4のリリースと共に新たに登場したファイルシステムのうち、今回はXFSを紹介します。まずは、XFSとext3およびReiserFSをどのような点で比較するか説明し、XFSの内部で使用される多くのテクノロジーについて解説します。
    2002/01/01  
 
共通テーマ: アドバンスト・ファイルシステム・インプリメンター・ガイド 第8回
前回に引き続き、ジャーナリング機能を持つext2の新しいバージョンであるext3について考察します。今回の記事では、皆さんにとって有用と思われるext3に関するいくつかのトピックについて詳しく説明します。
    2001/12/01  
 
プログラミング改善への道: 第3回
この第3回では、Perlのループ構文、条件ステートメント、クリーンなコードの作成につい概説します。Perlを日常業務に活用する方法を習得するのに役立ちます。
    2001/12/01  
 
Linux (または異種混合) ネットワークでのコンピューターの共用: 第1回
2回シリーズの第1回目です。セキュア・シェル (SSH) とVirtual Network Computing (VNC) を比較して、違いを明らかにします。
    2001/12/01  
 
MakeMakerによるPerlプロジェクトのビルド
簡単なタスクを自動化するようなPerlプログラムを、MakeMakerを使用することによって、様々な種類のプラットフォームで広く使うことのできる汎用性を備えた堅固なプログラミング・プロジェクトに変換する方法を示します。
    2001/11/01  
 
RPMによるソフトウェアのパッケージング: 第1回
シリーズの第1回となる今回は、Red Hat Linux 7.1システムにおけるRPMによる簡単なソフトウェアのパッケージング方法について説明します。
    2001/11/01  
 
共通テーマ:アドバンスト・ファイルシステム・インプリメンター・ガイド: 第7回
アドバンスト・ファイルシステムをLinux 2.4環境にセットアップする方法を示すシリーズの7回目です。今回は、ジャーナリング機能が追加されたext2の新しい改良版であるext3について考察します。
    2001/11/01  
 
洗練されたPerl: xinetdプログラムによるシステム管理
xinetdデーモンは、inetdに代わるものであり、さまざまな改善された機能や新機能を備え、構成も容易です。この記事では、inetdの背景となる概念について説明し、xinetdの実際のセットアップ例を示します。
    2001/11/01  
 
Eclipse Platformの利用
developerWorks (dW) is an ever-growing collection of content and resources for developers. Dedicated to open, cross-platform standards and technologies such as Java, XML, Linux, and open source projects, developerWorks offers articles, sample code, tutorials, how-tos, tools, news, case studies, discussion forums -- virtually anything developers want or need to help get their jobs done.,developerWorksは、Java、XML、Linuxやオープン ソースといった、オープン スタンダードとクロス プラットフォーム テクノロジーに特化したリソースの提供を行います。その中には、記事、サンプル・コード、ハウツー、ツール、事例研究などを含みます。これらは事実上、開発者が彼らの仕事をより効率的にするために望み必要としている物です,
    2001/11/01  
 
インタビュー: Eclipseコードの供与
IBMの次世代WebSphere Studio製品の基盤を形成するオープン・ソース・コードとして、IBMはEclipseプロジェクトに対して4000万ドル相当のツールを最近供与しました。これに関する詳細の一部を、OTIマーケティングのリーダーであるMarc EricksonがdeveloperWorksで紹介します。
    2001/11/01  
 
共通テーマ: アドバンスト・ファイルシステム・インプリメンター・ガイド: 第5回
今回の記事では、devfsを使用できるようにシステムを準備するプロセスについて説明しています。この記事を最後まで読めば、devfsをすぐに使用できるようになります。
    2001/10/01  
 
魅力的なPython: [anygui]プロジェクトのプレビュー
Pythonにおいて、数多くの基本グラフィック・ツールキットのためのラッパーAPIの開発を目指す[anygui]プロジェクトの開発が始まっています。現時点における[anygui]の開発状況とこのプロジェクトの目標について説明します。
    2001/10/01  
 
共通テーマ: アドバンスト・ファイルシステム・インプリメンター・ガイド: 第6回
Linux 2.4のリリースと共に登場したファイルシステムをLinux 2.4環境にセットアップする方法を説明したシリーズです。第6回目は、initラッパーを使用してシステムを「devfsモード」に変換する方法について説明します。
    2001/10/01  
 
共通テーマ: OpenSSH キー (鍵) の管理: 第 2 回
第2回となる今回の記事では、Daniel Robbins氏が ssh-agent (私有鍵キャッシュ)、ならびに鍵ベース認証の利便性と柔軟性の飛躍的向上を目的とした特別なbashスクリプト「keychain」の概要を説明します。
    2001/09/01  
 
アドバンスト・ファイルシステム・インプリメンター・ガイド: 第3回
今回の記事では、VMベースのファイルシステムであるtmpfsについて説明し、カーネル2.4の「バインド」マウント機能によってもたらされる新たな可能性について紹介しています。
    2001/09/01  
 
洗練されたPerl: PerlによるExcelファイルの読み取り/書き込み
この記事では、WindowsおよびLinuxでのPerlによるExcelファイルの読み取り/書き込み、ならびにいくつかのシンプル・モジュールについて考察します。
    2001/09/01  
 
魅力的なPython: イテレーターとシンプル・ジェネレーター
Python 2.2は、新たなキーワードを伴う新しい構成要素を導入しました。その構成要素とは「ジェネレーター」であり、キーワードは「yield」です。このジェネレーターは、新しく強力で表現力の高いプログラミング・イディオムを可能としますが、少々理解しにくいところもあります。この記事では、David Mertz氏がジェネレーターとそれに関連するイテレーターについてわかりやすく説明します。
    2001/09/01  
 
国際化対応Eclipseプラグインをテストする
この記事では、国際化対応製品を検証する方法を示し、翻訳テストの際に生じることが予想される一般的な問題のための対応を示します。この記事に含まれているプロパティー・ファイル比較ビューを定義するEclipseプラグインを使用することにより、翻訳テスターはエラーを迅速に検出することができます。
    2001/07/02  
 
洗練されたPerl: JAPHのすばらしさ
この記事は、初級、中級のPerlプログラマーを対象として書かれていますが、ここでは経験豊富なPerlファンさえも驚かせ、魅惑してしまうようなJAPHの例をいくつか紹介しています。
    2001/07/01  
 
ニューラル・ネットワーク入門
この記事では、ニューラル・ネットの基本的特徴およびその 構築方法について示します。これによって、皆さんは、自分自身のコーディングにニューラル・ ネットを応用することができるようになるでしょう。
    2001/07/01  
 
共通テーマ: OpenSSH キー (鍵) の管理: 第 1 回
このシリーズでは、RSA認証およびDSA認証の仕組みについて、また、パスワードレス認証(パスワードを必要としない認証)の正しい設定方法について学びます。このシリーズ第1回目では、Daniel Robbins氏がRSA/DSA認証プロトコルについて紹介し、さらにネットワーク上におけるそれらの使用方法について説明します。
    2001/07/01  
 
洗練されたPerl: PerlによるUNIXのシステム管理の自動化
UNIXのシステム管理は常にやっかいな問題ですが、適切なツールを使用すれば簡単に行うことができます。今回、Teodor Zlatanov氏は、Perlを使うことによってシステム管理の効率をアップし、だれでも確実に管理を行えるようにする方法を提案しています。この提案においては、システム構成エンジンであるcfengineがきわめて重要なツールとなります。
    2001/07/01  
 
魅力的なPython: Pythonでの関数プログラミング: 第3回
今回は、Xoltar Toolkitに組み込まれているカリー化やその他の高階関数のような追加機能を示しながら、引き続き説明を行います。
    2001/06/01  
 
アドバンスト・ファイルシステム・インプリメンター・ガイド
この連載では、ReiserFS、XFS、JFS、GFS、ext3など、Linuxのさまざまな新ファイルシステムについて、実用的知識を提供します。連載第1回目である今回の記事では、ジャーナリングとReiserFSの利点について説明します。
    2001/06/01  
 
便利なCGIスクリプト作成のためのヒント
CPANから受け継いだCGIモジュールが、効果的かつスムーズに作業を進める上で役立つばかりでなく、優れたコードと参考ライブラリーを提供してくれます。
    2001/06/01  
 
KDE入門
この記事では、KDEをどのようにして立ち上げたかを説明し、マルチメディアやゲームなど、私が見つけた強力な機能をいくつか紹介することにします。最新の安定したバージョン2.1を中心に話を進めます。
    2001/05/01  
 
Pangoの接続: 第2回
Pangoは、国際化されたテキストをレイアウトおよびレンダリングするためのオープン・ソースのフレームワークです。次世代のGTK+ とGNOMEに組み込まれることになっています。2回連載のこの第2回でTony Grahamは、Pangoおよび開発バージョンのGLibとGTK+ をどこで入手するか、プログラムの構成方法、そしてPangoとGTK+ を使ったプログラムをコンパイルする方法を説明します。
    2001/04/01  
 
Eclipse Workbench以外でのEclipse GUIの使用 第1回: スタンドアロン・モードでJFaceおよびSWTを使用する
この3回シリーズでは、スタンドアロン・アプリケーションの作成方法について説明します。第1回では "Hello World" プログラムを例として、段階的にシンプルなファイル・エクスプローラー・アプリケーションを作成していきます。
    2001/03/01  
 
Pangoの接続: 第1回
Pangoは、国際化されたテキストをレイアウトおよびレンダリングするためのオープン・ソースのフレームワークです。次世代のGTK+ とGNOMEに組み込まれることになっています。2回シリーズの第1回では、Tony GrahamがPangoを紹介するとともに、Pangoがテキストを処理する方法、およびフォーマットするテキストに指定できるテキスト属性を説明します。
    2001/03/01  
 
ネイティヴパフォーマンスを使ってのメディアプレイヤーのための外観が変更(skinnable)可能なJave UIsのデザイン
複数のプラットフォームをまたがってコンパイルし、ネイティヴコード同様の速さで動作するJavaコードが書けますか?これはJava開発者には、特に複雑なUIを使ってのアプリケーションとなるとやっかいな問題です。この記事では、開発者であるVladimir Silvaがこの問題に対する興味深い解決法を提示しています。SLIK、つまりWindowsとUNIXの双方でネイティヴパフォーマンスを提供するクロスプラットフォームのC APIへアクセスするためには、どのようにJNIを利用すればよいかを学習します。
    2001/02/01  
 
Sunのオープン・ソースのコンポーネント化OpenOfficeプロダクティビティー・セット
Sun MicroはどのようにStarOfficeコードを取得し、それを「コンポーネント化」し、GPL下でリリースしたか - 次に何が起こるか
    2001/02/01  
 
JTOpen: IBM iSeries向けのオープン・ソースJavaツールボックス
JTOpenは、IBMがリリースしたオープン・ソースのJavaツールボックスです。このツールは、中型ビジネス・コンピューターiSeries (旧称AS/400)の操作に有用です。本稿では、JayとTonyがJTOpenを概説し、iSeriesに接続してiSeriesのファイル・システムをスキャンする方法を紹介します。
    2001/02/01  
 
DAISY: 大型マシン向けオープン・ソースJITコンパイラー
バイナリー変換研究用のオープン・ソース・ソフトウェアであるDAISYが、IBMのワトソン研究所からリリースされようとしています。DAISYの動的コンパイルと16-wide VLIWにより、このプロジェクトは、コンパイラー技法およびアーキテクチャー機能の最先端の地位を占めるようになりました。Maya StodteはDAISYとその開発の中核チームに迫りました。
    2000/11/01  
 
宝石たちの語らい
developerWorks Japanは、Linux Zone リーダーの富田氏の協力を得て、Linux 開発者のコミュニティにおいて、特にPerlの機能について活発な議論がなされ、その中でRubyとの関連について開発者の方々が興味を持っていることを知りました。
    2000/10/01  
 
Unicodeの多言語形式
developerWorks (dW) is an ever-growing collection of content and resources for developers. Dedicated to open, cross-platform standards and technologies such as Java, XML, Linux, and open source projects, developerWorks offers articles, sample code, tutorials, how-tos, tools, news, case studies, discussion forums -- virtually anything developers want or need to help get their jobs done.,developerWorksは、Java、XML、Linuxやオープン ソースといった、オープン スタンダードとクロス プラットフォーム テクノロジーに特化したリソースの提供を行います。その中には、記事、サンプル・コード、ハウツー、ツール、事例研究などを含みます。これらは事実上、開発者が彼らの仕事をより効率的にするために望み必要としている物です,
    2000/09/01  
 
AFSのオープン化
developerWorks (dW) is an ever-growing collection of content and resources for developers. Dedicated to open, cross-platform standards and technologies such as Java, XML, Linux, and open source projects, developerWorks offers articles, sample code, tutorials, how-tos, tools, news, case studies, discussion forums -- virtually anything developers want or need to help get their jobs done.,developerWorksは、Java、XML、Linuxやオープン ソースといった、オープン スタンダードとクロス プラットフォーム テクノロジーに特化したリソースの提供を行います。その中には、記事、サンプル・コード、ハウツー、ツール、事例研究などを含みます。これらは事実上、開発者が彼らの仕事をより効率的にするために望み必要としている物です,
    2000/09/01  
 
無料のチップをすべての人に
developerWorks (dW) is an ever-growing collection of content and resources for developers. Dedicated to open, cross-platform standards and technologies such as Java, XML, Linux, and open source projects, developerWorks offers articles, sample code, tutorials, how-tos, tools, news, case studies, discussion forums -- virtually anything developers want or need to help get their jobs done.,developerWorksは、Java、XML、Linuxやオープン ソースといった、オープン スタンダードとクロス プラットフォーム テクノロジーに特化したリソースの提供を行います。その中には、記事、サンプル・コード、ハウツー、ツール、事例研究などを含みます。これらは事実上、開発者が彼らの仕事をより効率的にするために望み必要としている物です,
    2000/08/01  
 
Enhydra: コラボレーションの新しいモデル
developerWorks (dW) is an ever-growing collection of content and resources for developers. Dedicated to open, cross-platform standards and technologies such as Java, XML, Linux, and open source projects, developerWorks offers articles, sample code, tutorials, how-tos, tools, news, case studies, discussion forums -- virtually anything developers want or need to help get their jobs done.,developerWorksは、Java、XML、Linuxやオープン ソースといった、オープン スタンダードとクロス プラットフォーム テクノロジーに特化したリソースの提供を行います。その中には、記事、サンプル・コード、ハウツー、ツール、事例研究などを含みます。これらは事実上、開発者が彼らの仕事をより効率的にするために望み必要としている物です,
    2000/08/01  
 
Linux for S/390: Change Log
developerWorks (dW) is an ever-growing collection of content and resources for developers. Dedicated to open, cross-platform standards and technologies such as Java, XML, Linux, and open source projects, developerWorks offers articles, sample code, tutorials, how-tos, tools, news, case studies, discussion forums -- virtually anything developers want or need to help get their jobs done.,developerWorksは、Java、XML、Linuxやオープン ソースといった、オープン スタンダードとクロス プラットフォーム テクノロジーに特化したリソースの提供を行います。その中には、記事、サンプル・コード、ハウツー、ツール、事例研究などを含みます。これらは事実上、開発者が彼らの仕事をより効率的にするために望み必要としている物です,
    2000/08/01  
 
Linux for S/390: 技術詳細情報 - 旧版のパッチ
Linux for S/390: 技術詳細情報 - 旧版のパッチ, モジュールに関する制約事項
    2000/08/01  
 
 結果  789    1 - 100 件を表示する     概要の非表示    
 
お探しの記事は見つかりませんでしたか? コンテンツを提案する