'Functional World/Visual Studio' 카테고리의 글 목록 :: iopeni - Think of C#

Visual Studio 2013 에는 우리가 알고 있는 Off-Line용 배포 프로젝트가 빠져 있습니다.

Microsoft는 Flexsa Soft와의 계약을 통하여 제한 버전인 Install Shield LE를 제공 하고 있습니다.


정품 Visual Studio를 사용하신다면 이메일을 등록 하고 다운로드 받으면 시리얼넘버가 메일로 발송 됩니다.


그런데 말이죠... Install Shield가 쉬운듯 하면서도 뭔가 좀 고급기능을 사용하고자 하면 제한 버전이기 때문에 지원이 안되는 건지... 이것 저것 좀 곤란한 상황을 많이 만나게 되기도 합니다.


예를 들자면.... 윈도우 서비스 프로그램 배포라던지... 또는 외부 확장 라이브러리의 실행 설치본 같은 것들을 추가 하고자 하면 살짝 좀 난감해 집니다.


이런 상황을 만나고 나니 Microsoft에서 Visual Studio에 기본 제공해 주던 설치 프로젝트가 그리워졌고.... Visual Studio 에서도 사용할 수 있는 방법을 찾기 시작 했습니다.


역시 Microsoft는 우리를 버리지 않았습니다.


있더군요......


https://visualstudiogallery.msdn.microsoft.com/9abe329c-9bba-44a1-be59-0fbf6151054d?SRC=Featured


이곳에 들어가셔서 다운로드 받은 후 설치를 하고 보면 


Visual Studio 2010에서 보던 바로 그 설치 프로젝트 템플릿을 볼 수 있습니다.. 아래 처럼 말이죠.





VSI_bundle.exe


위 클릭 하시면 이곳에서도 다운로드 받으실 수 있습니다. 암튼...... 그렇습니다.



Posted by 프로그래머란 카페인을 코드로 변환하는 기계다
,

얼마 전 Canon 카메라를 이용하여, 좀 특수한 작업을 하는 알바를 하나 진행 하여야 했다.


업체에서 제공해준 캐논 카메라 SDK는 구버전을 제공해 주면서 최신 카메라를 지원 해 달라는 요구 사항이 있었다. 뭐 어쩔 수 없이 캐논 사이트로 직행 최신 SDK를 구하려 하였으나.


아시아권 개발자에게는 제공하지 않으며.......... (캐논 일본꺼 아니었던가?) 정히 구해야 하면 딜러를 통해 구하라는 메일을 받았다.


난감하지 않을 수 없었다. 그러나 이런 일에 절망할 내가 아니었다... 틀림없이 누군가 나 처럼 고생 했을 꺼고 그럼 누군가는 공유 해 놓았을 꺼야.. 라는 막연한 희망으로 구글링을 진행 했고... 그랬다.. 누군가 나 처럼 고생하다가 공유를 한게 아닌... NuGet을 이용한 다운로드 방법을 미국 사는 애가 정리해 놓은 글을 발견 했다.


지금 까지 그냥 쉽게 구할 수 있는 외부 라이브러리들을 쓸데없이 찾아 삼만리 하고 다닌 내가 부끄러웠다... 쉐뜨....


암튼 정리 하자면...






이렇게 쉽게 검색이 되고 그냥 Install만 누르면 참조 까지 알아서 자동으로 해주는 친절 함이.... 정말 폭풍 감동이 몰려 왔다.


내가 발견한 EDSDK를 NuGet으로 찾는 방법을 기술한 친구는 




콘솔을 이용한 방법을 정리 해 놓았더랬다.


뭐 어찌 되었든 나는 내가 원하는 라이브러리를 얻었으니 아 NuGet 좋은거다.. 라고 생각 하고 있던 즈음..


친한 동생 하나가 프리즘 라이브러리를 NuGet으로 취득 하려고 하니 신버전만 보이고 구버전은 안 보여서 곤란 하다는 제보를 해 주었다.


