Development2015.11.19 09:24

마이크로소프트가 닷넷을 비롯한 자신들의 플랫폼, 프레임워크 뿐만 아니라 리눅스 진영을 비롯하여 여러 오픈 소스 과제에 적극 참여하는 건 더이상 새로운 소식이 아닙니다. 오히려 거대 IT 기업들 중에서 마이크로소프트만큼 열린 정책으로 생태계를 지원하고 있는 곳이 있을까 싶을 정도입니다. 이런 기조하에서 근래에 발표했던 멀티 플랫폼 코드 에디터인 비주얼 스튜디오 코드(Visual Studio Code)는 하나의 방점을 찍고 있다해도 고개가 끄덕여 집니다.


마이크로소프트는 이 코드 에디터의 멀티 플랫폼에 대한 지원을 넘어서 아예 비주얼 스튜디오 코드를 깃허브에 오픈소스로 공개했습니다. 사실 비주얼 스튜디오가 ATOM 기반으로 만들어졌기 때문에 어느 시점엔가 오픈소스화를 하지 않을까 싶은 생각은 여러 분들이 했습니다만 생각보다 빨리 공개가 된 것 같아서 무척 고무적입니다. 벌써부터 많은 풀 리퀘스트와 이슈 들이 리포팅 되고 있어 비주얼 스튜디오 코드의 코드(?)품질이 더 급격히 좋아지지 않을까 기대해 봅니다~!






Visual Studio Code - GitHub [바로가기]

Visual Studio Code 공식 웹사이트 [바로가기]



저작자 표시 비영리
신고
Posted by 노피디
Development2014.06.20 07:00
마이크로소프트는 다년간 개발자 에코시스템(Eco-system)을 위해 많은 투자를 해 왔습니다. 윈도우 운영체제는 여전히 PC 시장의 대부분을 차지하고 있고 PC 기반의 소프트웨어 개발은 큰 변화 없이 시장의 많은 요구를 받고 있습니다. 그런데 최근 모바일과 스마트 기기가 시장의 새로운 주류로 떠오르면서 전통적인 마이크로소프트 개발자 커뮤니티에 파열음이 일어나기 시작했습니다.

애플이 공급하는 iOS 플랫폼에서의 개발은 높은 광고 수익과 앱내수익(In-App Purchase)를 보여주고 있을 뿐 아니라 안드로이드 단말 역시 최근 많은 시행착오를 통해 애플리케이션을 통한 광고 혹은 앱내수익이 많이 올라가고 있는 추세입니다. 마이크로소프트는 이런 시장 변화에 대응하기 위해 윈도폰7과 윈도폰8, PC 기반의 운영체제에 큰 변화를 가져올 것으로 기대되는 윈도8과 윈도8.1 을 지속적으로 출시하며 적극적인 움직임을 보이고 있습니다.


마이크로소프트 환경 기반의 소프트웨어 개발을 생각한다면 우리가 빼놓을 수 없는 것이 바로 비주얼 스튜디오(Visual Studio)입니다. 일반에게 공개된 가장 최신 버전은 비주얼 스튜디오 2013 버전으로 기존 2010 버전이나 2008 버전이 가지고 있던 불편함에 대한 개선과 새로운 닷넷 프레임워크와 그 변화에 걸맞는 다양한 기능 개선으로 마이크로소프트 기술을 근간으로 개발 업무를 하는 분들에게 Get It 아이템이 된지 오래입니다.

하지만 비주얼 스튜디오를 비롯하 개발도구는 생각보다 비싼 시장 가격이 형성되어 있습니다. 보통 회사에서는 볼륨 기반의 계약이나 MSDN 프로그램, BizSpark 와 같은 기업 지원 프로그램을 이용하여 개발 도구를 공급받기 때문에 상대적으로 비싸다는 생각을 하기 힘들수도 있습니다. 하지만 개인 개발자나 특정 프로그램을 통해 지원을 받기 힘든 경우에는 단품 개발 툴을 구입하는 방법밖에 없을 때도 있습니다.


