torutkのブログ

ソフトウェア・エンジニアのブログ

2007-01-01から1年間の記事一覧

Javaでビットフィールド

Cではよくバイナリデータのフォーマットでビットフィールドを使いました。身近な例では、TCP/IPのヘッダーなんかで使用されています。Javaでも、こうしたデータ構造を扱うときにはビットフィールドの処理を記述する必要があります。しかし、Javaはこのビット…

Cプログラマーは整数値が好き

C++

たまたま試験で問題のあったソースを見ていると、あちらこちらで0、1、2、3、・・・といった即値と比較するコードが散見されました。1が成功・0が失敗、とかその他いろいろな状態をなんでも0、1、2、・・・といった整数値で表しています。また、for文が…

ソフトウェアテストの直交表に関する書籍

ソフトウェアテストHAYST法入門 品質と生産性がアップする直交表の使い方作者: 吉澤正孝/秋山浩一/仙石太郎出版社/メーカー: 日科技連出版社発売日: 2007/07/26メディア: 単行本購入: 3人 クリック: 86回この商品を含むブログ (21件) を見る直交表をソフトウ…

16進数文字列から整数型への変換

Javaだと結構悩みます。 ここでは4桁の16進数を整数型に変換する例で考えてみます。 java.lang.ShortクラスのparseShortメソッドを使う java.lang.Shortクラスのdecodeメソッドを使う まず標準APIの範囲では上記が見つかりました。 // 方法 1. short value1 …

セミコロンは型宣言

Java読書会で「Java言語仕様(第3版)」を読んでいるので、文法定義についても詳しく見ています。トップレベルの型宣言として、クラス宣言、インタフェース宣言、およびセミコロンの3つが定義されています。 TypeDeclaration: ClassDeclaration InterfaceDec…

今月のJavaセミナー(7月)

既に終わってしまいましたJava読書会、7月14日(土)に開催でした。 日本オラクル | Integrated Cloud Applications and Platform Services | Oracle 日本 7月18日(水)18:30〜20:30開催 今回はJavaFXおよびGlossitopeの2テーマです。Glossitopeはこの案内で…

log4jの行方?

ちっちゃなプログラムをいくつも作る場合に、ロギングのためだけにlog4jを別途入れるというのも手間だし、ましてcommonsなんてかぶせてさらにJARを増やすのはやりたくない。ということで、普段はJava標準のロギングAPIを使っています。ですから、あまりlog4j…

64bit版Javaの実力

Windows Vista 64bit版上で、JDK 1.6 x86/x64版をインストールして、64bit版の能力を探ってみました。 実験環境の構成 CPU AMD Athlon 64 x2 4200+ メモリ 2GB OS Windows Vista Ultimate 64bit JVM Sun JDK 1.6 U2(1.6.0_02) 64bit長のデータアクセス 2つの…

JDK 6 Update2リリース

http://java.sun.com/javase/ja/6/download.html

SwingコンポーネントへWindows ExplorerからファイルをDrag & Drop

PDFファイルの結合・分割のツールをJavaで作成する際、SwingのJListにOSネイティブのツール(Windwosの場合はExplorer)からファイルをDrag & DropするGUIを設けようとしました。 しかし、JListやJTableはデフォルトではDropに対応していないことが判明しま…

JSR-296 Ver.0.50リリース

https://appframework.dev.java.net/ 従来のApplicationContextのシングルトンを置き換える新しいscopedなApplicationシングルトンを導入し、ApplicationContextはApplicationの属性となった(1つのJVM上に複数のApplicationを動かせるかな?) ApplicationC…

Wireshark(旧Ethereal)でTCP/UDPのチェックサムがエラー

自宅PC(nForce 570チップセットのNIC)でWiresharkのキャプチャーをすると、PCから出力するパケット(TCP/UDP)がchecksum errorとなっていました。 NICの機能でchecksum offloadingを有効にすると、TCP/UDP/IPパケットのチェックサム計算をOS側ではなくNIC…

JSR-296 Ver.0.43リリース

https://appframework.dev.java.net/ @Action selectedPropertyアノテーションのサポート ResourceManager platform propertyサポート

今月のJava関連セミナー(6月)

#最大のイベントJava読書会は終わってしまいましたが・・・ 開催日が重なるイベントが多いですね。 IDG JavaWorld DAY 2007 6月19日(火) 10:00〜18:15、参加費:3000円 https://www.idg.co.jp/expo/jwday/2007/ 基調講演はScott W.Ambler氏 IBM Tech Brief…

JRubyをつかってみよう

話題だけは耳にしていたJRuby、Java読書会の2次会での熱い議論もあってちょっと使ってみようと思いました。 JRubyのセットアップ(Windows編) まず、JRubyを入手するところから。 http://jruby.codehaus.org/ 上記URLからDownloadのリンクをたどると、ディ…

昨日(6/9)はJava読書会の日でした

Java言語仕様はさすがに難物でした。 メモ 名前:プログラム中で宣言された実体を参照するために使われるもの 単純名 限定名 名前と識別子は別物、宣言中で記述するのは識別子 シャドーイングと隠蔽とオブスキュアは使い分けよう コンストラクタと型変数はメ…