이거 정말 방법이 없는 걸까?


물론 방법은 있다.


위 이미지 에서 처럼 NuGet Manager Console을 실행 하고 보면 PowerShell 이 실행 된다. 


사실 이걸 보면 살짝 당황 한다. 여기서 부터 뭘 해야 하지? 라고 말이다.


쫄지 말고 ...... PM> Get-Help NuGet 이라고 두들겨 보자.


그럼 이렇게 뜬다.




대충 읽어 보면 Get-Package는 현재 프로젝트에 설치 되어 있는 Package를 조회 하거나 -ListAvailable을 통해 NuGet에 등록 되어 있는 Package를 조회 해 볼 수 있다는 걸 알 수 있다.


물론 딱 봐도 보이겠지만. Install-Package 로 패키지 설치를 할 수 있다는 것도 말이다.


과감하게.... PM>Get-Help Install-Package 를 두들겨 보면 


(누르면 크게 보인다.)


옵션에 -version 이 보인다.


만약 prism4 을 설치 한다고 가정 하자.


PM> Get-Package -ListAvailable Prism

이라는 명령으로 프리즘 라이브러리 관련된 것들을 조회 할 수 있다.





이제 설치를 해 보자.


PM> Install-Package Prism -version 4.0.0




이렇게 설치가 되는 것을 확인 할 수 있다...


아 고마운 NuGet...........


Posted by 프로그래머란 카페인을 코드로 변환하는 기계다
,

저 개인적으로는 코딩을 하며, 정말 유용하게 사용하였던 것이 정의로 이동 이라는 기능입니다. 이게 없으면 정말 미쳐 버릴 것만 같았죠.


디렉토리 찾아서, 클래스 찾아서 이동 후 코드 쳐다 보며 폭풍 스크롤... 이건 정의로 이동이 라는 기능이 없을 때 였습니다.


어느 순간 정의로 이동이라는 기능이 추가 되었고 굳이 내가 찾지 않아도 바로 찾아서 이동해 주니 이 처럼 편한게 없었죠.


그런데 이제는 정의 피킹 이라는 것이 생겼습니다.


코드 수정 중 호출 되는 쪽의 코드를 보고 싶을 때 살짝궁 눌러주면 호출 되는 클래스 또는 메소드의 코드를 확인 할 수 있습니다.


만약 바라 볼 수 없는 외부 라이브러리 라면 overload infomation 정도를 화면에 인라인으로 표시 하여 주는 군요....


정의로 이동 보다.... 정의 피킹을 많이 사용하게 될 것 같습니다.


정의 피킹으로 코드 확인 하고 

정의로 이동으로 이동 하여 수정하고, 다시 참조로 원래 작업 하던 코드로 이동 후 수정...


이제 3박자가 딱딱 맞아 들어 가는 군요 코드를 수정하며 코드 찾아 다니는 노가다를 줄여주는.......


  



'Functional World > Visual Studio' 카테고리의 다른 글

Visual Studio Installer Project  (0) 2014.12.30
NuGet  (0) 2014.10.24
Visual Studio 2013 사용자 편의 기능 - 참조  (0) 2013.11.29
Visual Studio 2013 혁신~~ 그 이상????  (0) 2013.11.22
Node.js Tool for Visual Studio  (0) 2013.11.22
Posted by 프로그래머란 카페인을 코드로 변환하는 기계다
,

Visual Studio의 사용자 편의 기능 중 참조 기능에 대해서 알아 보도록 하겠습니다.


일단 참조 라고 하면 우리는 쉽게 그냥 레퍼런스 라고 생각 할 수 있겠죠...


네 맞습니다. 


어디선가 누군가가 나를 호출 하고 있다면 누가 호출 하고 있는지를 알려주는 기능 입니다.


살짝꿍 화면 캡쳐를 해 봅니다.




위에서 보시는 것 처럼 참조를 클릭 하면 

