5

この質問を読んでいると、下に奇妙なコメントがあることに気づきました。

質問が何であるかわからない: 1 つのソリューションで VB.NET と C# プロジェクトを使用できます (ただし、そうすることはお勧めしません)。

従来の VB.Net コードがあり、新しいコードは C# で記述されているため、これをかなり頻繁に行います。これは本当にお勧めできませんか?なぜだめですか?

4

6 に答える 6

11

これを回避する本当の理由はありません。1 つの「ソリューション」に 2 つの言語を含めることで複雑さが増すこと以外にはありません。

私の意見では、あなたのシナリオ (レガシー製品で作業しているが、新しい機能を追加している) は、単一のソリューションで両方の言語を使用する正当な理由です。

于 2013-03-29T15:47:36.067 に答える
8

推奨されない唯一の理由は一貫性です。ほとんどの開発者は、アプリケーションで作業するときに 1 つの言語を扱うことを好みます。言語が 1 つということは、開発者が VB.NET と C# の両方を知る必要がなく、1 つの言語を知っていればよいということでもあります (2 つの言語は非常に似ていますが)。

従来の VB.NET と C# を混在させる必要がある場合、そうしない理由はありません。

于 2013-03-29T15:48:25.657 に答える
4

それは、「構築しているものに利用できる最高のツールを使用する」ことの問題です。プロジェクト内でC# と VB を混在させることはお勧めしませんが (明らかに「コンパイルされない」という理由から)、開発チームがより速く、より保守しやすい環境で作業できると思われる場合は、古いコードを VB で書き続けることに意味はありません。 C#を使ったファッション。

過去数か月間、(同様のレガシー コードの状況で) 私のオフィスでこれを行ってきましたが、大きな問題 (コンテキストの切り替えによる潜在的な開発時間の損失以外) にはまだ遭遇していません。私たち全員がより快適に感じる言語を使用して作業します。

タスク切り替えの詳細については、こちらをご覧ください。C# を使いこなすことで日常的に得られるメリットは、時々レガシー プールに戻らなければならないコストを上回っているように感じます。

于 2013-03-29T15:48:29.970 に答える
0

それは単に人の選択の問題です。両方の言語に慣れている場合は、同じソリューションで確実に使用できます。

ソリューションで単一の言語を使用することは、保守が容易に思えます。したがって、それが好ましいです。

于 2013-03-29T15:48:17.783 に答える
0

ソリューションにコードを混在させると、すぐに非常に面倒になり、どこからどのメソッドを呼び出しているのかが明確になりません。個別のソリューションで開発することで、プロジェクトを追跡しやすくし、プロジェクト内で言語を混同しないようにします

于 2013-03-29T15:48:23.903 に答える
0

なぜそれをしたいのですか?使用したいレガシー コードがある場合は、そのコードを独自のコンポーネントに保持し、新しいコードと混在させません。「コードのクリーン化」を促進しないため、お勧めしません。読みにくく、維持しにくいソリューションになる可能性があります。

于 2013-03-29T15:50:01.440 に答える