2

私は開発中のシステムにMAGICという CASE を使用していました。この種のツールはこれまで使用したことがなく、一目で気に入りました。1 か月後には多くのアプリケーションが生成され、非常に生産的であると感じました。 .. 私は言うだろう... 満足。

どういうわけか不快に感じた原因は、コードがなく、慣れ親しんだすべてのものがあるためですが、一方で開発をスピードアップすることができました. 実際のところ、最終的には C# を使用するようになりました。これは、C# の方が開発がより柔軟で、単体テストを作成でき、CVS を使用でき、より多くのリソースにアクセスでき、基本的に「すべてを制御」できるからです。このツールは私に自信を与えてくれないと感じました。また、開発の強制的な確立されたルールのために、プロジェクトの後半でそれを管理できないと思いました。また、メールの送信、独自のコントロールの使用、その他の多くのことには複雑さがあり、ある時点で、最初に思ったほど簡単ではなく、最初に製品が主張しているようには見えませんでした. これは、「 No Silver Bullet 」という非常に素晴らしい記事を思い出させます。

この CASE には利点がありましたが、一方で、相談できるリソースがなく、実際にはライセンスと認証は非常に高価です。私にとってもう 1 つの残念な点は、その単純な開発アプローチのために、この種のツールの経験がなかったために最初は怖く感じ、2 つ目は、この種のツールを使い続けていたら複雑なモンスターになっていたのではないかと思ったことです。プロジェクトの後半で管理できなかった.

この種のソリューションを使用して物事を高速化するのは良いことだと思いますが、なぜこれらのプログラムが VS.Net、J2EE、Ruby、Python などほど普及していないのでしょうか。指した?

4

4 に答える 4

1

私の現在の会社では、コード生成に CASE ツールを使用していますが、それをやめようとしています。

それがもたらす利点 (新しい開発者がコンポーネントを「簡単に」理解できるようにするコードのグラフィカルな表現) は、私の意見では欠点よりも重要です。

これらの主な欠点は次のとおりです。

  1. 自動マージを行うことができないため、1 つのコンポーネントでの並行開発はほぼ不可能です。

  2. 開発者はツールに依存するようになり、ハンドコーディングの方法を「忘れる」ようになります。

于 2008-08-17T15:21:50.513 に答える
0

いくつか質問があります:

使用しているコントロールと比較して、どのくらいの生産性が得られますか? 作成したコードのテスト可能性と信頼性はどの程度ですか? 新しいパターンをデザインにどれだけうまく実装できますか?

最初にテストを記述し、次に CASE を使用して必要なコードを生成できる CASE があるとは想像できません。平凡なタスクを簡単に実行し、コードを完全に制御できる resharper に固執したいと思います。

于 2008-08-17T15:32:34.517 に答える
0

残念ながら、Magicツールはコードを生成せず、デザイン パターンを実装することもできません。変更するコードがない前に述べたように、コードの原因を制御することはできません。肝心なのは、何らかの方法で生産性を向上させることができるということですが、ユーザーの CVS やパターンには不可能であり、すべての詳細を制御することはできません。

「そのようなCASEツールの生産性の側面は、顧客の要件と開発者のスキルセット/トレーニング/バックグラウンドに大きく依存しているようです」というgaryの発言には同意しますが、Klelkyにも同意できません。

主な欠点は次のとおりです。 1. 自動マージができないため、1 つのコンポーネントでの並行開発がほぼ不可能になります。2.開発者はツールに依存するようになり、ハンドコーディングの方法を「忘れる」。

ありがとう

于 2008-08-20T13:25:53.647 に答える
0

私が参加しているプロジェクトは、もともと Oracle Development Suite を使用して Web アプリケーションを作成していました。

時間が経つにつれて (5 年以上)、顧客の要件は当初の予想よりも複雑になり、画面の保守が容易ではなくなりました。そのため、チームは非公式に、Oracle Development Suite CASE ツール (Oracle Designer) を使用して画面を生成する代わりに、Web PL/SQL でカスタム (ハンドコーディング) 画面を作成することを決定しました。

Development Suite の Oracle Report Builder コンポーネントは、タイムリーに「仕事を成し遂げる」ように見えるため、チームによってまだ使用されています。一般に、Report Builder ツールを使用する開発者は、コーディングにあまり慣れていません。

この場合、そのような CASE ツールの生産性の側面は、顧客の要件と開発者のスキル セット/トレーニング/バックグラウンドに大きく依存しているようです。

于 2008-08-17T22:17:46.947 に答える