Visual Basic(.)NET)
Visual Basic (.![]() | |
![]() | |
패러다임 | 다중 패러다임: 구조적, 명령적, 객체 지향적, 선언적, 일반적, 반사적 및 이벤트 중심적 |
---|---|
설계자 | 마이크로소프트 |
개발자 | 마이크로소프트 |
처음 등장 | 2001; | 전 (
안정적 방출 | 16.9.15[1] / 2021년 12월 14일; 전 ) |
타이핑 분야 | 정적, 강한 것과 약한 것,[2] 안전한 [2]것과 안전하지 않은 것, 주격 |
플랫폼 | .NET Framework, Mono, .NET[3][4] |
OS | 주로 Windows Android, BSD, iOS, Linux, macOS, Solaris 및 Unix에서도 사용 가능 |
면허증. | 로슬린 컴파일러:Apache 라이센스 2.0[5] |
파일 이름 확장명 | .vb |
웹사이트 | docs |
주요 구현 | |
.NET Framework SDK, 로슬린 컴파일러 및 모노 | |
방언 | |
마이크로소프트 비주얼 베이직 | |
의 영향을 받은 | |
클래식 비주얼 베이직 | |
영향받은 | |
스몰 베이직 |
VB(Visual Basic), 원래 Visual Basic이라고 합니다.NET(VB).NET)는 다중 패러다임 객체 지향 프로그래밍 언어로, 에서 구현됩니다.NET, Mono 및 입니다.NET Framework.Microsoft는 VB를 출시했습니다.NET은 2002년에 Visual Basic 언어의 마지막 버전인 Visual Basic 6.0의 후속 버전으로 출시되었습니다.비록 "."NET"라는 이름은 2005년에 삭제되었으며, 이 문서에서는 "Visual Basic [을 사용합니다.NET]"는 Visual Basic 언어와 고전 Visual Basic 언어를 구별하기 위해 2002년 이후 출시된 모든 Visual Basic 언어를 나타냅니다.C# 및 F#과 함께 를 대상으로 하는 세 가지 주요 언어 중 하나입니다.NET 생태계.Microsoft는 2023년 2월 6일 VB 언어 전략을 업데이트하여 VB가 현재 안정적인 언어이며 Microsoft는 VB [6]언어를 계속 유지할 것이라고 밝혔습니다.
비주얼 베이직에서 개발하기 위한 마이크로소프트의 통합 개발 환경(IDE)은 비주얼 스튜디오입니다.대부분의 Visual Studio 버전은 상용 버전이며, 예외적으로 Visual Studio Express 및 Visual Studio Community는 프리웨어입니다.또한.NET Framework SDK에는 vbc.exe라는 프리웨어 명령줄 컴파일러가 포함되어 있습니다.모노에는 명령줄 VB도 포함되어 있습니다.NET 컴파일러.
Visual Basic은 Windows용 데스크톱 앱을 만들기 위해 Windows Forms GUI 라이브러리와 함께 사용되는 경우가 많습니다.Visual Basic을 사용하여 Windows Forms를 프로그래밍하려면 GUI 디자이너를 사용하여 양식에 컨트롤을 드래그 앤 드롭하고 각 컨트롤에 해당하는 코드를 작성해야 합니다.
GUI 프로그램 제작에 사용
Windows Forms 라이브러리는 Visual Basic에서 GUI 인터페이스를 만드는 데 가장 일반적으로 사용됩니다.Windows Forms 클래스 라이브러리의 모든 시각적 요소는 Control 클래스에서 파생됩니다.이 기능은 위치, 크기, 색상, 글꼴, 텍스트와 같은 사용자 인터페이스 요소의 최소 기능뿐만 아니라 클릭 및 드래그/드롭과 같은 일반적인 이벤트도 제공합니다.또한 Control 클래스에는 컨트롤이 상위 클래스 아래에서 위치를 재정렬할 수 있도록 도킹 지원 기능이 있습니다.
양식은 일반적으로 Visual Studio IDE에서 설계됩니다.Visual Studio에서는 드래그 앤 드롭 기법을 사용하여 양식을 만듭니다.도구는 컨트롤(예: 텍스트 상자, 단추 등)을 양식(창)에 배치하는 데 사용됩니다.컨트롤에는 속성 및 이벤트 처리기가 연결되어 있습니다.기본값은 컨트롤이 생성될 때 제공되지만 프로그래머에 의해 변경될 수 있습니다.실행 시간 동안 사용자 작업이나 환경 변화에 따라 많은 속성 값을 수정하여 동적 응용 프로그램을 제공할 수 있습니다.예를 들어, 코드를 폼 크기 조정 이벤트 처리기에 삽입하여 컨트롤의 위치를 변경하여 폼 중앙에 유지하거나 폼을 채우도록 확장할 수 있습니다.텍스트 상자의 키 누르기를 위해 이벤트 핸들러에 코드를 삽입함으로써 프로그램은 입력되는 텍스트의 대소문자를 자동으로 번역하거나 특정 문자가 삽입되지 않도록 할 수 있습니다.
구문
![]() | 이 섹션은 확장이 필요합니다.추가하면 도움이 됩니다. (2014년 4월) |
Visual Basic은 문을 사용하여 작업을 지정합니다.가장 일반적인 문은 한 줄에 평가할 식을 포함하는 식 문입니다.평가의 일부로 함수 또는 서브루틴을 호출하고 변수에 새 값을 할당할 수 있습니다.Visual Basic은 문의 일반적인 순차 실행을 수정하기 위해 예약된 키워드로 식별되는 여러 제어 흐름 문을 제공합니다.구조화된 프로그래밍은 두 개의 조건부 실행 구조를 포함한 여러 구조체에 의해 지원됩니다.If
...Then
...Else
...End If
그리고.Select Case
...Case
...End Select
) 및 3개의 반복 실행(루프) 구조체(Do
...Loop
,For
...To
,그리고.For Each
) . . 그.For
...To
문에는 별도의 초기화 섹션과 테스트 섹션이 있으며, 두 섹션이 모두 존재해야 합니다.(아래 예제 참조).그For Each
문은 목록의 각 값을 단계별로 표시합니다.
또한 Visual Basic에서는 다음을 수행합니다.
- 문 블록을 정의하는 통일된 방법은 없습니다.대신 "If … Then" 또는 "Sub"와 같은 특정 키워드는 코드 하위 블록의 시작으로 해석되며 "End If" 또는 "End Sub"와 같은 일치하는 종료 키워드를 가집니다.
- 문은 콜론(":") 또는 줄의 끝으로 끝납니다.Visual Basic의 여러 줄 문은 각 줄의 끝에 "_"로 활성화됩니다.버전 10 [7]이상에서는 밑줄 연속 문자의 필요성이 크게 제거되었습니다.
- 등호("=")는 변수에 값을 할당하고 비교하는 데 사용됩니다.
- 괄호( 괄호)는 괄호를 선언하고 괄호 중 하나에서 지정된 인덱스의 값을 가져오는 데 모두 배열과 함께 사용됩니다.Visual Basic은 둥근 괄호를 사용하여 서브루틴 또는 함수의 파라미터를 정의합니다.
- 단일 따옴표(') 또는 키워드
REM
줄의 시작 부분에 배치되거나 줄의 시작 부분에 공백이나 탭 문자 뒤에 배치되거나 줄의 다른 코드 뒤에 배치되면 (줄의 끝 부분이) 주석임을 나타냅니다.
간단한 예
다음은 콘솔 응용 프로그램으로 만들어진 고전적인 "Hello, World!" 예제의 버전인 매우 간단한 Visual Basic 프로그램입니다.
모듈 모듈 1 후보선수 주된() 고전적인 "Hello, World!" 시연 프로그램 콘솔.선 쓰기("안녕, 세상!") 끝. 후보선수 끝. 모듈
이것은 명령행 창에 "Hello, World!"를 인쇄합니다.각 라인은 다음과 같은 특정 용도로 사용됩니다.
모듈 모듈 1
이것은 모듈 정의입니다.모듈은 코드의 분할로, 상수나 변수, 함수나 메서드 또는 클래스와 같은 모든 종류의 개체를 포함할 수 있지만 클래스와 같은 개체로 인스턴스화할 수 없으며 다른 모듈에서 상속할 수 없습니다.모듈은 [8]프로그램의 다른 부분에서 참조할 수 있는 코드 컨테이너 역할을 합니다.
모듈과 모듈을 포함하는 코드 파일의 이름은 동일한 것이 일반적입니다.그러나 단일 코드 파일에 둘 이상의 모듈 및/또는 클래스가 포함될 수 있으므로 이는 필요하지 않습니다.
후보선수 주된()
이 줄은 "Main"이라는 서브루틴을 정의합니다."메인"은 프로그램이 [9]실행을 시작하는 진입점입니다.
콘솔.선 쓰기("안녕, 세상!")
이 선은 출력을 쓰는 실제 작업을 수행합니다.콘솔은 시스템 개체로, 명령줄 인터페이스(콘솔이라고도 함)를 나타내며 운영 체제의 표준 스트림에 대한 프로그래밍 방식 액세스를 허용합니다.프로그램에서 콘솔 메서드 WriteLine을 호출하여 전달된 문자열이 콘솔에 표시됩니다.
콘솔 대신.WriteLine을 사용하면 메시지를 명령줄 [10]창 대신 대화 상자에 인쇄하는 MsgBox를 사용할 수 있습니다.
복잡한 예
다음 코드는 Floyd's Triangle을 콘솔로 출력합니다.
수입품 시스템.콘솔 모듈 프로그램. 후보선수 주된() 딤 행들 ~하듯이 정수 입력 유효성 검사. 도 까지 정수.트라이파스(선 읽기("표시할 행 수 값 입력: " & vbcrlf), 행들) 그리고 또한 행들 >= 1 선 쓰기("허용되는 범위는 1 및 {0}입니다.", 정수.최대값) 고리 플로이드의 삼각형 출력 딤 현재의 ~하듯이 정수 = 1 딤 배를 젓다 ~하듯이 정수 딤 기둥. ~하듯이 정수 위해서 배를 젓다 = 1 로. 행들 위해서 기둥. = 1 로. 배를 젓다 쓰기("{0,-2} ", 현재의) 현재의 += 1 다음 분. 선 쓰기() 다음 분. 끝. 후보선수 <<고객명> 콘솔처럼.ReadLine이지만 프롬프트 문자열을 사용합니다. </cisco> 기능. 선 읽기(선택적. 신속한 ~하듯이 끈 = 아무 것도 없어요.) ~하듯이 끈 한다면 신속한 아님 아무 것도 없어요. 그리고나서 쓰기(신속한) 끝. 한다면 돌아가다 콘솔.선 읽기() 끝. 기능. 끝. 모듈
기존 Visual Basic과의 비교
Visual Basic.NET은 Visual Basic의 또 다른 버전으로 간주되거나 완전히 다른 언어가 논쟁의 주제입니다.구조화된 예외 처리 및 단락식과 같은 새로운 기능을 지원하기 위한 새로운 추가 기능이 있습니다.또한 VB로의 전환과 함께 두 가지 중요한 데이터 유형 변경이 발생했습니다.NET: Visual Basic 6과 비교하여,Integer
데이터 유형은 16비트에서 32비트로 길이가 두 배가 되었습니다.Long
데이터 유형의 길이가 32비트에서 64비트로 두 배가 되었습니다.이는 모든 VB 버전에 해당됩니다.NET. VB의 모든 버전에서 16비트 정수입니다.NET은 이제 다음과 같이 알려져 있습니다.Short
마찬가지로 Windows Forms 편집기는 Visual Basic 양식 편집기와 스타일 및 기능이 매우 유사합니다.
COM을 기반으로 하는 결정론적 참조 카운트 엔진에서 실행되는 객체 기반 프로그래밍 언어에서 에서 지원하는 완전한 객체 지향 언어에 이르기까지 의미론이 크게 변경되었습니다.NET Framework는 Common Language Runtime(세대 가비지 컬렉션과 적시 컴파일 엔진을 사용하는 가상 머신)과 훨씬 더 큰 클래스 라이브러리의 조합으로 구성됩니다.Visual Studio 2005의 My 기능에서 어느 정도 다루긴 하지만 후자의 폭이 늘어난 것은 VB 개발자가 언어에 대해 다룰 때 해결해야 하는 문제이기도 합니다.
이러한 변화는 성능 및 유지보수성과 관련하여 "올바른" 작업에 대한 많은 기본적인 가정을 변화시켰습니다.일부 기능과 라이브러리는 더 이상 존재하지 않습니다. 다른 기능은 사용할 수 있지만 "네이티브"만큼 효율적이지는 않습니다.NET 대안.컴파일을 하더라도 대부분의 변환된 Visual Basic 6 응용 프로그램은 새로운 언어를 최대한 활용하려면 어느 정도 수준의 리팩터링이 필요합니다.문서는 구문, 디버깅 애플리케이션, 배포 및 [11]용어의 변경 사항을 다루는 데 사용할 수 있습니다.
비교예
다음은 VB와 VB를 비교하는 간단한 예입니다.NET 구문.그들은 개발자가 양식을 만들고, 그 위에 버튼을 배치하고, 각 예제에서 설명된 서브루틴을 언급된 버튼의 클릭 이벤트 핸들러와 연결했다고 가정합니다.각 예제는 양식의 단추를 누른 후 "Hello, World" 메시지 상자를 작성합니다.
Visual Basic 6:
사적인 후보선수 명령1_클릭() 메시지 상자 "안녕, 세상 끝. 후보선수
VB.NET(MsgBox 또는 MessageBox 클래스를 사용할 수 있음):
사적인 후보선수 버튼1_클릭(발송인 ~하듯이 물건, e ~하듯이 이벤트 인수) 핸들 단추 1.클릭 메시지 상자("안녕, 세상) 끝. 후보선수
- Visual Basic 6 및 Visual Basic 모두.NET은 자동으로 생성합니다.
Sub
그리고.End Sub
설계 보기에서 해당 단추가 이중으로 표시된 경우의 설명입니다.Visual Basic.NET은 또한 필요한 것을 생성합니다.Class
그리고.End Class
진술들.개발자는 "Hello, World" 메시지 상자를 표시하기 위해 문을 추가하기만 하면 됩니다. - 모든 프로시저 호출은 VB의 괄호를 사용하여 수행해야 합니다.Visual Basic 6에서는 함수(어깨 필요)와 하위(키워드를 사용하여 호출하지 않는 한 괄호는 허용되지 않음)에 대해 서로 다른 규칙이 있었습니다.
Call
). - 그 이름들은
Command1
그리고.Button1
의무 사항이 아닙니다.그러나 Visual Basic 6 및 VB의 명령 단추에 대한 기본 이름입니다.각각 NET. - VB.NET에서는
Handles
키워드는 서브를 만드는 데 사용됩니다.Button1_Click
의 조련사.Click
물체의 사건Button1
Visual Basic 6에서 이벤트 핸들러 하위 항목에는 개체 이름("Command1"), 밑줄("_") 및 이벤트 이름("클릭", 즉 "명령1_클릭")으로 구성된 특정 이름이 있어야 합니다. - 라는 기능이 있습니다.
MessageBox.Show
에서Microsoft.VisualBasic
사용할 수 있는 네임스페이스(대신)MsgBox
)는 Visual Basic 6의 해당 기능과 유사합니다.어떤 기능을 모범 사례로 사용할 것인지에 대한 논란이[12] 있습니다(메시지 상자를 표시하는 것뿐만 아니라 다른 기능에 대해서도 제한됨).Microsoft.VisualBasic
네임스페이스).일부 프로그래머들은 "the"를 하는 것을 선호합니다.NET way"는 Framework 클래스가 더 많은 기능을 가지고 있고 언어에 덜 특정적이기 때문입니다.다른 사람들은 언어별 기능을 사용하는 것이 코드를 더 읽기 쉽게 만든다고 주장합니다.int
(C#) 또는Integer
(VB.NET) 대신System.Int32
). - Visual Basic 2008에는 다음이 포함되어 있습니다.
ByVal sender as Object, ByVal e as EventArgs
선택 사항이 되었습니다.
다음 예에서는 Visual Basic 6과 VB의 차이점을 보여 줍니다.NET. 두 예 모두 활성 창을 닫습니다.
Visual Basic 6:
후보선수 cmdClose_Click() 언로드 나야. 끝. 후보선수
VB.NET:
후보선수 btnClose_클릭(발송인 ~하듯이 물건, e ~하듯이 이벤트 인수) 핸들 btnClose.클릭 가까운.() 끝. 후보선수
'cmd' 접두사는 앞서 [which?]언급한 새로운 규약에 따라 'btn' 접두사로 대체됩니다.
Visual Basic 6에서 공통 연산자 바로 가기를 제공하지 않았습니다.다음은 동등합니다.
Visual Basic 6:
후보선수 타이머1_타이머() '폼 높이를 눈금당 1픽셀씩 줄입니다. 나야..높이 = 나야..높이 - 1 끝. 후보선수
VB.NET:
후보선수 타이머1_틱(발송인 ~하듯이 물건, e ~하듯이 이벤트 인수) 핸들 타이머 1.틱 나야..높이 -= 1 끝. 후보선수
C#과의 비교
C# 및 Visual Basic은 에서 프로그래밍하도록 만든 Microsoft의 첫 번째 언어입니다.NET Framework(나중에 F# 등을 추가하고 다른 언어도 추가함).C#과 Visual Basic은 구문적으로 다르지만, 여기서 차이점이 대부분 끝납니다.마이크로소프트는 이 두 언어를 동일한 언어의 일부로 개발했습니다.NET Framework 개발 플랫폼.Microsoft의 [13]동일한 언어 개발 팀에서 개발, 관리 및 지원합니다.동일한 중간 언어(IL)로 컴파일되며, 동일한 언어에 대해 실행됩니다.NET Framework 런타임 라이브러리.[14]프로그래밍 구조에 약간의 차이가 있지만, 그 차이는 주로 구문론적이며 비주얼 베이직 6에서 변환을 돕기 위해 마이크로소프트가 제공하는 비주얼 베이직 "호환성" 라이브러리를 피한다고 가정할 때, VB의 거의 모든 기능은 C#에서 동등한 기능을 가지고 있으며 그 반대도 마찬가지입니다.마지막으로 두 언어 모두 의 동일한 기본 클래스를 참조합니다.기능 확장을 위한 NET Framework.결과적으로, 거의 예외 없이, 두 언어로 작성된 프로그램은 다른 언어로 번역하기 위해 간단한 구문 변환기를 통해 실행될 수 있습니다.이 작업에 사용할 수 있는 많은 오픈 소스 및 상용 제품이 있습니다.
예
헬로 월드!
Windows 양식 응용 프로그램
Button1이라는 버튼이 필요합니다.
일반의 학급 양식 1 사적인 후보선수 버튼1_클릭(발송인 ~하듯이 물건, e ~하듯이 이벤트 인수) 핸들 단추 1.클릭 메시지 상자("안녕 세상!", MsgBox 스타일.정보, "안녕 세상!") "Hello world!"라는 메시지를 표시합니다. 끝. 후보선수 끝. 학급
콘솔 응용 프로그램
모듈 모듈 1 후보선수 주된() 콘솔.선 쓰기("안녕 세상!") 콘솔에 "Hello world!"라고 쓰고 새 줄을 시작합니다. 콘솔.읽기 키() 응용 프로그램이 종료되기 전에 사용자가 아무 키나 눌러야 합니다. 끝. 후보선수 끝. 모듈
접니다.
Windows 양식 응용 프로그램
TextBox1'이라는 제목의 TextBox와 Button1이라는 이름의 버튼이 필요합니다.
일반의 학급 양식 1 사적인 후보선수 버튼1_클릭(발송인 ~하듯이 물건, e ~하듯이 이벤트 인수) 핸들 단추 1.클릭 개체 만들기("사피.스피보이스").말하다(텍스트 상자 1.본문) 끝. 후보선수 끝. 학급
콘솔 응용 프로그램
모듈 모듈 1 사적인 목소리 = 개체 만들기("사피.스피보이스") 사적인 본문 ~하듯이 끈 후보선수 주된() 콘솔.쓰기("말할 텍스트 입력: ") "말할 텍스트 입력:" 본문 = 콘솔.선 읽기() 사용자가 말하려면 텍스트를 입력해야 합니다. 목소리.말하다(본문) 사용자가 입력한 텍스트를 말합니다. 끝. 후보선수 끝. 모듈
버전 기록
![]() | 이 섹션을 업데이트해야 합니다.그 이유는 Visual Studio 2022 릴리즈에 대한 업데이트를 제공하기 때문입니다.(2022년 6월) |
Visual Basic의 첫 번째 버전인 Visual Basic 버전 6.0의 후속 버전입니다.NET은 2002년에 데뷔했습니다.2020년 기준으로[update] 비주얼 베이직의 10가지 버전이 있습니다.NET이 출시되었습니다.
2002(VB 7.0)
첫 번째 버전인 Visual Basic.NET, 에 의존합니다.NET Framework 1.0.가장 중요한 기능은 관리 코드로, 기존의 Visual Basic과 대비됩니다.
2003(VB 7.1)
Visual Basic.NET 2003은 와 함께 출시되었습니다.NET Framework 1.1.새로운 기능에는 에 대한 지원이 포함되었습니다.NET Compact Framework 및 향상된 VB 업그레이드 마법사.의 성능과 신뢰성도 향상되었습니다.NET IDE(특히 백그라운드 컴파일러) 및 런타임.또한 Visual Basic도 있습니다.NET 2003은 Visual Studio에서 사용할 수 있습니다.NET Academic Edition, 각국의 일정 수의[weasel words] 학자들에게 무료로 배포됩니다.
2005(VB 8.0)
Visual Basic 이후.NET 2003, 마이크로소프트는 ".다음 버전을 Visual Basic 2005라고 부르는 제품 이름에서 NET.
이 릴리스를 위해 Microsoft는 Visual Basic을 강화하기 위한 많은 기능을 추가했습니다.신속한 애플리케이션 개발 플랫폼으로서의 NET의 초점은 다음과 같이 C#과 더욱 차별화됩니다.
- 편집 및 계속[further explanation needed] 기능
- 디자인 타임 표현 평가[further explanation needed]
- "내"라는 유사 네임스페이스는 다음을 [15][16]제공합니다.
- 의 특정 영역에 쉽게 액세스할 수 있습니다.다음과 같이 액세스하려면 상당한 코드가 필요한 NET Framework
My.Form2.Text = " MainForm "
보다는System.WindowsApplication1.Forms.Form2.text = " MainForm "
- 동적으로 생성된 클래스(예: My).양식)
- 의 특정 영역에 쉽게 액세스할 수 있습니다.다음과 같이 액세스하려면 상당한 코드가 필요한 NET Framework
- VB-to-VB가 개선되었습니다.NET[17] 변환기
- 리소스를 확보하기 위해 폐기 패턴이 필요한 개체의 사용을 단순화하는 "사용" 키워드
- Visual Studio에서 작성한 상용어구 코드를 숨깁니다(스텝오버).디버깅 중 NET IDE 및 시스템 라이브러리 코드
- 데이터 소스 바인딩, 데이터베이스 클라이언트/서버 개발 간소화
자신과 타인 사이의 간극을 메우는 것.NET 언어, 이 버전이 추가됨:
- 제네릭[18]
- 부분 클래스(Partial class)는 한 파일에서 클래스의 일부를 정의한 다음 나중에 더 많은 정의를 추가하는 방법으로, 특히 사용자 코드를 자동 생성 코드와 통합하는 데 유용합니다.
- 연산자 오버로드 및 null 가능[19] 유형
- 다른 언어에서 일반적으로 사용되는 부호 없는 정수 데이터 유형 지원
Visual Basic 2005에는IsNot
만드는 연산자'If X IsNot Y'
와 동등한.'If Not X Is Y'
그것은 마이크로소프트 특허 [21][22]출원의 대상이 된 것으로 밝혀졌을 때 악명을[20] 얻었습니다.
2008(VB 9.0)
Visual Basic 9.0은 와 함께 릴리스되었습니다.2007년 11월 19일 NET Framework 3.5.
이 릴리스를 위해 마이크로소프트는 다음과 같은 많은 기능을 추가했습니다.
2010(VB 10.0)
2010년 4월, 마이크로소프트는 비주얼 베이직 2010을 출시했습니다.Microsoft는 해당 릴리스에[23] DLR(Dynamic Language Runtime)을 사용할 계획이었지만 Visual Basic과 자매 언어 C# 간의 공동 진화 전략으로 전환하여 두 언어를 서로 더 유사하게 만들었습니다.CLR 및 COM 개체와 동적으로 상호 작용하는 Visual Basic의 타고난 기능은 IronPython 및 [24]IronRuby와 같은 DLR에 구축된 동적 언어와 작동하도록 향상되었습니다.Visual Basic 컴파일러는 일련의 공통 컨텍스트에서 줄 연속성을 추론하도록 개선되었으며, 많은 경우 "_" 줄 연속성 문자가 필요하지 않습니다.또한 인라인 함수의 기존 지원은 인라인 서브와 서브 및 함수 람다의 여러 줄 버전에 대한 지원으로 보완되었습니다.[25]
2012 (VB 11.0)
비주얼 베이직 2012는 와 함께 출시되었습니다.NET Framework 4.5.이 버전에 도입된 주요 기능은 [further explanation needed]다음과 같습니다.
- "비동기화" 및 "대기" 문이 있는 비동기 프로그래밍
- 반복기
- 호출 계층
- 발신자 정보
- 네임스페이스 문의 "글로벌" 키워드
2013(VB 12.0)
비주얼 베이직 2013은 와 함께 출시되었습니다.Visual Studio 2013을 지원하는 NET Framework 4.5.1.만들 수도 있습니다.개발자 팩을 설치하여 NET Framework [26]4.5.2 응용 프로그램을 설치합니다.
2015(VB 14.0)
Visual Basic 2015(코드명 VB "14.0")는 Visual Studio 2015와 함께 출시되었습니다.언어 기능에 새로운 "?"가 포함되어 있습니다.연산자를 사용하여 인라인 null 검사를 수행하고 문자열을 인라인 [27]형식으로 지정하는 새로운 문자열 보간 기능이 포함됩니다.
2017(VB 15.x)
Visual Basic 2017(코드명 VB "15.0")은 Visual Studio 2017과 함께 출시되었습니다.개정 2017, 15.3, 15.5, 15.8을 통해 새로운 Visual Basic 15 언어 기능에 대한 지원을 확장합니다.하나의 작업으로 [28][29]소스 코드를 구성할 수 있는 새로운 리팩터링을 도입합니다.
2019년(VB 16.0)
비주얼 베이직 2019(코드명 VB "16.0")는 비주얼 스튜디오 [30]2019와 함께 출시되었습니다.Visual Basic의 첫 번째 버전입니다.NET 코어.[31]
크로스 플랫폼 및 오픈 소스 개발
공식 Visual Basic 컴파일러는 Visual Basic으로 작성되었으며 의 일부로 GitHub에서 사용할 수 있습니다.NET 컴파일러 플랫폼.[32]비록 모노 개발 플랫폼이 비주얼 베이직으로 작성된 비주얼 베이직 전용 라이브러리와 비주얼 [33]베이직 2005 호환 컴파일러의 구현뿐만 아니라 윈도우 폼 GUI 라이브러리와 같은 표준 프레임워크 라이브러리를 제공하지만 비주얼 베이직 개발을 위한 오픈 소스 도구의 생성은 C#에 비해 느립니다.
MonoDevelop은 오픈 소스 대체 IDE입니다.또한 Gambas 환경은 Visual Basic과 유사하지만 Free Basic용 Visual FB Editor와 구별됩니다.
참고 항목
- 마이크로소프트 비주얼 스튜디오 익스프레스
- 의 목록.NET 라이브러리 및 프레임워크
- C#과 Visual Basic의 비교.그물
- 애플리케이션용 Visual Basic
- 마이크로소프트 스몰 베이직
- 프로그래밍 언어 비교
레퍼런스
- ^ "Visual Studio 2019 version 16.9 Release Notes". December 14, 2021. Retrieved December 25, 2021.
- ^ a b "Option Explicit and Option Strict in Visual Basic .NET and in Visual Basic". Support. Microsoft. March 19, 2008. Archived from the original on April 4, 2015. Retrieved August 22, 2013.
- ^ Dollard, Kathleen (November 13, 2018). "Visual Basic in .NET Core 3.0". blogs.msdn.microsoft.com. Archived from the original on November 19, 2018. Retrieved November 21, 2018.
- ^ "Visual Basic support planned for .NET 5.0 Visual Basic Blog". Blogs.msdn.microsoft.com. March 11, 2020. Archived from the original on January 5, 2022. Retrieved August 26, 2020.
- ^ "Dotnet/Roslyn". GitHub. November 2, 2022. Archived from the original on May 2, 2019. Retrieved April 14, 2019.
- ^ KathleenDollard. "Visual Basic language strategy - Visual Basic". learn.microsoft.com. Archived from the original on March 31, 2023. Retrieved March 31, 2023.
- ^ "New Features in Visual Basic 10". Archived from the original on March 4, 2016. Retrieved September 5, 2015.
- ^ "Module Statement". MSDN – Developer Center. Archived from the original on January 9, 2010. Retrieved January 20, 2010.
- ^ "Main Procedure in Visual Basic". MSDN – Developer Center. Archived from the original on January 28, 2010. Retrieved January 20, 2010.
- ^ "Visual Basic Version of Hello, World". MSDN – Developer Center. Archived from the original on January 11, 2010. Retrieved January 20, 2010.
- ^ "Microsoft Visual Basic 6.0 Migration Resource Center". MSDN. Microsoft. Archived from the original on November 9, 2014. Retrieved November 9, 2014.
- ^ "Visual Studio 2003 Retired Technical documentation". Microsoft Download Center. Archived from the original on December 30, 2014. Retrieved July 24, 2018.
- ^ Krill, Paul (February 27, 2009). "Microsoft converging programming languages Developer World". InfoWorld. Archived from the original on January 26, 2013. Retrieved August 18, 2013.
- ^ "Microsoft Intermediate Language". Dotnet-guide.com. Archived from the original on June 2, 2013. Retrieved August 18, 2013.
- ^ Mackenzie, Duncan (2006). "Navigate The .NET Framework And Your Projects With The My Namespace". MSDN Magazine Visual Studio 2005 Guided Tour 2006. Microsoft. Archived from the original on February 15, 2014. Retrieved February 6, 2014.
- ^ Whitney, Tyler (November 2005). "My.Internals: Examining the Visual Basic My Feature". MSDN. Microsoft. Archived from the original on June 14, 2012. Retrieved February 6, 2014.
- ^ "What's New with the Visual Basic Upgrade Wizard in Visual Basic 2005". msdn2.microsoft.com. Archived from the original on April 6, 2008. Retrieved January 29, 2008.
- ^ "Defining and Using Generics in Visual Basic 2005". msdn2.microsoft.com. Archived from the original on April 23, 2008. Retrieved January 29, 2008.
- ^ "Operator Overloading in Visual Basic 2005". msdn2.microsoft.com. Archived from the original on April 23, 2008. Retrieved January 29, 2008.
- ^ Sherriff, Lucy (February 22, 2005). "Real Software slams MS IsNot patent application". The Register. Archived from the original on August 3, 2009. Retrieved April 6, 2009.
- ^ Taft, Darryl K. (February 21, 2005). "Real Software Slams Microsofts Patent Effort". eWeek. Retrieved April 6, 2009.[영구 데드링크]
- ^ Vick, Paul A. Jr.; Barsan, Costica Corneliu; Silver, Amanda K. (May 14, 2003). "United States Patent Application: 20040230959". Patent Application Full Text and Image Database. US Patent & Trademark Office. Archived from the original on February 11, 2006. Retrieved April 6, 2009.
- ^ "What the heck is "VBx"?". May 1, 2007. Archived from the original on May 25, 2009. Retrieved August 12, 2009.
With the new DLR, we have support for IronPython, IronRuby, Javascript, and the new dynamic VBx compile
- ^ "What is New in Visual Basic 2010". Microsoft. 2009. Archived from the original on August 4, 2009. Retrieved August 12, 2009.
Visual Basic binds to objects from dynamic languages such as IronPython and IronRuby
- ^ "What's New in Visual Basic 2010". Microsoft. 2010. Archived from the original on July 26, 2010. Retrieved August 1, 2010.
- ^ "Download Microsoft .NET Framework 4.5.2 Developer Pack for Windows Vista SP2, Windows 7 SP1, Windows 8, Windows 8.1, Windows Server 2008 SP2 Windows Server 2008 R2 SP1, Windows Server 2012 and Windows Server 2012 R2 from Official Microsoft Download Center". Archived from the original on January 9, 2020. Retrieved January 11, 2020.
- ^ "New Language Features in Visual Basic 14". msdn.com. Archived from the original on December 25, 2014. Retrieved February 5, 2015.
- ^ reshmim. "Visual Studio 2017 Release Notes". www.visualstudio.com. Archived from the original on January 22, 2018. Retrieved April 5, 2017.
- ^ reshmim. "What's new for Visual Basic 2017,15.3,15.5,15.8". www.visualstudio.com. Archived from the original on September 1, 2019. Retrieved January 11, 2020.
- ^ reshmim. "Visual Studio 2019 Release Notes". www.visualstudio.com. Archived from the original on November 29, 2021. Retrieved August 2, 2019.
- ^ reshmim. "What's new for Visual Basic 16.0". www.visualstudio.com. Archived from the original on September 1, 2019. Retrieved January 11, 2020.
- ^ Roslyn, .NET Foundation, April 13, 2019, archived from the original on February 22, 2021, retrieved April 14, 2019
- ^ "Redirecting…". www.mono-project.com. Archived from the original on January 30, 2021. Retrieved June 30, 2008.
진일보한 내용
- "Visual Basic Language Specification 8.0". Microsoft Corporation. November 15, 2005. Archived from the original on January 21, 2011. Retrieved December 10, 2010.
- "Visual Basic Language Specification 9.0". Microsoft Corporation. December 19, 2007. Retrieved September 28, 2011.
- "Visual Basic Language Specification 11.0". Microsoft Corporation. June 7, 2013. Archived from the original on March 5, 2012. Retrieved September 22, 2013.