torutkのブログ

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

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

'ant'は、内部コマンドまたは外部コマンド、操作可能なプログラムまたはバッチ ファイルとして認識されていません

Apache Ant 1.8.1をWindows 7にインストールして、今更ながら題名のとおり悲しいエラーに出会ってしまいました・・・。 Cygwinのコマンドから実行できていたのですが、Windowsのコマンドプロンプトから実行するとantが見つからないというエラーになりました…

SourceForge.JPにプロジェクトを作成してみる

自分のWebサイトで公開していた以下を、以前からSourceForge.JPに移せないかと思っていました。 CygwinでJavaを快適に使う で、やっと昨日アカウントを作成、プロジェクトの申請をしました。申請は受理され、以下のプロジェクトがオープンしました。 http://…

Cygwinのcygpathでエラー

Cygwin 1.7.6で、cygpathコマンドがエラーとなるケースが発生しちょっと困ってしまいました。 $ ls dist/NbmDownloader.jar dist/NbmDownloader.jar $ cygpath -ws dist/NbmDownloader.jar cygpath: cannot create short name of dist\NbmDownloader.jar $ C…

Windows 7でCygwin上で作成したディレクトリがCygwin以外で実在しない(VirtualStore)

Windows Vista以降で発生する現象ですが、Vistaで問題に直面したことはなく、Windows 7で今日初めて問題に直面しました。Cygwinのbash上で、C:\Program Files\Javaディレクトリ下にantのディレクトリを作成しました(tarで展開)。しかし、なぜかantの実行で…

新しい課題図書で開始

明日開催のJava読書会から、新しい課題図書「The Art of Multiprocessor Programming 並行プログラミングの原理から実践まで」を読み始めます。詳しい内容・申し込みは以下URLをご覧ください。 http://www.javareading.com/bof/The Art of Multiprocessor Pr…

サブシステムとコンポーネントとパッケージとファイル

ふとしたことがきっかけで、あらためてソフトウェア開発の概念をふりかえり、整理したくなりました。 クラスベースのオブジェクト指向プログラミング言語を使い、設計もクラスが中心となる場合を想定します。関数型プログラミングではなく、Lispでもなく、CO…

Java開発環境(ユニットテスト編)

ソフトウェアの品質を確保するということは、地道にひとつひとつ積み重ねていくことしかありません。品質の積み重ねなくして作り上げられたソフトウェアは砂上の楼閣でしかありません。しかしながら、往々にして地道な作業はスキップされ、砂上の楼閣を作っ…

Java読書会BOF次の課題図書 投票同数

Java読書会BOFでは、8月からの読書会で新しい書籍を選ぶための投票を実施しましたが、締切日の7月31日深夜時点で、以下の2冊が投票同数で並ぶという事態になりました。Clean Code アジャイルソフトウェア達人の技作者: Robert C. Martin,花井志生出版社/メー…

ログとトレース

