2011-08-10 3 views
3

주어진 문자열에서 하위 문자열을 추출하는 것이 바람직한 이유는 무엇입니까?VB.NET에서 왼쪽/오른쪽 대 하위 문자열() VB.NET

LeftRight은 .NET 기능이 아닌 VB 함수이므로 나중에 호환성 문제가 발생할 수 있다고 생각합니다.

내 생각을 분명히하십시오.

+0

.NET이나 VB의 이전 버전을 사용하고 있습니까? –

+0

.NET을 사용하고 있으며 Microsoft.VisualBasic 네임 스페이스가 필요합니다. – Tarik

+0

동일한 동작을 시뮬레이션하면서 음수 길이의 하위 문자열을 사용할 수 있다고 생각합니다. 그러나 나는 정말로 다른 것을 필요로하지 않는다면 표준 .NET 함수를 사용할 것입니다. –

답변

8

가장 의미가있는 것을 사용하면 해당 코드를 읽기 쉽게 만듭니다.

미래에 문제가 발생할 것이라고 생각하는 이유를 모르겠지만 VB.Net 언어 집합의 일부로 제공됩니다. 이유가 없습니다 왜 제거 될 것이며, 심지어 그렇다고하더라도, 그들은을 다시 구현하는 것이 간단합니다.

'그들을 사용하면 잃지 않을 것입니다.

1

혼자 일하십니까?

아니요, 결정이 간단합니다. 팀 구성원이 C#을 배경이있는 경우

  • , Substring를 사용합니다.
  • 개발자가 VB6 배경이 인 경우 LeftRight을 사용하십시오.
  • 확실하지 않은 경우 물어보십시오.
+0

어떤 3GL에서 오는 개발자라도 Left & Right 기능이 무엇을하는지 알아내는 데 어려움이 있다면 저는 매우 놀랐습니다. 이름이 모호하지는 않은 것은 아닙니다 :) –

+0

그건 사실 일 겁니다. 개인적으로, 나는 .NET Framework에서'Left'와'Right'를 선호 할 것이지만 아마 VB6에서 나오기 때문일 것입니다. –

+2

저는 거의 20 년 동안 전문적으로 프로그래밍을 해왔고 다양한 언어로 다양한 배경을 가진 사람들과 함께 나를 믿었습니다. '왼쪽'과 '오른쪽'기능은 많은 혼란을 야기하지 않습니다. –

2

Microsoft.VisualBasic의 기능과 코어 프레임 워크 조립품에 제공되는 필적하는 기능 중에서 선택하면 대부분의 경우 후자를 사용하는 경향이 있습니다.

나는 여러 가지 이유로이 작업을 수행 :

  • 그것은 경향은 더 많은 개발자에 의해 이해되어야한다. (예 : 내 VB.NET 코드를보고있는 C# 사람).
  • VB 프레임 워크 버전보다 코어 프레임 워크 버전에 대한 온라인 도움말 (게시판, stackoverflow 등)을 찾을 가능성이 큽니다.
  • 코드를 사용하면 코드에 "기존"느낌이 나타납니다. 그것은 Call 진술을 사용하는 것과 같습니다.
  • 다른 사람이 VB.Net 코드를 C# (또는 기타 .NET 언어) 프로젝트에 "복사하여 붙여 넣기"하기가 쉽고 언어 변환 지점/전화 끊김이 적습니다. (이것이 진짜 우려/이유는 아니지만, VB.Net 프로젝트 및 번역 프로세스에서 도로 블록을 발생시키지 않는 항목을 "복사하여 붙여 넣기"예제 C# 코드를 여러 번 사용했습니다. yield의 사용은) 내 인생 쉬워집니다.)
  • 그들이 멀리 (이 키워드의 대부분으로가는가/문)는 기본 언어 구조를 완전히 생각할 수 있습니다 동안, 그들은 어떤 것보다 오래된 것으로 표시 될이 가능성이 생각합니까 그들의 핵심 프레임 워크 대응 물의. 특히 VB6이 점점 더 먼 메모리가되고 VB.NET 언어가 발전하는 핵심 .NET 프레임 워크와 함께 자신의 삶을 영위하게됨에 따라 특히 그렇습니다.

한 가지 예외가 있습니다. 나는 My namespace 프록시를 사용하는 경향이 있습니다. My.FileSystem.ReadAllText(...)은 섹시합니다. : P

+0

죄송 합니다만, 거기에는 몇 가지 매우 논쟁이 있습니다. 1) 코드가 _another_ .net 언어로 이식되어야하는 이유는 무엇입니까? CLR이 무엇에 관한 것인가, 그 언어는별로 중요하지 않습니까? 그리고 그렇더라도 C# 어셈블리가 Microsoft.VisualBasic 네임 스페이스를 참조하고 거기에서 왼쪽 및 오른쪽 함수를 사용하는 것을 막을 수있는 방법은 없습니다. 2) 당신은 마지막 포인트 인 "느낌"입니다. 부당하고, 그 함수는 BASIC 언어의 일부이며, 아무데도 가지 않을 것입니다. 그들은 C#에서'switch' 문을 제거 할 것입니다. –

+0

ckittel : 나는 편집을 좋아합니다. 내 모든 우려가 잘 굴러갔습니다. :) –

+0

@Binary 감사합니다. 귀하의 의견은 매우 건설적이었고, 제 대답에서이를 고려했습니다. 감사! – ckittel