MS, 3대 닷넷 언어 비전 밝히다

컴퓨팅입력 :2017/02/14 16:21    수정: 2017/02/14 18:15

마이크로소프트(MS)가 닷넷 플랫폼 기반 개발언어들의 미래 전략을 밝혔다.

이달초 MS는 MSDN 블로그를 통해 C#, 비주얼베이직, F# 등의 닷넷 언어에 대한 개발 전략을 발표했다. [MSDN 블로그 바로가기]

MS 닷넷은 2002년 처음 세상에 나와 올해로 탄생 15주년을 맞았다. 현재 닷넷 플랫폼에 기반한 개발언어로 C#, 비주얼베이직닷넷, F# 등이 대표적이다.

이 가운데 C#과 비주얼베이직닷넷은 겉은 다르지만, 제공하는 기능과 역량은 유사하다. F#은 애초부터 함수형 프로그래밍을 위해 설계된 언어다.

C#은 올해 스택오버플로 개발자 설문조사에서 자바스크립트와 자바에 이어 가장 인기있는 개발언어 중 하나로 꼽혔다. 자바와 함께 2000년대 객체지향프로그래밍 언어를 대표했다.

게임엔진인 유니티의 개발언어이며, ASP닷넷 기반 웹앱을 위한 언어다. 자마린의 모바일 앱 개발용 언어기도 하다.

자바는 여러 부침을 겪으며 느린 발전속도를 보였던 반면, C#은 MS와 윈도란 든든한 아군을 등에 업고 꾸준히 발전해왔다.

MS는 C#의 성격을 닷넷에서 이용가능한 최고급 언어로 규정한다. 언어와 성능을 계속 개선해 더 많은 중고급 개발자에게 제공한다는 계획이다. 복잡한 시장의 요구사항을 수용하고 머신러닝, 하스켈 같은 함수형 프로그래밍 트렌드도 적극적으로 품는 주 언어인 것이다.

MS는 "그간 C#의 새 버전이 대규모 혁신을 담았다"고 강조했다. C# 2.0의 경우 제네릭(generics)을, C# 3.0의 경우 통합쿼리를, C# 4.0의 경우 다이나믹을, C# 5.0의 경우 비동기(async)를 선보였다. C# 6.0은 작지만 유용한 다수의 새기능을 선보였다. C# 7.0은 튜플과 패턴매칭 등을 제공한다.

C# 입장에서 가장 의미있는 변화는 6.0버전부터였다. 이 때부터 MS가 닷넷 오픈소스 전략을 펴기 시작했고, 커뮤니티와 MS 외부 개발자의 의견이 적극적으로 수용됐다.

비주얼베이직닷넷은 개발자 사이에선 큰 인기를 누리지 못하고 있다. C#과 비슷한 역량을 제공하지만, 완전히 동일하다고 보긴 어렵다. 가령, 비주얼베이직15도 튜플을 제공하지만, C# 7.0의 튜플과 완전히 동일하진 않다.

현재의 비주얼베이직닷넷은 과거의 비주얼베이직과 이름만 같을 뿐 전혀 다른 존재다.

비주얼베이직닷넷의 주요 시장은 비즈니스 애플리케이션 분야다. MS는 현재 오피스365나 다이나믹스 애플리케이션의 프로그래밍에 비주얼베이직닷넷을 사용하도록 하고 있다.

MS는 오피스365 애플리케이션의 매크로 작성에 자바스크립트를 수용하고 있다. 그럼에도 여전히 비주얼베이직은 액세스 같은 데이터베이스 툴에서 비개발자에게 유용한 툴일 수 있다.

또한 비주얼베이직은 개발 입문용 언어로 인기가 많다. 상대적으로 쉽게 배울 수 있고, 윈폼즈나 ASP닷넷웹폼즈 등으로 비즈니스 애플리케이션을 만들기 용이하다. 애플리케이션용 비주얼베이직(VBA) 과정을 들으면 워드, 엑셀, 액세스 등의 매크로를 만드는 것을 연습하게 된다.

스택오버플로 조사에서 비주얼베이직의 비중은 높지 않다. 그러나 사실상 현재 C#을 다룰 줄 아는 거의 모든 개발자가 비주얼베이직닷넷도 다룰 줄 안다. 비주얼베이직닷넷으로 입문해 C#으로 발전하는 양상이기 때문이다.

MS는 비주얼베이직과 C#의 개발경험을 통일한다는 기본 방침을 세우고 있다. C#에서 접하는 새 기능에 대한 경험을 비주얼베이직에서도 동일하게 접하게 한다는 것이다.

F#은 C#이나 비주얼베이직과 별도로 독자행보를 걸어왔다. 더 사용하기 쉽고, 가장 선진적인 툴을 제공한다. 닷넷 생태계에서 최신의 유행을 가장 잘 반영한 언어다.

관련기사

MS는 F#을 커뮤니티 주도 언어로 규정했다. 함수형 프로그래밍 언어 가운데 시장에서 가장 우수한 툴을 제공하는 언어로 만들겠다는 의지도 밝혔다.

MS는 닷넷 플랫폼의 3개 언어 가운데 개발자 필요에 맞게 선택해 쓰라는 입장이다. 무엇을 택하든 닷넷 플랫폼의 역량을 잘 활용할 수 있다는 것이다.