PROGRAMMING WORKSHOP

VB.Net | Silverlight Chart+Excel Datas

이 페이지는 SilverLight+Window Phone 코너로 시작하려고 하였으나
메뉴가 너무 많아지면 헷갈릴 것도 같고
VB.Net으로 모두 하는 것들인데..뭔가 전혀 다른 언어를 이야기하는지
헷갈릴 것 같아서 VB.Net코너의 이야기로 페이지를 바꾸었다

앞에서 개체이야기를 하면서
이론은 아무리 떠들어 보았자 소용없는 짓이고
예제를 많이 만들어서 보는 것이 가장 좋을 것이고
그래서 SilverLight를 VB.Net의 개체와 관련 지식들을 얻는 좋은
도구로서 보여드리는 것이 좋을 것 같아서
하나 뭔가 만들어 보도록 한다

개체이야기도 하고
BrainTraining코너에서 Javasript, HTML,XML 등의 이야기도 하고
그러나...
실제로 많은 사람들이 막연하다
XML은 알어서 뭐하고, HTML은 알아서 뭐하고,Javascript는 알아서 뭐하고
VB.Net의 NetFrameWork는 뭔가 잡힐듯 잡힐듯..감을 잡기도 힘들고
SilverLight를 하나 VB.Net으로 해보자
SilverLight는 모든 것의 종합판이다

엑셀프로그래밍에 집중하시고 계신분들은
그냥 이 코너는 현대의 IT trend의 하나를 상식적으로, 흥미로
그냥 가볍게 보셔도 좋을 것이다
혹은 좀더 능력의 확장을 하시는 분은 깊이 파고 들어가셔도 좋고..
모두 여러분의 흥미의 크기에 따라서 활용하시면 되겠다

MS가 Silverlight를 전략적 목표중 하나로 삼는 것은
웹,모바일,스마트폰때문이라고 해도 과언이 아닐 것이다
Silverlight는 Window Phone의 개발환경이기도 하고
Silverlight를 한다고 하는 것은 곧
자연스럽게 Window Phone을 하게 되는 셈이다
Window Phone의 일반 업무,생활용 앱의 개발환경은 Silverlight가 되는 것이고
(물론 .NetFrameWork를 바탕으로 Silverlight가 있고 그 위에
Window Phone이 있는 셈)
Window Phone에서 3D등 좀더 화려한 께임등의 앱을
개발할때는 XNA Framework라는 좀더 파워풀한 그래픽지원 환경으로
개발하게 되기도 한다

VSTO와 엑셀을 통하여 VB.Net을 이야기를 진행하다 보니
VSTO는 Visual Studio정품에서만 구현이 가능하니 많은 분들이
VB.Net을 즐기는데 좀 제약이 있다
그러나 Silverlight는 아래와 같이 무료로 다운받아서 사용할 수 있으니
VB.Net을 학습하는데 도움이 될 것이다

VisualStudio에서 VB.Net으로 Silverlight App을 만들려면
아래와 같이 추가기능을 다운 받아서 하게 된다
VisualStudio는 종합개발도구이니..필요할때마다 관련 추가기능들을
다운 받아서 설치하여 사용하면 되는 것이다

Silverlight를 위한 추가기능들은 무료로 다운 받는다
위의 페이지의 아래의 Install버튼을 크릭하시면 된다



개발도구를 모두 갖출수 있으니 이야기를 전개하는데 문제가 없는 것이다

위의 것은 Silverlight와 관련 도구이고
만약 Window Phone을 하고 싶다면 추가기능들을 몇개 더 다운받아서 설치하여야
할 것이지만..
여기에서는 우선 SilverLight App을 해보는 것이니 위의 것만 다운받아서 설치한다
Window Phone의 경우는 메모리 3 GB이상..
시스템 하드여유 4GB 이상이라서 실은 우노도 Window Phone용 추가기능은 다운 받아
놓지 않은 상태다..(워낙 우노의 컴퓨터는 이런 저런 화일이 많아서
하드 1GB도 아끼려고 기를 쓰는 구닥다리 노트북이다, 또한 메모리도 2GB이고..^^ )

프로그래밍워크샵코너의 이런 저런 코너..VB.net, VSTO, XML, DOM, Javascript등의
것들이 슬슬 종합적으로 이해가 될수 있는 것이 SilverLight이다
또한 이전의 window 프로그램의 .NetFrameWork를 기반으로 하는
WPF는 Visual Studio에 이미 디폴트로 깔려 있으니 추가기능같은 것 필요없고
(이것은 Silverlight 단점을 이야기 할때 이야기하기로 하고)
SilverLight는 아래와 같이 시작을 한다