JSR-296 Swing Application Framework 0.42リリース

https://appframework.dev.java.net/intro/index.htmlサンプルにJavaSE6依存コードがあり、特にMac OS Xな人から指摘があり、J2SE5.0でも動くように修正が入りました。その他サンプルにいくつか手が入っています。 本体は、Taskのドキュメントを改善した点、…

Java読書会「Java言語仕様第3版」6/9(土)開催

http://www.javareading.com/bof/ Java言語仕様 第3版 (The Java Series)作者: ジェームズゴスリン,ガイスティール,ビルジョイ,ギッラードブラーハ,James Gosling,Guy Steele,Bill Joy,Gilad Bracha,村上雅章出版社/メーカー: ピアソンエデュケーション発売…

Model-View-Presenterパターン

ポストMVCモデルとか、修正MVCモデルとか言われることもあるMVPパターンについて、見よう見まねでModel-View-PresenterパターンでGUIプログラムを実装してみました。ViewがModel・Presenterなしに単独で動くので、見栄え先行でプログラミングしていくときに…

Cygwin Xサーバにリモート(Solaris)のXプログラム表示

SolarisマシンとWindowsマシンでディスプレイ共用なので、Solaris側の操作をする度にディスプレイの入力を切り替え、キーボードとマウスを切り替えとちょっと面倒です。そこで、CygwinのX11を入れてリモート(Solaris)のGUI操作をWindowsマシン上で行ってみ…

書籍「Javaネットワークプログラミングの真髄」

Javaネットワークプログラミングの真髄作者: エズモンド・ピット,岩谷宏出版社/メーカー: ソフトバンク クリエイティブ発売日: 2007/04/28メディア: 大型本購入: 9人 クリック: 100回この商品を含むブログ (25件) を見る先月購入し、通勤のお供としてしばら…

EclipseでOCamlプログラミングができる・・・

統合開発環境なんて、特定の言語しか対応しないから真のプログラマーのツールとしては不適切だよね、と思っていたのですが、なんとEclipseにOCamlの開発機能が出ているようです。新・たけぞう瀕死の日記よりEclipseはほとんどEmacsなみの汎用ツール化してき…

JSR-296 Swing Application Frameworkの0.41がリリース

https://appframework.dev.java.net/ 先週0.40が出たばかりですが、0.41のリリースです。今回は大きな変更はないようです。 https://appframework.dev.java.net/servlets/ReadMsg?list=users&msgNo=542 変更点メモ Application, ResourceManager, ActionMana…

JSR-296 Swing Application Framework 0.40の変更点と追従

今回のVer.0.40は、大幅な非互換変更が含まれています。 Hans Muller氏のuser@appframework...への投稿メールより変更点を抜粋します。 https://appframework.dev.java.net/servlets/ReadMsg?list=users&msgNo=539 変更点メモ Taskの入力操作防止の仕組みを…

NetBeans 6 Preview(M9)でのソースコードの文字コード

先に既存のソースをNetBeansのプロジェクトに取り込んでみたときに、日本語文字が化けていました。そこでNetBeans上で新規ファイルを作成し外部エディタでそのファイルを開くとUnicodeとなっていました。 調べてみると、プロジェクトごとにソースのエンコー…

NetBeans 6 Preview(M9)でのJavaソースの修正箇所表示

Subversion管理下にあるソース(JSR-296の実験コード)をデバッガで追いたくなって、NetBeans 6(M9)に既存のソースからプロジェクトを生成しました。そして、ソースを開くと、左端と右端にカラフルなマーキングがあり、マウスを載せると行を削除したとか修…

JSR-296 Swing Application Framework 0.40リリース

https://appframework.dev.java.net/作者のHans Muller氏の0.40リリースに関する投稿メールは以下URL https://appframework.dev.java.net/servlets/ReadMsg?list=users&msgNo=539 Taskが変更大 まずコンストラクタに修正が入り、引数なしか、リソースマップ…

AspcetJ 1.5のサンプルに書き換え

なぜかAspectJでGoogle検索するとトップに出てしまうページAspectJが中途半端なままでは・・・、ということでAspectJ1.5に対応する記述に更新しました。「AspectJの第一歩」ページも以前からのAspectJ言語記述、アノテーションを使ったJava言語記述の両方を…

Java Standard Edition 6時代のHello worldプログラム

いままで自分のWebページ上に書き散らしてきたものを少し整理し完成度を上げようと思い立ちました。 まずはJ2SE 1.4用のHello Worldのプログラムと記事を、Java SE 6版に刷新しました。 Java Platform, Standard Edition 6(Java SE 6)時代のHelloWorldSwing…

タイマ機能はjava.util.Timerよりjava.util.concurrent.ScheduledExecutorServiceを好め

WebページのTimerを使う。周期的に実行したり、一定時間後に実行したりに、ScheduledExecutorServiceを使ったサンプルを追加しました。 concurrentパッケージを使うと、周期実行の一時停止・再開も簡単に実装できます。これは便利だ。