마이크로소프트는 새해를 맞이하여 새로운 프로모션들을 많이 진행하고 있습니다. 운영체제 정식 출시 전에 충분히 사용자 층을 확보하고 개발자 그룹 / 커뮤니티가 보다 적극적으로 새로운 플랫폼 향으로 개발을 하는 것은 무척 중요합니다. 초반의 시장 분위기 장악은 물론이고 지속적인 선순환 구조를 만들기 위해 개발자 커뮤니티의 지원은 필수적일 수 밖에 없습니다. 

조그만 기업을 설립하고 새로운 서비스 개발을 진행하고 있거나 개인 개발자로서 적정한 금액으로 개발도구의 정식 사용권을 획득하려는 분들에게 마이크로소프트는 비주얼 스튜디오 20% 할인이라는 강수를 들고 나왔습니다. 어떤 선택을 할 것인지는 개인의 몫입니다. 그 선택이 옳던 그르던간에 본인이 무언가를 창조하는 개발자라면 "왜?" 에 대해서 보다 깊은 생각을 해봐야 할 것 같습니다.

개발자와 IT기업을 위한 Visual Studio 2013 할인 행사 살펴보기 [바로가기]



 
저작자 표시
신고
Posted by 노피디
Development/Azure2010.08.11 09:44
최근 클라우드 컴퓨팅이 큰 화두입니다. 구글의 Back-end 시스템이 이미 클라우드로 구동되고 있다는 사실은 너무나 많이 알려진 사실이지요. 국내의 대기업들도 너도나도 클라우드 컴퓨팅에 뛰어 들고 있지만 세계적인 IT 벤더들의 발걸음을 따라가기는 무척 힘든 상황입니다.

마이크로소프트가 클라우드 컴퓨팅에 대응하기 위해서 제공하고 있는 서비스의 이름이 바로 Azure 입니다. Azure 는 웹 서비스로의 Role 뿐만 아니라 일반적인 어플리케이션을 위한 Worker Role 을 제공하고 Storage Service 를 통하여 Back-end 의 데이터베이스 기능까지 충실하게 제공하고 있는 클라우드 플랫폼 입니다.

시대적 흐름에 맞추어 닷넷 개발자 분들도 Azure 에 대응하는 스킬을 익혀둘 필요가 있을 것 같습니다. 저역시 이제 시작하는 단계이지만 Azure 에 올려 서비스 할 수 있는 웹, 워크의 개발을 하나씩 살펴보면서 실제 Azure 환경에 포팅하는 것까지 한번 포스팅을 통해서 공유해 볼까 합니다.

개발환경의 준비 : 비주얼 스튜디오 2010 또는 비주얼 스튜디오 2008 서비스팩 1

비주얼 스튜디오에는 Azure 개발환경이 기본적으로 포함되어 있지 않습니다. 비주얼 스튜디오에서 Azure 개발을 시작하기 위해서는 별도로 제공되는 플러그인을 설치하여 개발환경에 템플릿을 추가해 주어야 합니다. NoPD 는 비주얼 스튜디오 2010 을 사용하고 있으나 비주얼 스튜디오 2008을 쓰시는 분들도 서비스팩 1 으로 업데이트를 하면 동일하게 진행할 수 있습니다.