작은 박스가 하나 뜨면서 Form1.Designer.cs 파일의 43번째 라인에서 이벤트 체인으로 버튼 클릭 이벤트를 호출 하고 있는 것을 볼 수 있습니다.


물론 선택을 하면 바로 정의로 이동 하는 것을 볼 수 있습니다.


예전 MZ-Tools 와 같은 코딩 보조 도구에서 지원해 주던 기능이죠 Caller 를 파악 하고 어디서 호출 하는지 알고 바로 접근하여 코드를 수정하던 예전 일들이 이제는 Visual Studio에 포함 되었습니다.


사실 이 기능이 너무 편한건 저 같은 초보자들이나 그런 걸까요? 저는 머리속에서 돌릴 수 있는 코드량이 극히 작으므로 예전 MZ-Tools나 CodeRush 같은 플러그인에 많은 의존을 했었습니다.


여러분은 어떠세요? 좋지 않은가요?


Posted by 프로그래머란 카페인을 코드로 변환하는 기계다
,

Visual Studio 라는 개발 도구는 이전 부터 사용자의 편의성이 극대화 되어 있던 개발 도구 였습니다. 아마도 다른 개발 환경을 사용 하고 계신 분들이라면 어쩌면 Visual Studio를 부러워 할 지도 모르겠다는 생각을 합니다.


(뭐 저는 개인적으로 잠시 이클립스를 가지고 자바 프로젝트를 진행 한 적이 있는데... 도대체 어렵더군요 공부하기도 어렵고 사용하기도 어렵고... 물론 익숙해 지면 정말 편하고 좋은 개발 환경인건 알겠습니다. 그런데 전 비쥬얼 스튜디오에 익숙한 개발자여서 그런지 기능 파악을 할때도 비쥬얼 스튜디오에는 있는데 여기는 없네? 이랬던 것들이 상당 부분 있습니다. 수 많은 이클립스 확장이 있고 저는 자바 전문 개발자가 아니어서 제가 잘 알지 못 하므로 있는데도 모르고 사용 했을 수도 있으니 자바 개발자 분들 께서는 저의 무지 몽매 함으로 이클립스가 나쁘다고 평가 하는 것이다. 라는 말씀을 하신다면.. 겸허히 받아 들이겠습니다.)

....


시대의 변화에 따른 개발 환경의 변화도 다른 시각에서 조명 되어야 할 때 라는게 Visual Studio 2013 발표 기조 연설에서 잘 보여지고 있습니다.


기조 연설 링크 : http://events.visualstudio.com/kor/sessions/details?SessionProfile=3925&TrackProfile=2839


Visual Studio 2013을 보면 로그인이라는 항목이 보여지고 있죠!!!!


몇몇 분들의 Visual Studio 2013 평가를 보면 이 로그인이 존재 한다는 것으로 도대체 쓸데 없는 행위를 해 놓았다고 악평을 하시는 분들의 글도 볼 수 있습니다.


로그인을 하지 않으면 Visual Studio 2013의 시작 페이지에 있는 동영상 링크 걸려 있던 항목들도 확인 할 수 없고,

시작페이지에 표시되는 Microsoft의 소식도 확인 할 수 없죠.


이제는 개발자가 개발환경을 바라보는 시각이 달라져야 합니다.


클라우드의 개념으로 Any Time, Any Device를 통해 내 프로젝트에 접근하여 - 개발, 디버깅, 배포 할 수 있는 시대가  된 것이고 Visual Studio 2013을 통해 안정적 서비스를 제공 받을 수 있는 시대가 도래 한 것입니다.


Visual Studio 2013을 설치 한 후 개발자가 설정 해 놓은 개발 환경을 다른 PC에서 구축 하고자 할 때..(PC한대만으로 개발을 하는 분들도 많이 있겠지만. 복수의 PC에 개발 환경을 구축해 놓고 작업 하는 분들도 많이 있죠. 사실 저는 3대의 PC에 개발 환경을 구축해 놓고 사용합니다.) 


