「プログラミング」記事一覧
-
2005/10/14
S2Container.NETのDIとAOPを活用し生産性の高いシステムを構築する
「Seasar2」は、DIコンテナとAOPという便利な機能を提供するJavaのオープンソースのフレームワークで、今後の開発の中心となる基盤として注目を集めています。本稿では「Seasar2」を.NET環境に移植した「S2Container.NET」と呼ばれるプロダクトを紹介します。
-
2005/10/13
Whoisクライアントの作成と国際化ドメイン名への対応
本稿では、Whoisサービスの概要を紹介し、プロトコル仕様(RFC3912)に基づいたWhoisクライアントのサンプルプログラムを作成します。また、同サンプルを国際化ドメイン名に対応させるため、「アプリケーションのドメイン名国際化(RFC3490)」についてもその内容および実装方法を紹介します。
-
2005/10/12
AjaxTags・AjaxFacesを利用したサーバーサイドプログラミング
Ajaxを利用してリッチなUIを構築するためには、サーバサイドもさることながら、JavaScriptを使ったクライアントサイドの複雑なコーディングを行う必要があります。本稿で紹介するAjaxTags・AjaxFacesを利用すると、JSPタグを記述するだけで、JavaScriptのコーディングを行わずにAjaxを使用することができます。
-
2005/10/11
写真を油彩画のように変換する簡易フィルタの実装
カメラなどで撮った自然画像を絵画のように変えてみたいことがあります。著名な市販レタッチソフトや、他の有償無償の画像ソフトにもこの種の機能が含まれています。本稿では比較的単純な手法で、油彩画に似た絵画調の画像を作成する方法を紹介します。
-
2005/10/07
Mavenを利用してオールインワンのプロジェクト環境を構築する
本稿では、Mavenの導入と基本的な使用方法について解説します。mavenにはソフトウェア開発のプロジェクトをサポートするために、定義済みの典型的な開発ライフサイクル、各種レポートの自動生成、最新モジュールの自動ダウンロードといった機能があります。これらの機能を、具体的なプロジェクトのイメージを想定して順に紹介していきます。
-
2005/10/06
ズームとパンの機能を備えたドローソフトを作成する
本稿では、ズーム(拡大縮小)とパン(平行移動)を行え、さらに描画操作を継続できるようなドローソフトを作成します。Java2DのGraphics2DコンテキストとAffineTransformクラスを活用することで、座標変換に伴う計算を簡単なコードで実現しています。
-
2005/10/05
ATL/WTLプログラミング 1:ATL/WTLの概要と基本
Windowsアプリケーションを作成するためのC++クラスライブラリといえば、Microsoftが提供するMFCが有名ですが、同社が提供するライブラリATLを利用して作成することもできます。本稿では、ATLおよびATLの拡張ライブラリとも言えるWTLを使用したWindowsプログラミングについて説明します。
-
2005/10/03
TeX→PDF変換ツールを利用したバッチ処理による帳票出力
業務システムでは、帳票などの定型書類の出力が必ずと言って良いほど要件に含まれます。本稿では、TeXをPDFに変換するプログラム(dvipdfmx)を利用して、PDFファイルを出力する方法を解説します。TeXの出力にはテンプレートを用意し、必要な部分だけ書き換えて出力します。
-
2005/09/30
ServerSocketを利用した簡易HTTPサーバーの自作
ServerSocketを利用すると、パフォーマンスを無視すれば簡単にサーバーアプリケーションを作ることができます。本記事では、単純なHTTPサーバーの実装を例にして、ServerSocketの利用方法を解説します。
-
2005/09/29
自作楽器「MIDIテルミン」の製作
マウスをパッドの上でぐりぐりとドラッグすることで、連続音を発する不思議な自作楽器「MIDIテルミン」を製作します。自作楽器製作を通じてWindowsでのMIDI制御の方法についても解説します。
-
2005/09/27
画像を同じ特徴を持つ複数の領域に分ける方法
「領域分割」とは、1枚の画像を同じような特徴を持つ複数の領域に分割することです。本稿では、領域分割の一手法である「分割・統合法」を利用して、ビットマップ画像を同じような色の濃さを持つ領域に分割する方法を解説します。
-
2005/09/26
Struts-LayoutタグライブラリでリッチなUIを作成する
JSF(Java Server Faces)、Flex、Curlなど昨今のWebアプリケーションはリッチで、生産性の高いUIに注目が集まっています。本稿では、実績のあるStrutsのtaglibを拡張したStruts-Layoutで簡単にリッチなUIを作成する方法をご紹介します。
-
2005/09/22
CPUID命令によるCPUの性能・機能の把握
本稿ではインテル系のCPUに実装されているCPUID命令がどのように働いているかを考察します。CPUID命令を使用すると、CPUの性能や機能をソフトウェアから知ることができます。
-
2005/09/16
離散した点を補間してグラフを描画する方法
実験結果をグラフに表示する時、測定点をプロットしてから、その間を自在定規などで結んだ経験があると思います。本稿では、これを自動的に行うプログラムを紹介します。このような作業は「補間」(Interpolation)と呼ばれ、色々な方式があります。
-
2005/09/15
アドベンチャーゲームに活用できるフラグ管理のやり方
ゲームでは、その進行状況を「フラグ」と呼ばれるもので管理します。本稿では、シンプルなアドベンチャーゲームを作成することで、このフラグ管理の方法について解説します。
-
2005/09/13
Internet Explorerの認証パスワードとオートコンプリートの操作
Internet Explorerで、認証パスワードの記憶やオートコンプリートを有効にしていると、それぞれのデータがコンピュータに保存されますが、通常これらのデータを表示・操作することはできません。本稿では、これらのデータを一覧するサンプルを作成し、その操作方法を解説します。
-
2005/09/09
ブラウザによるイベントの取り扱いの違いを吸収する
JavaScriptはブラウザの種類によって、実装方法が異なることがあります。この違いを考慮して同じように動作するようにするテクニックを「クロスブラウザスクリプト」と言います。本稿では、Internet ExplorerとMozilla系ブラウザにおけるイベント処理の違いを吸収する方法を解説します。
-
2005/09/01
Windowsのサービス状態を表示するアプリケーションの作成
本稿では、System.ServiceProcess名前空間を使用して、ローカルコンピュータのサービス状態をチェックするアプリケーションを作成します。
-
2005/09/01
NHibernateを利用してSQLを書かずにデータベースにアクセスする方法
本稿では、「NHibernate」というオープンソースのプロダクトについて紹介します。NHibernateは、SQLを書かずにテーブルのデータとクラスをシームレスに変換させるO/Rマッピングを実現するため、コーディングの量を軽減することができます。
-
2005/08/31
Log4J コネクションプーリング対応JDBCAppenderでパフォーマンスを向上する
Log4Jに付属するJDBCAppenderはDBロギングのためのクラスですが、DBのコネクションプーリングに対応していません。本稿ではJDBCAppenderを拡張し、DBのコネクションプーリングに対応したカスタムのアペンダーを作成する方法を紹介します。