2008-08-18 19 views
6

私は数年前からVB.netの開発者でしたが、現在はC#を使用しているいくつかの企業に申し込んでいます。私は、少なくとも1社がVB.net開発者を望んでいないと言われています。C#とVB.netの類似点/相違点に関する面接の質問

私は2人の間の本当の違いを見つけるためにオンラインで探していて、crackoverflowについて質問しました。唯一の大きな違いは、私もJava開発者であるため、私には些細な構文の違いです。

インタビュアーがC#開発者を探していると答えたとき、または同様の質問が表示されたときには、どのような回答が良いでしょうか?

答えて

9

私はいくつかのC#の位置について人々にインタビューしなければならなかったし、これはC#の位置のための面接VB.Net開発者のための私の一般的なアドバイスです:あなたは、あなたがVBを取り組んできたことは明らかであることを確認してください

  • を。ネット。これは明らかですが、私の経験では明らかにそうではないものです。
  • 可能であれば、コードサンプルを提供してください。私は恐ろしいVBを見たことがあります。.Netに移行する際に多くのことを学んでいなかったVBプログラマによって書かれたNet(およびC#)。
  • 質問があれば、インタビュー中にC#で書くことができます。私は両者の間に本当の違いはほとんどないことを知っていますが、新しい構文を学ぶためにお金を払うつもりはありません。

私は以前にそのタイプの質問をしていましたが、聞きたいのは、基礎となるシステムとフレームワークが同じであったということでした。可能であれば、ガベージコレクション、IDisposable、ファイナライザ、安全でないコードブロックの危険、スタックとヒープなどについて話してください。あなたが.NETフレームワークの複雑さを本当に理解していることを示すためのあらゆる種類のもの。間違いなく、VBの遺産は、低レベルのプログラミングと一般的なウィンドウ(これは皮肉なことに、C++デベロッパーがC#デベロッパーを持つなど...)の理解の欠如を期待しています。

最後に、あなたの経験をどのようにフレーム化すれば、世界の違いを生むことができますか? VB.NetやC#ではなく.Net開発者として自分自身を位置づけていると、愚かで疑似宗教的な冗談は会話には入らないかもしれません。もちろんこれはインタビューの時点でVB.NetとC#の両方を実際に知っている必要がありますが、これは関係なく良いポリシーです。

問題の真実は、あなたが以前にVB.Netで開発してきたことから、あなたにインタビューしている人があなたを書き留めていることが判明した場合、あなたはとにかく働きたい場所にはならない可能性が高いということです。

2

私は真実がこの上のアウトになると思う:

私はソフトウェア開発者だし、言語の構文は、パズルの最後の部分です。私を雇うことで、問題解決と論理の実証可能な経験を持つ人物が得られます。私は、.NET環境、CLR、および関連するWindowsスタック(SQLとWindowsサーバーを含む)で経験があります。私はC#の構文はわかりませんが、私はオブジェクト指向のアプローチに慣れていますが、2〜3週間以内に構文の細かい部分を完全にスピードアップするのに問題はありません。私のコードのこれらの例から、経験豊かな開発者であることがわかります。移行がシームレスになることを私は保証します。私はすでに言語を学び始めましたが、これまでのところ問題はありませんでした。

3

適切時々私をキャッチ(構文よりも充実しています)いくつかの相違点:

  • VB.NET匿名デリゲートを持っていませんが
  • 安全でないコードブロックVB.NET
  • ではありません
+1

VBには匿名の代理人がいます。 VBには匿名サブルーチンがありません。 VBのすべての匿名デリゲートは値を返す必要があります。 –

+0

VB v9 +のみ。このコメントはVB v8を参照していました。 – DAC

1

真実か?あなたがJava開発者でも、私はそれをリードしています。 .NETでの経験があるJava開発者は、Javaの経験があるVB開発者よりも優れた印象を与えます。 .NETとJavaの違いに関する質問に答えることができれば、あなたは良い形になっているはずです。

また、C#の構文をできるだけ早く学ぶことをお勧めします。あなたがVBとJavaで経験があれば、時間がかかりません。

多くの開発者は、VBとそれを使用する人に問題があります。有効かどうかは、その現実に対処する必要があります。

3

私は死にかけてC#が大好きですが、私はVB.NETのオプションパラメータを羨望しています。 C#のオフィスオートメーションは非常に苦しいです。私はCLRとどのようなコードが実際にやっているを理解することが重要だ何だと言うだろうインタビューで

Function(x) x.ToString() 

、および: -

+4

C#4.0ではCOMのミキシングにオプションのパラメータと動的なタイピングが追加され、苦痛を軽減します。 –

2

@DACはVBは今(.net3.5で)ラムダをサポートしていますいずれかでコードを書いて喜んで(あなたがいると仮定して)。

+1

はい、いいえ。 VBには匿名関数がありますが、匿名サブルーチンはありません。イベントハンドラは常にサブルーチンなので、VB開発者はここでミスします。 –

0

VBまたはC#は両方とも構文が異なりますが、ロジックの方法を適用する場合は同じです。

2

私は死にかけたC#フェラーですが、違いは構文だけではありません。 VBがダウン

  1. HANDSオプションのパラメータ
  2. 後期は、C#からCOMでの作業は非常にイライラ不倫することができ

を結合勝場所があります。 (これは不可能ではありません!)

関連する問題