[ 다운로드 링크 : http://tinyurl.com/2a5qnrt ]

Azure 프로젝트 만들기

Azure Tools 를 다운로드 받아 설치하면 비주얼 스튜디오의 템플릿에 Cloud 라는 항목이 추가 된 것을 확인하실 수 있습니다. Cloud 항목 아래에는 Windows Azure Cloud Service 라는 하나의 템플릿만 존재하고 있습니다. Azure 개발은 Visual C# 으로만 제공하는 것일까요? NoPD 의 경우 Visual C# 만 설치한 상태라 이 부분은 잘 판단이 안됩니다만 다른 닷넷 언어가 안되지는 않을거라 생각됩니다.


프로젝트와 솔루션의 이름을 지정하고 확인을 누르면 아래와 같은 창을 만나게 됩니다. Azure 는 Role 이라는 이름으로 프로젝트를 구분짓고 있습니다. Role 이라는 것은 Azure 클라우드 플랫폼에서 구동되는 하나의 어플리케이션이라고 보면 됩니다. Web 형태의 서비스인지(Web Role) 아니면 데몬과 같은 백그라운드 어플리케이션인지(Worker Role) 등에 따라 Role 이 나뉘게 됩니다. 개발하려는 프로젝트의 성격에 따라 항목을 선택해 주면 됩니다.


우리는 솔루션 단위로 프로젝트를 생성하고 개발하기 때문에 솔루션 안에는 여러가지의 Role 이 있을 수 있습니다. 왼쪽에 나열된 항목들 중 필요한 Role 을 모두 우측의 빈 리스트 박스로 이동시켜 주면 프로젝트에서 해당 Role 을 사용할 수 있게 됩니다.

- NoPD -
신고
Posted by 노피디
C# 3.0 에서 새롭게 도입된 Lambda 표현식을 사용하면 코드를 정말 간단하게 표시할 수 있는 장점이 있습니다. 델리게이트가 세상에 처음 나타난 이래 이는 정말 많은 프로그램과 개발자들에게 형언할 수 없는 아름다운 생활을 할 수 있는 "기회"를 주었습니다. 물론... 기회에는 반대급부가 따랐지만 말이죠.. 쿨럭... 여튼... 아래의 간단한 세가지 코드를 보면서 코드가 아름다워지는 광경을 한번 보도록 하겠습니다.

Named 메서드의 사용
IEnumerable<string> filteredList = cities.Where(StartsWithL);

public bool StartsWithL(string name)
{
    return name.StartsWith("L");
}

자주 보시던 스타일의 코드입니다. cities 어레이에 들어 있는 값들 중 L 로 시작하는 값을 얻어오는 코드지요. string 클래스의 확장 메서드인 Where 의 도움을 받아 StartsWithL 메서드가 Where 절의 역할을 하고 있습니다.

익명 Delegate의 사용

별도로 메서드를 만들어서 호출하는 것도 나쁘지 않습니다만 이왕이면 코드를 간결하게 유지하기 위해 익명 Delegate를 많이들 사용하실 겁니다. Named 메서드 사용하던걸 익명 Delegate 로 바꿔보겠습니다.

IEnumerable<string> filteredList = cities.Where(
            delegate(string s)
            {
                return s.StartsWith("L");
            }
일단 메서드가 하나 줄어서 기분이 좋습니다 ^^; 익명 Delegate 를 이용해서 위처럼 간단하게 inline 으로 처리를 할 수 있습니다. 그런데 코드가 지저분한 것이 별로 보기가 좋지 않습니다. 이를 람다 표현식으로 바꾸어 보도록 하겠습니다

Lambda 표현식의 사용

IEnumerable<string> filteredList = cities.Where(s => s.StartsWith("L"));
아주 깔끔하게 한줄러 코드를 줄였습니다. 닷넷이 제공하는 컴파일러는 생각보다 똑똑해서 s 라는 변수가 당연히 cities의 타입을 따라간다는 것을 알고 있습니다. 인텔리센스도 실시간으로 당연히 잘 동작하겠지요.

- NoPD -
신고
Posted by 노피디
WPF 는 SilverLight 의 수퍼셋이라고 봐도 무방한 .NET Framwork 3.0 부터 제공되는 컴포넌트입니다. 데스크탑 환경에서 사용자에게 더 나은 UX 를 제공해주는 훌륭한 방법이며 윈도우 7 의 판매가 순조로와 곧 2억개를 넘어서게 되면 그 만큼 .NET Framework 의 보급률도 올라가게 되어 관심을 더 많이 받게 될 기술이 아닌가 싶습니다. 물론 Silverlight out of browser 와의 카니발라이제이션은 어떻게 봐야할지 좀 고민입니다. C# MVP 로 활동중이신 데브피아 김대욱 MVP 의 이야기를 한번 들어보시지요 :-)



- NoPD -
신고
Posted by 노피디
윈도우 폰 7 의 출시가 세달 정도 앞으로 다가왔습니다. 수많은 사람들이 새로운 세상을 꿈꾸며 윈도우 폰 7 을 기다리고 있을 것 같습니다. 이미 알려진 것처럼 윈도우 폰 7 에서는 C# 와 Silver Light 이 핵심 기술로 자리잡고 있습니다. 기존의 윈도우 모바일로 개발된 많은 UI / UX 들은 재활용되기 힘든 상황이지만 비지니스 로직이 C# 으로 되어 있다면 그나마 조금 나을 것 같습니다.

윈도우 폰 7 어플리케이션 개발을 위해 우리가 공부해야 할 것들이 참 많아 보입니다. 월간 마이크로소프트紙에도 6월부터 8월까지 세달에 걸쳐 윈도우 폰 7 개발 기초 강좌가 진행중이니 이걸 먼저 참조하면 좋을 것 같구요, 그 외 Silver Light 4 자체에 대한 학습을 위해 개론성격의 강의를 MS 의 김영욱 Evangelist 께서 만든 동영상이 있어 공유합니다. Techdays 2010 에서 공개된 영상이고 Silver Light 플러그인이 설치되어 있으면 바로 감상이 가능합니다 :-)



- NoPD -
신고
Posted by 노피디
Development2010.04.07 09:05
여러분들은 지금 어떤 개발도구를 사용하고 계시나요? 자바(Java) 개발을 하신다면 이클립스(Eclipse)를 사용하실거고 iPhone 이나 iPad 용 어플리케이션을 개발하신다면 Xcode 를 사용하고 계실거라 생각됩니다. 마이크로소프트의 운영체제와 디바이스 개발을 하신다면? 네, 개발도구의 대명사인 Visual Studio 2010 을 사용하고 계실겁니다.

개(?)간지나는 구슬리 형


마이크로소프트가 오는 12일, 라스베이거스에서 열리는 " Visual Studio 컨퍼런스 & 엑스포 " 행사에서 공식적인 VIsual Studio 2010 의 런칭 행사를 갖는다고 합니다. 그동안 Channel 9 의 10-4 를 통해서 VIsual Studio 10 과 .NET Framework 4 에 대한 소식이 많이 전해졌었는데요, 이번 행사를 통해서 그 장대한 막이 올라갈 예정입니다.

Visual Studio 2010 과 함께 실버라이트 4, WPF, WCF, .NET Framework 4 등 유관 기술에 관한 다양한 세션도 진행된다고 합니다. 윈도우 7 출시이후 최적의 개발도구가 아직 준비되지 않은 느낌이습니다만 VS 2010 발표와 함께 수많은 정보들과 기술들이 더 많이 공개될 것으로 생각됩니다. 공부할게 더 많아지는 것이지만 즐겁게 받아들여야 겠지요?

관련링크 : http://www.devconnections.com/shows/SP2010VS/default.asp?s=144

- NoPD -
신고
Posted by 노피디
iPhone 광풍이 연일 전국을 휩쓸고 있습니다.
그동안 윈도우 모바일 개발을 하시던 분들이 참 씁쓸해 하시는 요즘입니다만,
여전히 산업용 시장에서 윈도우 CE 기반의 장비들이 많이 사용되고 있고
윈도우 모바일 기반의 컨슈머 제품들도 계속 출시되고 있으니
윈도우 모바일 7 의 성능 개선을 기대하며 내공을 증진시키시는게 중요한 시기가 아닌가 싶습니다.

요즘 몇가지 커스텀 컨트롤 개발을 하면서
상용으로 판매되는 제품들을 이리저리 살펴보고 있습니다.
mirabyte 라는 회사에서 " iPhone 터치 컨트롤을 닷넷에서! " 를 모토로 만든
Compact Framework (2.0 이상) 용 터치기반 UI 컨트롤 라이브러리입니다.



가격은 49.95 유로로 우리나라 돈으로 몇 만원 주시면 구입가능한 금액입니다.
트라이얼 버전도 제공하고 있고, 재배포에 대한 특별한 제약이 없으니
터치기반 어플리케이션 개발에 활용하기 딱 좋아 보입니다.

(그래도... 한번 따라 만들어 봐야겠죠? ^^)

- NoPD -
신고
Posted by 노피디
간만에 본진을 떠나서 이곳에 글을 올립니다. 최근 넷북에 OS X 를 올리고 Xcode 를 슬슬 만져보고 있습니다. 그래봐야 실제로 Xcode 로 프로젝트 만들어서 테스트 해본건 열손가락 남짓하네요. 아무래도 화면이나 키보드가 불편한 넷북에서 체험한 것이라 여러해 동안 Xcode 를 이용하여 Mac 용 혹은 iPhone 용 어플리케이션을 개발해 오신 분들이 " 잘 모르면서 그런소리 하지마라 " 할지도 모르겠습니다.

여러해 동안 Visual Studio 만을 가지고 (Eclipse도 쓰지 않고!) 웹 / 어플리케이션 개발 업무를 진행하다 보니 너무 손에 익은 IDE 가 되버린것 같습니다. Xcode 로 iPhone 이나 Mac 어플리케이션 개발을 시작하시려는 분들이 아주 작으나마 문화적(?) 충격을 최소화 하시라고 간단히 느낀점을 적어봅니다.

인텔리센스(Intellisense), 정말 고마운 녀석이었다

Visual Studio 의 가장 강력한 기능중 하나가 인텔리센스입니다. 오죽했으면 Eclipse 에서도 인텔리센스 기능을 구현했겠습니까. 워낙에 방대해져 버린 클래스 라이브러리나 API 들을 개발자들이 다 외울 수 없기에, 인텔리센스는 기억의 끈을 더듬을 수 있는 중요한 단서를 제공해 주곤 합니다.

Xcode 역시 간단한 인텔리센스 기능은 제공하고 있습니다. Objective-C 자체가 코드를 만들어 나가는 방식이 VS의 C 계열 언어들과 조금 달라서 보여지는 방식은 다릅니다만, 주요한 메소드, 프라퍼티를 노출시켜 주는 것은 동일하다고 하겠습니다.

그러나 Visual Studio 에서 우리가 점(.)을 찍으면 Drop-Down List 로 출력되던 메소드, 속성등의 리스트에 익숙해진 상태라 Xcode 의 그것은 불편하기 그지 없었습니다. 해당 객체가 제공하는 모든 메소드가 무엇인지 알기가 힘들어 그때 마다 도움말을 찾아가며 메소드를 찾곤 했습니다. 연습삼아 받아둔 예제들에서 사용한 메소드 외의 것들을 찾아보기가 여간 어려운게 아니더군요

개발자 Eco-System의 중축, MSDN

Visual Studio 를 이용하여 개발하는 분들의 필수품이 바로 MSDN 입니다. 온라인으로 이용을 하던 DVD 로 설치해서 이용하던, MSDN 은 다양한 예제코드(물론 제대로 안돌아가는 쓰레기 예제도 많습니다만 ;;;)들은 개발자들이 언제나 쉽게 가져다 쓸 수 있는 천군만마와 같은 역할을 해주고 있습니다.

애플역시 개발자를 위한 라이브러리 구축을 무척 신경쓰고 있다는 느낌입니다. 하지만 아무래도 절대적인 개발자의 수가 적어서인지 아직은 마음에 충족되는 정도의 편리함과 강력함(이건 좀 판단이 애매하네요. Objective-C를 겨우 1주일 접해본지라...) 을 주지는 못한다는 느낌입니다. 이 역시 익숙함의 차이때문은 아닐까 싶기도 합니다만, 여튼 MS가 Eco-System 구축은 참 잘해둔 것 같다는 느낌이 팍 듭니다.

(계속)

- NoPD -

Visual Studio, IDE, Xcode, Objective-C, iPhone, iPMicrosoft, apple, 애플,마이크로소프트odTouch
신고
Posted by 노피디
Development2009.09.04 22:09
금요일을 맞이하여 마이크로소프트가 새롭게 준비중인 Visual Studio 2010 의 Beta 1 버전을 설치했습니다. 따로 개발 적인 측면에서 VS 를 살펴보려는 이유는 아니고, 준비중인 원고에서 Visual Studio 2010 에서 확인할 내용이 몇가지 있어서 임시로 회사 PC 에 설치를 감행(?)했습니다. 워낙에 하드디스크 용량이 부족한 회사 PC 인지라, VS 2010 과 .NET Fx 4 가 올라가면 시스템이 뻗어버리는 것 아닐까 하는 걱정 때문이었지요.

여차저차 설치를 마치고 나니 하드디스크의 용량은 약 400MB 정도 남았습니다. VS2010 의 설치경로를 별도의 Path를 잡아 주었음에도 공통 모듈과 같은 부분들이 윈도우 OS 의 설치 경로에 영향을 받는게 아닌가 싶습니다. 간단하게 설치과정을 보도록 하겠습니다.


셋업 파일을 실행하면 군더더기 없는 푸른색의 깔끔한 인스톨러 화면이 눈에 띕니다. 시간이 지나면서 마이크로소프트가 공급하는 프로덕트들의 인스톨 화면들은 단순함을 추구하는 방향으로 가는 듯 합니다. 가볍에 Next 버튼을 눌러 다음 과정으로 넘어갔습니다.


어제 Visual Studio 2008 과 닷넷 프레임워크 4 의 연계를 먼저 해보려고 시도했던 탓에 이미 설치된 컴포넌트로 구분되어 화면에 출력됩니다. 5가지 항목이 새롭게 설치될 거라는 내용이 보이는데요, 실제로는 더 세세하고 다양한 항목들이 설치 과정중에 제 하드디스크에 침투하는 모습을 볼 수 있었습니다.


간단한 런타임 부터 Visual Studio 의 메인 프로그램까지 즐비한 요소들이 설치를 준비하고 있습니다. 웹 인스톨러를 다운로드 받아 설치를 진행했기 때문에 웹 에서 설치파일 다운로드가 먼저 진행되고 실제 설치는 다운로드가 끝난 다음 진행되는 모습입니다. 사용자가 한눈에 설치 진행상황을 볼 수 있는 좋은 구조입니다.


30분정도 웹서핑을 즐기면서 기다리니 설치가 성공적으로 끝났다는 메세지가 출력됩니다. 아주 일반적인 윈도우 XP 환경에서 설치작업을 진행했는데 큰 문제없이 설치가 마무리 되었습니다. 아마도 닷넷 프레임워크 4 를 같이 설치하는 경우에는 시간이 조금 더 소요될 것 같습니다. 닷넷 프레임워크 3.5 SP 1 도 필요하다는 처음의 메세지로 미루어 볼 때, 미리 이것저것 깔려있지 않다면 1시간 이상 설치시간이 소요되지 않을까 싶습니다.


Visual Studio 2008 의 스타트 업 화면과 비슷한 느낌의 화면이 떠오릅니다. SVN 클라이언트도 지가 알아서 잘 땡겨오는 착한 모습을 보여주고 있습니다. 평가판이니 평가만 하고 재빨리 지워주는게 도리이겠지요? 간만에 설치해본 Visual Studio 였습니다 :-)

- NoPD -
신고
Posted by 노피디

티스토리 툴바