Larsenal
그는 물었다 12년 전
33

가장 중요한 기능적 차이를 며칠입니까 C # 과 VB.NET?

39 의 차이는 있지만 분명 there& 쇰컲 援щц 또 다른 중요한 차이점 어디일까요? 일부 차이가 있는데, 그렇지?

EBGreen
그는 12년 전 댓글을 달았습니다
2

내 생각엔 그냥 부족이 문제가 어떻게 비슷한 종교적 논쟁을 나타내는 것일 것입니다. )

답변 15 개

하지만 지금처럼 연결된 비교는 정말 철저해 꼭 이래야겠어요 기록하십시오 주된 차이점은 다음과 같다.

  • C # 의 /strike&gt, VB 는 지금 이 익명 methods&lt strike&gt &lt,, 고쳐주렴
  • &lt strike&gt, C # 은 출력, 키워드 (반복자가 블록) 이 추가된 VB11 /strike&gt <;
  • VB 는 암시적입니다 바인딩하면 말 (C # 의 dynamic 키워드를 통해 바인딩하면 명시성 이제 말)
  • VB 는 XML 리터럴
  • VB 대소문자를 구분하지 않습니다.
  • 코드 조각을 더 out-of-the-box VB
  • C # 에 대한 더 많은 out-of-the-box 리팩토링 도구를 &lt /strike&gt Strike&gt &lt,, 비주얼 스튜디오 2015년 는 모두 같은 리팩토링 도구를 VB 및 C #.

일반적으로 두 개의 언어를 사용하는 것을 밀리초입니다 초점을 맞추고 있기 때문에 매우 다른 사용자를 대상으로 각 다릅니다. 이 블로그 포스트 는 优秀 夸약 대상 하였다. 좋은 아이디어 관객이 확인할 수 있는 것은 아마도 어떠한 종류의 도구를 사용하고 있기 때문에 Microsoft 에서 # 39, ll get you& 결정할 것이라고 말했다.

Luke
Jonathan Allen
그는 12년 전 댓글을 달았습니다
2

VB 는 익명 함수 값을 반환할 때, 그냥 이렇게 오래.

익명의 방법 같은 것은 없습니다. 메서드입니다, 정의에 의해 명명된 기능을 제공하는 것이 암시적으로 는 객체 참조.

AlwaysAProgrammer
그는 10년 전 댓글을 달았습니다
2

VB 제공할 수 있는 C # 은 키워드를 가지고 있지 않습니다.

jeroenh
그는 10년 전 댓글을 달았습니다
0

C # 이제 는 일종의 '말' 키워드를 통해 동적 바인딩. 여긴 아직 6b.넷 다르다. # 39, & # 39 에 의해 창단된 있습니다 바인딩하면 선반가공 Strict& 옵션이 있습니다. on / off 인컨텍스트 프로젝트 수준에서 또는 파일 단위로. 말 지원부에서는 바인딩하면, C # 의 사용을 통해 더 명시성 (이상 기술서임을 수준), '동적인' 키워드.

andre_ss6
그는 6년 전 댓글을 달았습니다
0

다른 것은 '키워드' 로, VB 는 또한 이미 지적한 얻게된다면 VB 11 에 추가되었다. 또한, C # 은 암시적입니다 뿐만 아니라 '말' 을 통해 동적 바인딩 유형이 (이후 C # 4). 이 비슷한 구조를 가진 '에서' 방식의 객체에는 VB 옵션과 같은 리팩토링 도구를 사용할 수 있으며, 마지막으로, VS 2015년 은 엄격한 끄기입니다. 모두 C # 과 VB.

Luke
그는 6년 전 댓글을 달았습니다
0

39 m, I& 안녕하슈 andre_ss6, 왜 당신, 내가 원하는 건 바보 확신하지 못하고 있지만 3 잡을라는데 거절됨 편집하십시오 수락하려면 상기할지니 이를 거부했다. # 39 m, 나 이제 해결하십시오 i& 것입니다.

이 항목에서는 많은 면담 이후 그동안 .Net 2.0 이 출시되었다. 위키백과 이 슬라이드에서는 대한 문서를 읽을 수 있는 요약.

그러나 이 할 수 있습니다 (VB.NET) 는 c # 의 경우 케이스 insensitiv 구문, 동시에 중요한 *.

Michael Haren
그는 10년 전 댓글을 달았습니다
0

39, 내가 이 t 고려해보십시오 don& 피쳐입니다.

David
그는 10년 전 댓글을 달았습니다
4

오 it& # 39 의 기능 괜찮아. 코드 더미 디버깅하지 시도하시겠습니까 박으래도, 두 개의 서로 다른 변수를 가지는 린트쿤터 및 린트쿤터 있다. 둘 사이에는 아무런 차이가 있어야 합니다. 남은 날이 에서 컴퓨팅 파워를 는 대소문자 는 훨씬 더 비싼 (및 구문 분석 &quot 있는 줄에 A"; &lt >; &quot a"; # 39, re 는 they& 아웃해야 등보다 빠른 것이 정말 같은).

은 매우 포괄적인 참조입니다.

그들이 어떻게 한 풍부하다는 점에서 차이가 없다 처리하십니까 확장명은 서버리스 (6b.넷 실제로 수행되었는지 생각하신거야 C # doesn& # 39, t - 반군지역 있는 확장명은 로 정의되는 방법은 문자 참조). http://blog.gadodia.net/extension-methods-in-vbnet-and-c/ &gt <;

supercat
그는 8년 전 댓글을 달았습니다
0

39 의 경우 너무 나쁜거라 there& 예고 없이 이런 방법을 사용하려고 확장명으로 읽기 전용 컨텍스트로 (컴파일러는 통과할 때 '참조' 의 가치와 복제본에 복제본에 매개변수입니다 그레르).

비록 3 은 정말 솔직히 나 C # 의 구문을 설탕 막대 끼워졌는지 앞으로 좋은 물건을 6b.넷 의 일부 Linq XML 로 상당히 복잡한 취급료 하면 조금 더 깊이 네스트된 xlm 참을 것 같다. 약간 매콤하게요

39, 구글, 내가 하도 solaris. don& 수 있습니다 링크 찾고자 하는 것은 더 많은 사이트를 것 같지는 않다.

나의 대답: 기본 선택) 에 대한 개발자. C #, JAVA, C++ 등 아마도 더 많은 것 같다. 하지만 정말 쉽지 않은 것 같아요 (VB.NET) 는 vb 프로그래머가 더 이상 문제가 없는 vb .net 프로그래머들이 새로운 사인 오는 이전.

제 생각이지만 에로남이네 VB 는 C #, 그런 면에서 앞서 항상 더 높은 생산성을 보인다 (린트리젠세 등) 및 생산성 도구를 통해 다른 사람에게 꼭 이래야겠어요 추천합니까 c # vb 요청하는. 물론 그가 선호하는 사람이 계시나니 c # won& t ask, c #, # 39 는 그를 위해 올바른 선택을 할 것 같습니다.

비록 트리스카치 유형 (VB.NET) 는 비슷한 상황이 vb6&, 예외 처리, 아직 # 39 에 오류가 발생했습니다. 그렇다고 크게 훼손될 수 있고, 대부분의 경우, 오류 시 트리스카치 훨씬 더 나은. 그러나 작업을 할 수 있는 시간 오류 시 때 유용합니다 취급료 COM 오류, 디코딩, 마지막 again&quot 시도하시겠습니까 포착되었습니다 "; 간단히 한 줄. 그러나 이 코드는 많이유 메시에 트리스카치 마찬가지 작업을 수행할 수 있습니다.

제가 보기에 가장 큰 차이점은 안전하지 않은 코드를 C # 로 쓸 수 있다.

이와는 별도로 구문을 더 이상 크지 않습니다. 그들 둘 수 있도록 할 수 있다 (il 컴파일하십시오 똑같은 컴파일하십시오 vb 및 c # 으로 설명하노라.

가장 분명한 차이가 통사 설탕. 예를 들어, 근데 진짜로 they& 지원할 수 있는 것처럼, VB 전능하신분은 동적임 유형은상위 C # & # 39, s - re 로 정적임 # 39 는 VB 컴파일러와의 그림 아웃하라는.

Visual Studio 가 C # - 하지만 이 기능을 사용하여 다르게 VB 비해 많은 감춰집니다 자도으로 컴파일하기를 (great 소규모 프로젝트를 호깅 리소스에는 대규모 수준들과) 배경 및 보다 나은 스니핏 지원.

39, & # 39 로 점점 더 많은 컴파일러와의 magic&. 정말 3 는 C # 에서 6b.넷 뒤에 떨어졌다. Vb 는 현재 C #, # 39 doesn& 있는 유일한 '키워드' s, t 는 - 및 that& # 39 는 인상을 급여금.

하지만 정말 유용한 @tom - 6b.넷 을 (를) '는 이제 조금 재생성합니다 - xml 문서 너무 & # 39, & # 39, & # 39.'

39, 6b.넷 @luke - doesn& 곧 방법 않지만, 여전히 없는 람다 지원하고 있습니다.

Jonathan Allen
그는 12년 전 댓글을 달았습니다
0

39 의 XML 지원 VB& 완전히 잊을 수 있습니다.

Keith
그는 12년 전 댓글을 달았습니다
0

아, 그래, 물론. VB 는 XML - # 39 m, 인라인 I& 아직 잘 섞어 데이터와 코드의 장점은 것을 좋아한다.

VB.NET 고정식입니다 대부분 VB6 OOP 언어 문제 및 그것으로이라엘 적절한 예 - ie. 비슷한 기능을 C #. C #, 선호하는 경향이 기존의 VB 의 오류 찾기 아르투그니 나는한다 chunghwa COM interop 시간초과와 취급료 유용합니다. 그렇다고 쉽게 사용할 수 있는 일을 슬기롭게 오류: 표시되어도 -!!

[스콧 한스엘만] (http://www.hanselman.com/blog/) 는 최근 흥미로운 기사를 쓴 대비되는 var 및 별반 다르지 않다. [Back to Basics: var! = Dim] (http://www.hanselman.com/blog/BackToBasicsVarDim.aspx)

그들이 어떻게 한 풍부하다는 점에서 차이가 없다 처리하십니까 확장명은 서버리스 (6b.넷 실제로 수행되었는지 생각하신거야 C # doesn& # 39, t - 반군지역 있는 확장명은 로 정의되는 방법은 문자 참조). http://blog.gadodia.net/extension-methods-in-vbnet-and-c/ &gt <;

그 때 모든 일이 비트임을 된다 (il 단지 그 가방 불감 프레콤프일러 통과했습니다. 그러나, vb 는 일반적인 합의가 더 자세한 정보. C # 왜안돼요 먹이좀 눈과 손을 쓸 수 있는 경우 적은 액수의 코드를 기록하십시오 같은 일을 할.