« ちょっと雑談 | トップページ | ユーザーオブジェクトのコード補完 »

2007年9月 8日 (土)

V0.9.0.14リリース

V0.9.0.14をリリースしました。V0.9.0.14からユーザーのスキーマオブジェクトのコード補完への対応を開始しました。下のイメージのように、Ctrl+Spaceキーなどでのコード補完時に、接続スキーマのユーザーオブジェクトが候補としてリストアップされるようになりました。

09014_1_2

テーブル、インデックス、ビューなどのスキーマオブジェクトの名前がリストアップされます。合わせて、「エディタオプション」ウィンドウに「支援機能・色」タブを追加しました。

09014_2

ここらへんの、画面構成は後で微妙に変わるかもしれません。デフォルトの配色とかも。

ところで、今リリースのユーザーオブジェクトの補完機能は微妙です。*スキーマオブジェクト名*しか補完できないので、例えば、テーブルの列やパッケージのメソッドを補完できません。とりあえず、この段階でリリースしました(従来のOracle標準パッケージや関数は今まで通り補完できます)。というのも、自スキーマのオブジェクトを補完すると、他スキーマのオブジェクトも補完したくるのが人情?で、そこらへんを考えてみようと思ったからです。で、実装の話ですが、他スキーマのオブジェクトを補完する場合、考えられる選択肢として、

  1. 接続時に全スキーマの情報を取得
  2. Ctrl+Spaceなどのコード補完時に毎回最新の情報を取得して表示
  3. 初回補完時に情報を取得してキャッシュ、次回補完時はキャッシュした情報を表示

と、まず、分類してみたのですが、1は明らかに、パフォーマンスの問題が発生するので却下で。2と3のどっちにしようかなと。2にすると、今現在、コード補完時に標準関数などは、関数名だけでなく、引数のリストも表示されるようになってるが、カタログビューALL_ARGUMENTSを使ってリストアップするすべての関数のパラメータを毎回解析するのは、おそらく、負荷がかかりすぎなので、関数名だけ表示して、パラメータのリストはCtrl+Shift+Spaceキーなどによるパラメータ表示時にだけ表示するとか。

他にも、情報を動的に取得しにいくと、現在、ローカルのdefinition.xmlに定義されているOracle標準関数やパッケージを動的に取りにいって、このファイルを廃止??後、パブリックシノニムの問題への対応の問題(他スキーマのオブジェクトにアクセスするのに、一々、スキーマ名を付加させるのを強制させるのもあれだし・・)。

とか、ちょっと煮詰めます。

« ちょっと雑談 | トップページ | ユーザーオブジェクトのコード補完 »

DBXInspector」カテゴリの記事

コメント

コメントを書く

(ウェブ上には掲載しません)

トラックバック

この記事のトラックバックURL:
http://app.f.cocolog-nifty.com/t/trackback/1497665/39651837

この記事へのトラックバック一覧です: V0.9.0.14リリース:

« ちょっと雑談 | トップページ | ユーザーオブジェクトのコード補完 »

自作ソフトウェア

無料ブログはココログ

メモ