2010-11-28 2 views
0

visual basic.net은 대소 문자를 구별하지 않으므로 코더가 변수의 대소 문자를 기억하거나 기억하지 않고도 쓸 수 있습니다. 그것은 선언에서 사용 된 것과 다른 경우에 변수를 사용하면 '선언되지 않은 변수'오류로부터 해방됩니다. 라인 종료가 줄 바꿈이라는 사실 때문에 C#이나 C++과는 달리 대소 문자를 구분할 필요가있는 C#이나 C++과는 달리 {}을 사용하여 일치를 확인하고 어느 것이 맞는지 알아내는 것이 더 읽기 쉽습니다.대소 문자를 구분하지 않는 대소 문자는 구분합니까?

내 질문에 두 가지 언어 사이에 성능 차이가 거의 없기 때문에 두 가지 모두 MSIL로 컴파일 얻을 알고 VB 통해 C#의 장점은 무엇입니까?

+0

만약 주관적으로 들리면 질문을 남겨주세요. –

+2

이것은 주관적이며,이 질문에 대한 좋은 곳이 프로그래머 스택 교환 (http://programmers.stackexchange.com/)에 있습니다. – Orbling

+1

중복 : http://stackoverflow.com/questions/4294156/case-sensitive-languages-vs-insensitive-languages-closed – Brian

답변

3

케이싱이 나를 자극하지 않습니다. 특히 괜찮은 IDE라면 인텔리 센스, 자동 완성, 자동 수정 등이 있습니다. 최악의 경우 : 컴파일러가 찾아냅니다. 그리고 난 정말 특정 라인 - 공간 패턴에 강요되고 사는 것은 좋은 일이 (그리고 네, 나는 VB에서 수년간 사용)입니다.

C#과 VB.net은 특히 동적 인 경우에 많은 수렴성이 있습니다 (이는 의 실제 갭을 VB.net에 꽂는 데 도움이됩니다).

강력한 C# 기능 : 반복자 블록 (일명 수익률 반환). 또한; 람다 구문은보다 완벽하게/다재다능합니다.

덜 구체적인 논쟁 : 둘 다 광범위하게 사용했기 때문에 C#은 표현력이 풍부하고 읽기/유지 관리가 쉬우 며 청소기를 사용합니다. 간단히 말해서 : 내가 많이 좋아한다.)

java/c/C++/JavaScript에 익숙한 구문으로 시작하면 쉽게 전송할 수있는 경우도있다.

+0

VB.NET에는 또한 XML 리터럴이 있습니다. C# 코더로서 내가 사용하는지 여부는 궁금합니다. http://blogs.msdn.com/b/jimoneil/archive/2009/06/15/x- is-for-xml-literal.aspx – andynormancx

+0

@andynormancx - 정확하게; 나는 ** 그 (것)들의 부족을 위해 더 가난한 ** 결코 느끼지 않았다. 그것들은 실종 된 것으로 생각하지 않기 때문에 실제로 "* 실제 * 갭"을 사용했을 때 생각했던 것입니다. –

2

하나의 경우 C#의 커뮤니티가 훨씬 큽니다.

예를 들어 http://www.codeproject.com/과 같은 사이트의 대부분의 코드 샘플은 C#에 있습니다.

내 생각에이 경우에만 C#을 사용하는 것이 좋습니다.

1

본질적으로 아무 것도.
VB.NET은 기존 Visual Basic/Office 프로그래머를 유혹하기 위해 만들어졌으며 C#을 선호하여 Java/C++를 선호했습니다.

2

저는 델파이 배경에서 왔고 몇 년 전에 대소 문자 구분에 관해 당신처럼 느꼈습니다. 그러나 며칠 동안 C# (케이스 규칙을 배우기)을 통해 작업을 한 후에는 예상보다 훨씬 작은 오류 발생 원인임을 알게되었습니다.

정적으로 입력 된 언어의 대소 문자는별로 중요하지 않습니다.

민감한 언어의 경우 대문자가 임의적 인 것은 아니기 때문에 IDE없이 프로그래밍 할 때도 종종 잘못하지는 않지만 대회에서 볼 수 있습니다 (코브라와 같은 일부 언어는 대회에 따라). IDE를 사용하면 인텔리 센스가 해결해 주므로 훨씬 덜 중요합니다.

IMO가 모든 컨벤션을 준수하도록 강요하면 더 나은 읽을 수있는 코드가됩니다. 델파이 (대소 문자를 구별하지 않음)로 프로그램을 만들 때 제 케이스에는 일관성이 없었습니다. 그러나 대문자와 소문자를 구별하지 않는 언어에 대한 최신 IDE에는 식별자가 선언 된 것과 동일한 식별자 사용법을 사용하는 Format-Document 기능이 있어야합니다. 다시 현대 IDE 기술로는 쓸모 없게되었습니다.이 일부 동적으로 입력 된 언어 (루아, 자바 스크립트) 대소 문자 구분 만 잘 작동 C#을 대 VB 적용되지 않지만 일부 동적으로 입력 된 언어의 대소 문자 구분을 위해

필수적이다. 왜냐하면 사전에있는 string 키와 회원 이름이 거의 동일하기 때문입니다. 그리고 대소 문자를 구별하는 사전은 대소 문자를 구별하지 않는 훨씬 강력합니다.