ログイン
検索
メインメニュー
開発者ブログ
ChangeVisionメンバーズ分布マップ
フォーラム一覧   -   トピック一覧
   旧JUDE/Community, Professionalベータ版へのご意見、ご感想
     C#生成の不具合?
投稿するにはまず登録を

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 トピック
ゲスト
投稿日時: 2009-3-3 20:41
C#生成の不具合?
ゲストの「ゲスト」さんからの投稿です。
---
C#/C++への対応を以前から待ち望んでいました。

C#のコード生成を評価中ですが、
<不具合?>
型名のstring(小文字)が認識されず、クラスが追加されてしまう
List<>とかを使うと以下のようにおかしなusingが出力される
using System.Collecions.Generic.List;

<今後の対応希望>
自動プロパティ対応(以下のコードが一発で出れば最高)
public string Message {get; private set;}
メソッドのテンプレート対応(現在は名前欄で<T>を書いてます)
public void Func<T>(T param) ...
partialクラス対応(これは簡単では?)
クラス名やメソッド名の右に{を出したい

今後もC#/C++の対応宜しくお願いします。
ゲスト
投稿日時: 2009-3-4 10:05
Re: C#生成の不具合?
ゲストの「ゲスト」さんからの投稿です。
---

追加でC#コード生成のおかしい点について、
属性でステレオタイプのプロパティを付けるとプロパティコードが生成されます。例えばstring型のMessageを定義すると、そのコードは、
public string Message
{
get
{
return Message;
}

set
{
Message = value;
}
}
となります。ビルドは通りますが、これでは全く動作しません。
以下のようなコードを生成しなければおかしいです。
private string message;
public string Message
{
get
{
return message;
}

set
{
message = value;
}
}

ちゃんとテストしているんでしょうか???
ちなみに評価しているのはPro5.4.1です。

あと、コード生成時に上書きしかできないのですが、これだと
すでに生成したコードに手を加えていた場合、全て消えてしま
いますよね。ユーザが書いたコードを消さないようなマージ
機能も必須だと思います。

期待していますので対応宜しくお願いします。
joba
投稿日時: 2009-3-5 10:30
開発者
登録日: 2006-4-27
居住地: Fukui
投稿: 597
Re: C#生成の不具合?
不具合の報告と要望のご連絡、ありがとうございます。

引用:
<不具合?> 型名のstring(小文字)が認識されず、クラスが追加されてしまう

恐れ入りますが、あいにく弊社では、ご報告の現象を再現することができませんでした。(バージョン5.4.1にて、クラス図のクラスの属性、操作、操作のパラメタの型に、図上、プロパティビューからstringを設定して試しました)お手数ですが、詳しい再現手順を、不具合報告先、または本フォーラムにてお知らせください。

引用:
List<>とかを使うと以下のようにおかしなusingが出力される
using System.Collecions.Generic.List;

こちらは、C#スケルトンコードの作成で、名前空間のみ出力されるべき部分に、クラス名が不要に含められる不具合です。ご迷惑をおかけして大変申し訳ありません。こちらは、次期リリースにて修正致します。
不具合情報ページに掲載しました。

引用:

<今後の対応希望>
自動プロパティ対応(以下のコードが一発で出れば最高)
public string Message {get; private set;}

将来[C#3.0の自動プロパティとしてプロパティを出力する](仮)等のオプションを追加し、以下のようなコード出力に対応したいと存じます。
public string Message {get; set;}
また、現在非対応のset,getの可視性の設定についても、今後別途検討したいと思います。

引用:

メソッドのテンプレート対応(現在は名前欄で<T>を書いてます)
public void Func<T>(T param) ...
partialクラス対応(これは簡単では?)
クラス名やメソッド名の右に{を出したい

ご要望としてお預かりしました。
この度は、報告と要望のご連絡、誠にありがとうございました。
joba
投稿日時: 2009-3-5 10:38
開発者
登録日: 2006-4-27
居住地: Fukui
投稿: 597
Re: C#生成の不具合?
追加の報告と要望のご連絡、ありがとうございます。

こちらもJUDEの不具合でございます。ご迷惑をおかけして大変申し訳ありません。こちらも次期バージョンにて修正致します。(不具合情報ページに掲載しました)
次期バージョン以降、プロパティ名が大文字でない場合、JUDE側のソース出力仕様の関係で以下のように_を付加して出力します。

private string _message;
public string Message
{
get
{
return _message;
}

set
{
_message = value;
}
}

引用:
あと、コード生成時に上書きしかできないのですが、これだとすでに生成したコードに手を加えていた場合、全て消えてしま
いますよね。ユーザが書いたコードを消さないようなマージ
機能も必須だと思います。
ご意見、ありがとうございます。ご要望としてお預かりしました。

ご報告、誠にありがとうございました。
ゲスト
投稿日時: 2009-3-5 15:05
Re: C#生成の不具合?
ゲストの「ゲスト」さんからの投稿です。
---

早々のご連絡・ご回答ありがとうございます。

引用:
引用:
<不具合?> 型名のstring(小文字)が認識されず、クラスが追加されてしまう

恐れ入りますが、あいにく弊社では、ご報告の現象を再現することができませんでした。(バージョン5.4.1にて、クラス図のクラスの属性、操作、操作のパラメタの型に、図上、プロパティビューからstringを設定して試しました)お手数ですが、詳しい再現手順を、不具合報告先、または本フォーラムにてお知らせください。

もう少しちゃんと書けばよかったですね。stringを単独で型に使っている時は問題ないですが、属性などで、
List<string>とかの型名を作るとList<string>とstringのクラスができます。List<string>というクラスも余分な感じがします。
これは100%再現すると思います。

ついでですが、少し前にJUDEの方向性についての投稿があったので、私も一言。
私の職場は通信機器のシミュレーションをしていて、実行速度が命なので、コア部分はC++、GUIにC#と使い分けています。javaは全く入り込む余地はありません。以前からJUDEは気になる存在でしたが、javaしか対応していませんでしたので、評価の比較対象にも上がりませんでした。が、昨年からC#、まもなくC++に対応するという事で評価させて頂いています。
コード生成の充実はJUDEの方向性とは異なるようですが、UMLのお絵かきだけなら、MS社のツールで書けば十分なんですよね。UMLツールを名乗る以上、コード生成ができなければ上司も効率アップのツールとしては認めてくれません。コード生成が得意な競合ツールも評価していますが、肝心の操作性とか上流の機能が、JUDEには及ばないと感じています。コード生成がもっと充実したら(リバースもDoxygenに頼らず(笑))、本当に使えるツールになるかなあと思っています。今後も期待しています。
joba
投稿日時: 2009-3-6 4:22
開発者
登録日: 2006-4-27
居住地: Fukui
投稿: 597
Re: C#生成の不具合?
引用:
属性などで、 List<string>とかの型名を作るとList<string>とstringのクラスができます。List<string>というクラスも余分な感じがします。 これは100%再現すると思います。

早々のご返信、ありがとうございました。現象を確認しました。ご迷惑をおかけして申し訳ありません。本不具合は、現在公開中のバージョン5.5β版にて修正対応済みです。

また併せて激励のコメントをいただき、ありがとうございます。チーム一同、頂戴したコメントを参考にし、今後も開発に励んでまいります。貴重なご意見、どうもありがとうございました。
どうぞ今後ともJUDEを宜しくお願い致します。
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ

投稿するにはまず登録を