VisualStudio는 종합개발도구이다
다양한 언어, 다양한 추가기능등으로 다양한 형태의 것을 개발한다
알면 정말 쉽고 재미있는 Silverlight로 모두 친해지는 기회가 되도록 하자
아마도 재미로 치자면 엑셀만큼 재미있는 대상이다

언어는 XML의 변종(?)인 XAML이라는 언어로 다양한 모양을 만드는 역할을 하고
이것을 프로그래밍적으로 처리하기 위하여 VB,C# 언어가 대표적으로 사용된다

두개의 언어가 공존하고 있는 셈이다..웹페이지 같이 HTML로 각종 시각적 표현을
하는 것을 HTML대신에 XAML이라는 것을 사용하는 것이다
아래와 같이 기본적옵션을 선택하시면



이제 더이상 Visual Studio의 메뉴를 그림화일로 소개하면서
하지는 않을 것이다..
위의 그림에서 끝이다..
VBA편집기의 좀더 강력한 확장판이라는 가벼운 생각으로 보시면 된다

우선 일부 완성된 App을 아래링크를 크릭하여 실버라이트를 열어 보시면



인터넷 연결상태에 따라서 버벅거리고 오류가 날수도 있을 것이니..
상태좋을때 하시면 좋겠다



그림과 같이 웹페이지가 나타나고 이 상태에서는 버튼을 크릭하여도
아무 일이 일어나지 않는다
보안상 웹상태에서 여러분의 PC내의 화일등을 조작할수 없으니까..
위의 그림대로 여러분의 PC에 다운 받아서 아래의 그림과 같이
하여 보시면 Silverlight의 파워를 느낄수 있을 것이다



설치후 PC상에서 깨끗히 제거하려면 아래의 그림과 같이 한다



일에 대한 소루션을 만들때는 엑셀을 필수적도구이다
그러니 엑셀프로그래밍의 기초가 확실하다면 이런 새로운 도구를
만나도 쉽게 확장응용할수 있게 되는 셈이다
엑셀을 모르고 실버라이트만 처음 만났다면
엑셀을 배우려면 참...끔찍한 일일 것이다
그러니 여러분들은 참 좋은 도구를 이미 갖추고 항해를 하는 셈이니
얼마나 좋은가?


위의 것이 어떻게 만들어지는지 분해를 하면서 보도록 하자
Silverlight 프러그인이 설치안되신분은 물론 아무것도 안된다
이것은 세상이 다아는 공짜이니 다 받아서 설치하면 된다

참 그런데 실버라이트가 뭐여요???
말들은 많이 하는데 뭔지 모르겠다.. 엑셀에 추기기능화일을 만들어서 사용하는것은 Add-in
즉 추가기능화일이라고 하듯이
웹브라우져에 추가기능화일을 만들어서 사용하는 것은 Plug-in
즉 웹브라우져의 추가기능화일인 것이고
여러분이 만들고자 하는 것인 정확히 이야기 하면
silverlight plug-in을 기반으로 돌아가는
Silverlight Application 인것이다

이것도
웹을 기반으로 돌아가는 Application
여러분의 PC상에서 돌아 가는 Application(OOB--out of browser)
window phone을 기반으로 돌아가는 Application
으로 구분 되는 것이다

왜 이런 실버라이트로 번접을 떠냐하면 아래의 그림과 같이 과정은
간단하다
그런데 VB.Net으로 무언가 구현할때는 개체의 개념과 구현의 습관이
들지 않으면 안된다는 것이 가장 중요한 문제라는 것을 보여드리기 위함이다
아래의 그림과 같이
엑셀을 정보를 얻어서 순환하면서 얻어낸 값을 그냥 단순히
전달할 곳이 없다
왜냐면 vb.net쪽개체들이 왠만한 것은 모두 개체로 값을 받는다
챠트개체와 그리드개체(테이블)의 Itemsource속성이라고 하는 것이
어떤 형식을 갖춘 개체를 전달해주어야 말을 알아 먹기 때문 인것이다

아주 간단한 그들만의 개체형식에 맞추어 주면 된다
엑셀을 모르는 사람이 엑셀을 몰라서 쩔쩔매는 시간이
엑셀을 잘 하면서 vb.net의 개체형식을 몰라서 쩔쩔매는 시간보다 훨씬 많이 걸린다
그러니 엑셀을 잘하는 여러분은 그냥 vb.net의 정보형식(개체)에 대하여
좀 시간을 할애하면 되는 것이다



***[LOG-IN]***