システムにおける「ログ」の扱いは、思ったより重要度が高いのですが、システム設計時点ではなかなか掘り下げて設計されずに積み残ってしまいがちな機能です。アプリケーション開発者の気まぐれなデバッグログではなく、システムに発生しえる様々な障害(機…

Return to Java(今度は本当)

id:torutk:20100331での想定が外れ、関わっていたプロジェクトがC#での開発となってしまいました。技術面の優劣以外の理由が主でしたが、仕方なく公私ともどもC#技術習得に全面シフトした1ヶ月でしたが、そのプロジェクトから外れることになってしまいました…

JavaからPDFを扱う(iTextからPDFBox)

何年か前、JavaからPDF文書を扱うには、iTextというライブラリが定番でした。昔の日記にも少し記述していました。id:torutk:20060724今、iTextを見ると、バージョンが5.0と随分とアップしており、ライブラリのパッケージ名も、com.lowagie.toolsから、com.it…

Java開発環境最新状況

今年6月は、NetBeansとEclipseそれぞれ最新バージョンのリリース月となりました。開発ツールは手に馴染んだものが効率がよいし、どちらも高度に発展しているので、好きな方を使えばよいというところとは思います。が、どっちがいいの?と聞かれたときに、一…

ボクらのScala

会社の帰路、書店に寄ったときに見つけた本です。ボクらのScala ~ 次世代Java徹底入門作者:浅海 智晴出版社/メーカー: SBクリエイティブ発売日: 2010/06/23メディア: 単行本現在、Java読書会BOFでは、Scala本を読んでいます。 今度のJava読書会BOFは、Scala…

比較(IComparableとIComparerとComparison)

C#

Effective C# 2nd Edition, Item 31 "Implement Ordering Relations with IComparable and IComparer"を読んで、さらにComparisonが登場して、「うむむ」。 英語ネイティブでないプログラマーにはいじめとも思われる.NET Frameworkライブラリです。まず、自…

C#言語仕様の驚異(new)

C#

無謀にも、C#歴2週間でいきなりEffective C#(2nd Edition)から読みはじめています。この本のItem 23、"Understand How Interface Methods Difer from Virtual Methods"を読んで、メソッドの修飾子に「new」を使うという凄い例を初めて見たのでびっくりしまし…

GUIアプリケーションのパターン

C#

C#でWPFを使ったGUI(WPF)アプリケーションの設計において、MVVM(Model-View-ViewModel)と呼ばれるパターンがあります。 THE MODEL-VIEW-VIEWMODEL (MVVM) DESIGN PATTERN FOR WPF 複雑なGUIの場合に、ウィンドウに貼られる多数のコントロールを、階層化し…

C#(.NET)用のAspect-Oriented Programmingツール

C#

C#用にもいくつかのAOPツールが登場してきましたが、開発が停止してしまったものが多く、新しいバージョンに対応したアップデートがされているものは少ないようです。 PostSharp 商用製品で、最新版の2.0ではVisual Studio 2010対応(.NET 4.0)予定。(現時…

契約による設計

C#

C#のバージョンによる機能追加について調べているときに、クラス名Contractが出てきたので、契約による設計(Design By Contract)の機能がついに入ったようです。言語仕様ではなくクラスライブラリとしての追加らしいですが、詳しく解説しているブログがあ…

やけ買い

いくつかの要因が重なって、コンピュータ技術書籍を一気買いしてしまいました。 Oracle OTN会員(無償)で翔泳社の10%割引購入ができますが、4月からしばらく翔泳社のオンラインサイトが改修中でやっと購入が可能になりました。 "failed to return to Java"、…

DBマガジンが休刊

コンピュータ専門雑誌がまた一つ休刊となります。 DBは専門外だったので、あまり買ったことはない雑誌なのですが、この雑誌の連載記事をまとめた書籍は幾冊か買っています。書籍・雑誌というメディアでなく、インターネット上の情報だけで果たして・・・と思…

.NET Frameworkのメモリ管理と断片化問題(.NETアプリケーションを長期連続実行するのは要注意)

C#とJavaの言語選定にあたり、実行環境の比較をするため、ガベージコレクタについて調べていました。.NET Frameworkのガベージコレクション方式は世代別GCですが、Javaとは随分異なっています。特に顕著に異なっているのがLOH(Large Object Heap)と呼ばれる…

例外処理機構の使い方

最近、例外処理機構をアプリケーションの中でどのように使うかの議論をあちらこちらで見かけるようになりました。複数のプログラマで共同開発をするプロジェクトにおいては、Javaに限らず、例外処理機構を持つプログラミング言語を使う場合、エラー処理につ…

Java書籍の選び方*1

ソフトウェア開発プロジェクトに加わるプログラマーは、必ずしも全員が使用するプログラミング言語に習熟しているわけではないのが発端です。 Javaプログラミングに習熟する一環として、専門書籍を読んで学ぶことになりますが、その際どんな本を薦めるかは常…

書籍購入(不本意ながらC#関連第1冊目)

The Root of .NET Framework作者: 荒井省三出版社/メーカー: ソフトバンククリエイティブ発売日: 2008/12/25メディア: 単行本購入: 10人 クリック: 173回この商品を含むブログ (41件) を見る開発言語選定の一環として、.NET Frameworkがどのような仕組みで動…

複数リリースを持つソフトウェアの構成管理課題

複数のプロジェクトで共通に利用するソフトウェア(フレームワークや共通ライブラリ)を管理する場合の構成管理上の課題を整理中です。解決手段の検討はまた別途・・・ 想定ケース 最初のプロジェクトでは、共通ソフトウェアはアプリケーションと一体で開発…

エンタープライズシステムの開発言語選定の一考察(C#とJava)

アーキテクチャ設計の一部に、プログラミング言語の選択があります。選択に関わるのは仕事では10年振り(うん? ちゃんと数えると13年か・・・)です。3月から下調べを開始して、可能な限り公平に。 もちろん人間の判断なので、主観が大きく関与せざるを得ま…

NetBeans 6.9(続々)

随分昔に作ったJ2EE 1.4の入門的サンプルを、JavaEE 6で焼きなおしています。なお、JavaEEといってもWebではなくリモートEJBです。EJBについては、J2EE1.4の頃に比べてずいぶんと簡潔に記述できるようになっています。その分、裏ではいろいろ動いているので…

お金や人数が絡めば絡むほど、判断基準は政治的になる

いろいろな意味で、利害関係者が絡んでくるため、数人のプロジェクトでは問題にならない「思わぬこと」が発生し、ただただ驚くばかり・・・。

書籍購入

そこそこに大掛かりなプロジェクトにおいて、アジャイルな開発をするための知見を得るため、書籍を購入。でも積読がたまりにたまり、GW中に読みきれないかもしれない。アジャイル開発の本質とスケールアップ 変化に強い大規模開発を成功させる14のベストプラ…

NetBeans 6.9 Beta(続)

Windows Vista上でNetBeans 6.9 Betaを入れて触り始めています。 フロッピードライブに不要なアクセスが発生するバグ 最初の問題は、頻繁にフロッピーディスクにアクセスにいくため、アクセス音が気になることでした。新規バグか検索したところ、NetBeansのB…