« 2006年09月 | メイン | 2006年11月 »

2006年10月 アーカイブ

2006年10月03日

Fedora Core5

Fedora Core5で作るネットワークサーバー構築ガイドを購入しました。
SOBA Project, Inc.でホスティングしているサーバーはLinux系のものが多いのですが、この本は非常に便利です。
一般的な本に書かれているWebサーバーやメールサーバーの立て方のみならず、RAID5やVPN、LDAPについても詳しく書かれています。


fc5.JPG

2006年10月12日

Yahooポイント

Yahooで買ったものにポイントがつくサービスがあるのですが、ポイントはいつかは使用期限が来てしまいます。私のYahooポイントも12月末に切れるようなので、Yahooで物を買わないといけなくなりました。
それで見つけたのがこれです。

私はいわゆるスーパーカーブームのときに小学生だった世代です。
これは京商のモデルですが、シフトノブやシートベルト、エンジンにいたるまで精巧によくできています。

私の場合、Yahooポイントが切れることがなければ、物を買わなかったと思うので、こうゆうビジネスはよくできていると思います。よい意味で人に購買意欲をわかせるような物の売り方、そして製品を作らないといけないと思います。

miura.JPG

2006年10月18日

出張

本日は某所に出張しました。
開発の仕事をしていると出張は少ないですが、たまに外に出るのは気分転換にもなるし
お客様の声を聞くのは、開発のためにも非常に役に立ちます。

2006年10月19日

getLocalHost()

Javaで次のような関数呼び出しを行ったとします。

try {
System.out.println("My address=" + java.net.InetAddress.getLocalHost().toString());
} catch (UnknownHostException e) {
e.printStackTrace();
}

私のメインのマシンでは、正常にホスト名を表示します。
ところが、ホスト名を日本語にすると、UnknownHostExceptionをはくようです。
このあたりはJavaの実装が甘いのではないかと思ったりもします。

解決方法として、Java1.4から導入されたjava.net.NetworkInterfaceクラスを用いて、
まず、NICを取得する。
java.util.Enumeration enuIfs = NetworkInterface.getNetworkInterfaces();
while (enuIfs.hasMoreElements())
{
NetworkInterface ni = (NetworkInterface)enuIfs.nextElement();
}

次に、それぞれのNICに対して、IPアドレス、ホスト名を取得する
java.util.Enumeration enuAddrs = ni.getInetAddresses();
while (enuAddrs.hasMoreElements())
{
InetAddress in4 = (InetAddress)enuAddrs.nextElement();
in4.getHostAddress();
in4.getHostName();
}

こうすれば、当然ながらExceptionは発生しません。
ただし、getHostName()では日本語のホスト名ではなく、やっぱりIPアドレスが取得されます。

2006年10月26日

eclipse

eclipseは間違いなく最強のJava開発ツールです。
私の周りでは、少し前までは、emacs + javac + jdb という玄人っぽい開発者も見かけましたが、
現在SOBA Project, Inc.ではほとんど全員がeclipseを使っています。
SOBAはほとんどのコードはJavaで書かれているので、eclipseの恩恵は計り知れません。
私は、ブレークポントを設定しておいて、一行おきにデバッグするノーマルなデバッグが好きですね。
これで、開発初期のほとんどの不具合は回避できます。
もう少し複雑な不具合の場合、JProfilerなどのプロファイラーを使用します。
Javaで参照が残ったままだと、メモリリークする可能性がありますが、JProfilerを使用すると簡単に見つけられます。
この主のツールは英語版のみでほとんどOKです。
日本語訳をたまに見ますが、よく訳を間違えていますね。

eclipse.JPG

2006年10月27日

コーディングルール

SOBA Project,Inc.では一定のコーディングルールを決めています。
基本はeclipseのデフォルトformatterを使用しますが、一部分だけSOBA独自の決まりがあります。
たとえば、TABは使用せず、必ず、インデントは4行スペースにしています。TABそのものは便利ですが、エディターによっては崩れることもあるので、SOBAでは使用しないようにしています。
その他、多少の規則を決めています。
コーディングルールを定着させておくと、デバッグなどで他人が書いたソースを読むときも可読性が上がるのでよいです。

About 2006年10月

2006年10月にブログ「SOBA開発日記」に投稿されたすべてのエントリーです。新しい順に並んでいます。

前のアーカイブは2006年09月です。

次のアーカイブは2006年11月です。

他にも多くのエントリーがあります。メインページアーカイブページも見てください。

Powered by
Movable Type