또 다른 PC에 개발 환경을 구축 하고 설정을 변경 하여 나만의 개발 환경을 만드는 일이 사실 귀찮은 일이기도 합니다. 


사실 로그인 하나만을 하는 것으로 클라우드에 저장된 나의 개발환경이 동기화 되어 귀찮은 작업을 하지 않아도 된다는 장점이 있습니다. 이것은 실시간으로 동기화 되고 적용됩니다.


사실 이런 것 만으로 로그인을 해야 한다? 라고 보면 정말 쓸데 없는 일 입니다. 이런 기능은 없어도 사용하는데, 크게 불편해서 없으면 못살겠다. 뭐 이 정도는 아니죠. 사실 그다지 특별한 것도 없고 메리트도 없습니다.


그런데 말이죠 형상 관리툴을 보면 우리가 대표적으로 많이 쓰고 있는 것이 3가지 정도 되겠죠... 


1. SVN

2. MIcrofsoft Team Foundation

3. Git


Visual Studio 2013을 보면 기본적으로 형상관리를 Team Foundation 과 Git으로 할 수 있습니다.


여기에 Git이 왜 포함 된걸까요? 


이유는 기조 연설을 통해서 아주 유명한 에릭 감마 씨가 나와서 Monaco를 설명 할 때 분명히 알 수 있습니다.


Monaco가 무엇인지 모르는 분들을 통해서 잠시 설명 하자면... 웹 기반의 Visual Studio 입니다. 계정을 보유 하고 있는 사용자들에 한하여, 프로젝트를 무료로 Git을 통해서 Visual Studio Web Server에 등록 하고 계정을 가지고 있는 팀원을 등록 - 허가된 사용자는 누구나 이 프로젝트에 웹을 통해서 접근 개발, 수정, 디버깅, 컴파일 할 수 있는 웹 기반의 Visual Studio 입니다.


기조 연설에서는 에릭 감마씨가 타블렛 PC를 가지고 크롬으로 접속하여 컴파일 하고 있네요. 사실 계정만 있다면 로컬에 비쥬얼 스튜디오를 설치 하지 않아도 된다는 뜻이 되겠죠.


뭐 물론 로컬에 비쥬얼 스튜디오를 설치해 놓는것이 여러가지 확장 기능이나. 개발 환경의 자유로운 변경을 통해 최적의 개발 환경에서 개발 을 할 수 있는 장점이 있지만... 어찌 되었든 이제는 Visual Studio 도 클라우드 기반에서 동작 합니다.


뭐 이런 환경이 복잡 다단한 현 세계에서 족쇠로 다가와.... 휴가 중 동남아 여행중인데 갑자기 회사에서 연락을 받고 휴가중 일을 할 수 밖에 없는 환경에 처 하기도 굉장히 쉬워진 여건 이긴 합니다.


휴가중 업무에 시달리지 않기 위해 인터넷이 안되는 여행지를 찾아 돌아 다녀야 할지도 모릅니다.



어찌 되었든 이제는 언제나.... 어디서나... 무엇을 가지고든 일을 할 수 있는 환경이 된겁니다. 브라보~~ 를 외칠 것인가... 아니면 나 죽었다를 외칠 것인가는 여러분의 판단에 맡겨야 겠지요... ^^




Posted by 프로그래머란 카페인을 코드로 변환하는 기계다
,

Node.js 가 드디어 Visual Studio 에서 좀 자유롭게 사용 될 수 있는 환경이 구축 발표 되었습니다.


- 소개 -

http://www.hanselman.com/blog/IntroducingNodejsToolsForVisualStudio.aspx


- 확장 설치 -

https://nodejstools.codeplex.com/


이벤트 기반의 대규모 사이트 구축 스크립트인 서블릿 노드를 드디어 자유롭게 사용할 수 있겠네요

Posted by 프로그래머란 카페인을 코드로 변환하는 기계다
,

10월 중순 MSDN에 조용하게 Visual Studio 2013이 게재 되었습니다.


