Eclipse凄すぎます , 窓の手 という定番ソフトに興味を持ちました
Eclipseの日本語化は とっても簡単に実施できる模様。というか最初の配布の時点から 国際化パックを同梱して配布すればよいのに、と思いました。つぎに、Strutsとの連携が どのくらい自動化できるのかが興味深い点です。これはまだ調査してません。
とりあえず前に見つけた情報ページは下記
Eclipse環境 日本語化インストール http://www.ne.jp/asahi/smatra/branch/samples/j2se/Eclipse/env/jainstall/index.html
Eclipse環境 Easy Struts設定 http://www.ne.jp/asahi/smatra/branch/samples/j2ee/Eclipse/plugin/Struts/index.html
Eclipseを上司の人見さんたちと操作していて、『これはものすごいなぁ』との結論を得ました。次の仕事では ほぼ確実に Eclipseを利用することになるでしょう。しかしこれは オープンソースの成果物がうんぬんというシロモノではなく、むしろ単に『製品レベルの とある商用パッケージソフトについて、ライセンスをオープンソースに変更しただけのもの』であるように思えて仕方がありません。ものすごく品質が高いです。機能性も充分です。しかしこれは草の根の手作り感は あまり感じられません。プロが作った単なる商用パッケージソフトって感じしか感じられません。う~む。でもありがたいから使ってしまうのであった。 Eclipseで割を食うのは JBuilderかなぁ なあんて考えたりしました。
スガさんのツッコミ eclipse は JAVA Developer 11 月号の特集を見て、私もちょっと使ってみました。いがぴょんさんが挙げられていること以外では、JUnit との統合やScrap も便利な機能ですね。試してはいませんが、CVSのクライアント機能もあるようで。……でも、結局今まで通りの方法でプログラミングしています (^^;
テキストエディタで書いて、bat やマクロから Ant を実行。
リファクタリング支援機能などが必要なときだけ eclipse を起動、
という感じになっています。
高相さんのツッコミ Subject: [igapyon:01037] Eclipse 続報こんにちは
むしろ単に『製品レベルの とある商用パッケージソフトについて、ライセンスをオープンソースに変更しただけのもの』
Eclipseで割を食うのは JBuilderかなぁ なあんて考えたりしましたまさに、そーですね。私の会社はとある業界向けのパッケージソフトを作っていますが、「競合しているソフトがオープン化されたら」と考えるとちょと怖くなります。オープンソース化の流れは良いとは思うのですが...
碇さんのツッコミ Subject: [igapyon:01038] Re: eclipse碇と申します。> # ちなみに ViVi というエディタを使用しています。> # http://vivi.dyndns.org/> # eclipse のコード補完機能を考慮しても、vi モードの便利さを捨てられません。ぜひgvimを試してみるとよろしいかと。 win版 Mac OSX版もあります。ただしtar.bz2なのでちょっと注意。衝撃をうけますよ>gvim
使ったことありませんが、ctagsという便利なものもあるみたいです
vと^Wvとハイライトシンタックスが便利。
eclipseはちょっと見たんですが、なにやらtomcat pluginとかC# plugin とかあるみたいです。眺めただけですけど魅力満載碇 永志
やまぐーさんよりツッコミ件名 : 【ツッコミ】いがぴょんの日記 10/30 To:いがぴょんさんはじめまして、ハンドルネーム やまぐーです。 Eclipse続報で『製品レベルの とある商用パッケージソフトについて、ライセンスをオープンソースに変更しただけのもの』と推定されてますが、そういうものです。もともとIBMのVisual Age for Java だったと思います。なもんで、たしかEclipseになる前のはIBMのAlphaWorksからダウンロードできたような気がします。ここらへんは不正確なのでつっこまれるかも・・・でこれの後継がWebSpereの開発ツールでして、これからSwing等のGUI作成機能を省いてIBMがeclipse.orgに提供したものがEclipseです。また、GUI作成機能もそのうちEclipseにくっつくとかしないとか>Eclipseで割を食うのは JBuilderかなぁ JBuilderで割を食ったのがVisual Age for Javaだったわけで、仕返しにただでくばったのかもしれませんね。僕の勘違いが入っている可能性もありますので、他の人からのツッコミも参考にしてください。以上です。よろしくお願いします。
ここからいがぴょんみなさま、怒濤のようなツッコミを どうもありがとうございました。また Java界の有識者の方々が 結構 Eclipseに注目しているという事実もわかりとても参考になります。(寄らば大樹の陰的発想ですなぁ…)
関連する日記
コマンドプロンプト を自らレジストリ操作はせずに ツールを使って操作した方が簡単なような気がしてきたので、定番ソフトに手を出してみることにしました。
これが結構面白そうです。でも あんまり深入りするのは止そうとも思いました (だって仕事忙しいんだもの) と言いつつ 既にかなり気に入ってきてしまいました。さしあたり コマンドプロンプトもさることながら、 『自動実行』タブは重宝しそうです。世のソフトは勝手にレジストリ書き換えて自らを自動実行するものが多いですから。(スタートメニューに入っているモノはかわいいものです。それにスタートメニュー内だったらユーザがデフォルトで削除可能ですから…)あと アンインストール情報の削除も重宝しそうです。…世の定番ソフトってのも たまには試してみるものですねぇ。反省しました。
私の入っているビルの一階が 『蔵人』 という飲食店に変わりました。(私の会社は二階にあります)メニューは ちょっと高めの価格設定になる模様です。今日から営業開始とのこと。ちょっと楽しみにしていたりします。普段 私は うれし家 本町店 というお店で昼飯を食べるのがデフォルトなのですが、蔵人オープンセール中は ちょっと 一階の店 に行ってしまいそうな予感がします。(位置は 社員食堂のような場所にありますからねぇ)
久しぶりに 和音(子ども)のページを更新しました。
ちょっと必要があって、テーブルの内容を全て抜き出すプログラムサンプルを作成しました。さしあたりCSVのダブルクオーテーション無しで作ってみました…。ちょっと自信無いので載っけてみました。バグっていたらどなたかツッコミ下さい (苦笑)
System.Data.SqlClient.SqlConnection conn =
new System.Data.SqlClient.SqlConnection(
"server=iga-pc1;database=dbsample;UID=igapyon;PWD=pass");
try
{
conn.Open();
System.Data.SqlClient.SqlDataReader reader = null;
System.IO.StreamWriter writer = null;
try
{
System.Data.SqlClient.SqlCommand command =
new System.Data.SqlClient.SqlCommand("SELECT * FROM tblperson ORDER BY username", conn);
reader = command.ExecuteReader();
writer = new System.IO.StreamWriter(
"tblperson.txt", false, System.Text.Encoding.Unicode);
for(;reader.Read();)
{
Object[] objResult = new Object[100];
int fieldCount = reader.GetValues(objResult);
for(int index = 0; index < fieldCount; index++)
{
if(index != 0)
{
writer.Write(',');
}
writer.Write(objResult[index].ToString());
}
writer.Write(writer.NewLine);
}
}
finally
{
if(reader != null)
{
reader.Close();
}
if(writer!=null)
{
writer.Close();
}
}
}
catch(System.Data.SqlClient.SqlException ex)
{
Console.WriteLine(ex.ToString());
}
finally
{
conn.Close();
}
2003.08.19 追記 ここでSystem.Data.SqlClient.SqlCommand をクローズしていない点に不審を感じる人もいることでしょう。私もそうでした。ところがどっこい現状 SqlCommandには Close()メソッドは無いのです。強いて言えば Dispose()メソッドはありますが、呼び出しは必須ではない模様です。Javaで慣れているとこの点 とても気持ち悪いです。
関連する日記
一日に一度という処理のサンプルを下記にメモ。
const int TARGET_HOUR = 17;
const int TARGET_MINUTE = 06;
for(;;)
{
System.DateTime current = System.DateTime.Now;
System.DateTime target = new System.DateTime(
current.Year, current.Month, current.Day, TARGET_HOUR, TARGET_MINUTE, 0);
Console.WriteLine("カレント:" + current.ToString());
Console.WriteLine("ターゲット:" + target.ToString());
if(current.CompareTo(target) > 0)
{
target = target.AddDays(1);
Console.WriteLine("新ターゲット:" + target.ToString());
}
System.TimeSpan span = target.Subtract(current);
Console.WriteLine("待ちます:" + span.ToString());
System.Threading.Thread.Sleep(span);
}
.