직업이 직업인지라.... 일단은 설치 하고 구경해 보기로 하였습니다.




이거 설치 하고 보니까. 클래스 메소드 등에 참조 갯수를 표시해 줍니다. (위 그림의 화살표 영역)


클래스 참조 총 갯수와 메소드별 참조 갯수를 미리 파악 할 수 있다는 것은 정말 큰 장점으로 보입니다.


저희 팀에 있는 WPF를 이용하여 프로젝트를 진행하고 있는 어여쁜 동생은 2010까지의 WPF 파서가 좀 이상했는데 2012는 2010보다 좋아졌고 2013은 2012에 비해서 더욱 좋아졌다고 행복해 하더군요.


 일단 제가 담당하고 있는 파트는 DLR(Dynamic Language Runtime)을 이용하여, 프로젝트를 진행하고 있습니다. Visual Studio 2012에서는 Runtime에 동적으로 만들어진 데이터의 타입을 타입캐스팅 하는 과정에서 64비트 디버깅 모드에서 코드 수정 및 추가를 할 수 없어 32비트 디버깅 모드로 꼭 디버깅을 한 후 AnyCPU 모드로 전환 하여 릴리즈 하여야 하는 어찌 보면 조금만 불편하면 될 문제가 저에게는 상당한 귀차니즘으로 작용했고, 이 때문에 사실 좀 많이 짜증스러워 하였는데, 2013부터는 64비트 디버깅 타임에 코드 수정 및 추가를 진행하는데 있어 전혀 무리가 없습니다. 이 부분이 사실 저에게는 가장 큰 장점으로 와 닿는 군요. 


사실 디버깅 타임에 비쥬얼 스튜디오가 반응하는 반응시간이 2012에 비하여 좀 느린듯 하기도 하지만... 불편해 하던 것이 감소 되었다는 장점에 "일단 되는게 어디야....." 라며 행복해 하고 있습니다.


마이크로소프트 계열의 툴을 사용하고 있는 개발자는 나태하고 게을러 Visual Studio가 없으면 단 한줄도 코딩하지 못한다는 이야기들이 많은데... 사실 저부터도 비쥬얼 스튜디오 없이 코딩하고 싶은 생각은 없습니다.


어찌 되었든 Microsoft의 IDE는 강력했고 더욱 더 발전된 IDE를 보여 주고 있습니다.


이 새로운 툴을 사용하며... 만나게 되는 자그마한 팁들을 앞으로 블로그에 좀 담아 보려 합니다.


일단 오늘은 UltraEdit와 같은 에디터나 예전 오라클의 Sql Plus 에서 블럭을 잡고 스트링을 수정했던 기능이 IDE에서는 제공하지 않아 불편 하셨던 모든 분들에게 희소식이 될 듯 합니다.



Shift + Alt + Arrow Key를 이용하여 블럭을 잡은 후 텍스트를 수정 하면 일괄적으로 수정 변경 할 수 있습니다.


그림으로 보면 아래와 같습니다. 


Shift + Alt + Arrow key를 이용하여 블럭을 잡은 그림 입니다.



const라는 키워드를 블럭을 잡았고 이 상태에서 타자를 치게 되면 아래와 같이 const 키워드가 일괄적으로 변경 됩니다.



코딩 속도가 한결 빨라질 수 있을 듯한... 여러분은 이 기능이 마음에 안 드시나요? 전 무척이나 행복합니다.


물론 2012에도 제공되는 기능이었는데... 전 모르고 있다가... 2013에서 발견 하였네요. ^^;;


Edited by iopeni 


Posted by 프로그래머란 카페인을 코드로 변환하는 기계다
,



Visual Studio 2013 RTM 이 다음달 13일에 공식 런치 된다는 소식입니다.


한달 뒤면... 정식 버젼을 만나 볼 수 있겠네요.

Posted by 프로그래머란 카페인을 코드로 변환하는 기계다
,