사용할 기술 및 도구 결정
업데이트: 2007년 11월
응용 프로그램을 디자인할 때는 다양한 기술이나 접근 방법 중 적절한 기술이나 접근 방법을 선택할 때 도움이 필요합니다. 이 페이지에서는 선택 방법에 대해 간단히 설명하고 Visual Studio나 .NET Framework를 사용한 응용 프로그램 개발에 대한 자세한 정보의 링크를 제공합니다.
Visual Studio와 .NET Framework로 수행하려는 작업
응용 프로그램 만들기
사용자 인터페이스를 사용할 경우
응용 프로그램 - Windows Forms와 Web Forms 중 어떤 것을 선택할지에 대한 도움말을 보려면 Windows Forms과 Web Forms 간의 선택을 참조하십시오. 자세한 내용은 다음 페이지에 있습니다.
컨트롤 - 자세한 내용은 디자인할 때 Windows Forms 컨트롤 개발을 참조하십시오.
Windows Forms 컨트롤 - 자세한 내용은 기능별 Windows Forms 컨트롤을 참조하십시오.
HTML 서버 컨트롤 - 자세한 내용은 HTML 서버 컨트롤을 참조하십시오.
웹 사용자 정의 컨트롤 - 자세한 내용은 ASP.NET 사용자 정의 컨트롤 개요를 참조하십시오.
웹 사용자 지정 컨트롤 - 자세한 내용은 사용자 지정 ASP.NET 서버 컨트롤 개발을 참조하십시오.
Windows Presentation Foundation 컨트롤 - 자세한 내용은 컨트롤 라이브러리를 참조하십시오.
서버 기반 구성 요소
Windows 서비스 - 자세한 내용은 Windows 서비스 모니터링을 참조하십시오.
프로세스 - 모니터링 구성 요소 사용 - 자세한 내용은 Windows 프로세스 모니터링 및 관리를 참조하십시오.
PerformanceCounter - 자세한 내용은 성능 임계값 모니터링을 참조하십시오.
EventLog - 자세한 내용은 응용 프로그램, 서버 및 보안 이벤트 기록을 참조하십시오.
파일 시스템 - 자세한 내용은 파일 시스템 이벤트에 반응을 참조하십시오.
Active Directory - 자세한 내용은 System.DirectoryServices 네임스페이스 개요을 참조하십시오.
메시지 구성 요소 - 자세한 내용은 메시지 구성 요소 사용을 참조하십시오.
서버의 타이머 - 자세한 내용은 타이머 기반 서버 작업 만들기를 참조하십시오.
클라이언트의 타이머 - 자세한 내용은 Timer 구성 요소(Windows Forms)를 참조하십시오.
인터페이스를 사용하지 않을 경우
실행 파일
명령줄 응용 프로그램 - 자세한 내용은 콘솔 응용 프로그램 템플릿을 참조하십시오.
Windows 서비스(이전의 "NT 서비스") - 장기 실행 Windows 실행 파일 - 자세한 내용은 Windows 서비스 응용 프로그램을 참조하십시오.
라이브러리
XML Web services - XML Web services는 HTTP, XML, XSD, SOAP 및 WSDL과 같은 표준 프로토콜을 사용하여 느슨하게 결합된 환경에서 상호 운용성 있는 메시지를 교환할 수 있는 응용 프로그램입니다. XML Web services는 웹 응용 프로그램, Windows 데스크톱 응용 프로그램 또는 다른 XML Web services에서 액세스할 수 있습니다. 자세한 내용은 웹 서비스를 사용한 웹 프로그래밍을 참조하십시오. Visual Studio Team Edition for Architects의 일부인 분산 시스템 디자이너에서 Web services를 사용한 개발에 대한 자세한 내용은 응용 프로그램 다이어그램의 ASP.NET 응용 프로그램 개요를 참조하십시오.
.NET 구성 요소 - 자세한 내용은 구성 요소 제작을 참조하십시오.
분산 응용 프로그램 만들기
단계별 예제는 웹 서비스 디자인 연습을 참조하십시오.
스마트 장치 응용 프로그램 만들기
Smartphone과 Pocket PC 같은 장치에서 실행되는 Windows CE 및 Windows Mobile 기반 리치 클라이언트 응용 프로그램을 개발합니다. 자세한 내용은 스마트 장치 개발 및 스마트 장치 개발을 위한 디자인 고려 사항을 참조하십시오.
휴대폰, PDA(개인용 정보 단말기) 또는 호출기의 브라우저를 대상으로 하는 경우에는 모바일 Web Form을 사용하십시오. 자세한 내용은 ASP.NET 모바일 웹 페이지 만들기를 참조하십시오.
데이터 중심 응용 프로그램 만들기
다음에 해당하는 경우
여러 개의 서로 분리된 결과 테이블 사이를 탐색할 경우
여러 개의 소스(예: 동일한 데이터 집합의 서로 다른 데이터베이스, XML 파일, 스프레드시트 등)에서 데이터를 조작할 경우
데이터를 다른 응용 프로그램과 교환할 경우
같은 행 집합을 다시 사용하여 캐싱하려는 경우(예: 캐시 결과를 정렬, 검색 및 필터링)
행마다 처리량이 많을 경우
XML 변환이나 Xpath와 같은 XML 작업을 사용하여 데이터를 조작할 경우
프로그래밍을 쉽게 하려는 경우
데이터 집합 사용 - 자세한 내용은 Visual Studio의 데이터 집합 개요를 참조하십시오.
그렇지 않을 경우 직접 액세스 사용(데이터 명령 및 데이터 판독기) - 자세한 내용은 데이터 액세스 전략 권장 사항을 참조하십시오.
예를 들어, 다음과 같은 경우에 데이터 명령과 데이터 판독기를 사용합니다.
DDL 명령을 수행하는 경우
선택 기준을 기반으로 업데이트나 삭제를 수행하는 경우
사용자 상호 작용을 기반으로 하지 않는 레코드를 프로그래밍 방식으로 삽입하는 경우
저장 프로시저를 호출하여 서버 내부에서 논리를 실행하는 경우
데이터베이스에서 스칼라 값을 검색하는 경우
업데이트하거나 결과를 캐싱하지 않고 앞으로만 이동 가능한 방식으로 결과 집합을 처리하는 경우
메모리에 넣기에 너무 큰 결과 집합을 처리하는 경우
LINQ(통합 언어 쿼리)
LINQ는 쿼리 구문을 Visual Basic 및 C# 언어로 빌드합니다. 자세한 내용은 LINQ 소개를 참조하십시오.
다음과 같은 다양한 LINQ 공급자가 있습니다.
LINQ to Objects - 메모리 내 컬렉션과 함께 사용합니다.
LINQ to SQL - SQL 데이터베이스의 데이터와 함께 사용합니다.
LINQ to XML - XML과 함께 사용합니다. Visual Basic에는 다른 추가 기능도 있습니다. 자세한 내용은 Visual Basic의 XML을 참조하십시오.
LINQ to DataSet - ADO.NET 데이터 집합과 함께 사용합니다.
웹 기반 데이터 응용 프로그램
자세한 내용은 Visual Web Developer 데이터 응용 프로그램 만들기를 참조하십시오.
XML Web services는 HTTP, XML, XSD, SOAP 및 WSDL과 같은 표준 프로토콜을 사용하여 느슨하게 결합된 환경에서 상호 운용성 있는 메시지를 교환할 수 있는 응용 프로그램입니다. XML Web services는 데스크톱 응용 프로그램(Windows Forms), 웹 응용 프로그램 또는 다른 XML Web services에서 액세스할 수 있습니다. 자세한 내용은 웹 서비스를 사용한 웹 프로그래밍을 참조하십시오.
Windows Forms 기반 데이터 응용 프로그램
Windows Forms 사용 – 자세한 내용은 클라이언트 데이터 응용 프로그램 만들기를 참조하십시오.
다음에 해당하는 경우
DDL 명령을 수행하는 경우
저장 프로시저를 호출하여 서버 내부에서 논리를 실행하는 경우
데이터베이스에서 스칼라 값을 검색하는 경우
결과를 표시, 업데이트 또는 캐싱하지 않고 앞으로만 이동 가능한 방식으로 결과 집합을 처리하는 경우
크기가 너무 커 메모리에 맞지 않는 결과 집합을 처리하는 경우
직접 액세스 사용(데이터 명령 및 데이터 판독기) - 자세한 내용은 데이터 액세스 전략 권장 사항을 참조하십시오.
그렇지 않을 경우 데이터 집합 사용 - 자세한 내용은 Visual Studio의 데이터 집합 개요를 참조하십시오.
예를 들어, 다음과 같은 경우 데이터 집합을 사용합니다.
결과를 폼에 바인딩하여 레코드를 보고, 삽입하거나, 업데이트하고 삭제할 수 있도록 하는 경우
여러 개의 결과 테이블 간에 탐색할 경우
여러 개의 소스(예: 동일한 데이터 집합의 서로 다른 데이터베이스, XML 파일, 스프레드시트 등)에서 데이터를 조작할 경우
데이터를 다른 응용 프로그램과 교환할 경우
같은 행 집합을 다시 사용할 경우(예: 검색 결과를 정렬, 검색 및 필터링)
XML 변환이나 Xpath와 같은 XML 작업을 사용하여 데이터를 조작할 경우
스마트 장치 기반 데이터 응용 프로그램
자세한 내용은 관리되는 장치 프로젝트에서 데이터 작업를 참조하십시오.
Office 기반 데이터 응용 프로그램
자세한 내용은 Office 솔루션의 데이터를 참조하십시오.
웹 서비스 응용 프로그램 만들기
Windows Communication Foundation 웹 서비스
Visual Studio에서 Windows Communication Foundation 웹 서비스를 시작하려면 연습: WCF 서비스 만들기 및 액세스을 참조하십시오.
Windows Communication Foundation 기술의 기본적인 사항은 기본 WCF 프로그래밍을 참조하십시오.
XML Web services
XML Web services를 만드는 데 도움이 되는 연습은 여러 가지가 있습니다. 자세한 내용은 웹 서비스 만들기 및 액세스 연습을 참조하십시오. 또한 관리 코드의 웹 서비스 액세스도 참조하십시오.
Windows 응용 프로그램에서 XML Web services에 액세스하는 방법에 대한 단계별 예제를 보려면 연습: Windows Forms에서 XML Web services 호출을 참조하십시오.
Windows 응용 프로그램에서 XML Web services에 액세스하는 방법에 대한 단계별 예제를 보려면 연습: Visual Basic 또는 Visual C#을 사용하여 웹 서비스 액세스를 참조하십시오.
분산 시스템 디자이너에서 XML Web services의 개발을 디자인하고 평가하는 방법에 대한 단계별 예제를 보려면 분산 시스템 디자이너 기초 연습을 참조하십시오.
워크플로 응용 프로그램 만들기
Windows Workflow Foundation은 Windows에서 워크플로 기반 응용 프로그램을 신속하게 만들 수 있는 프로그래밍 모델, 엔진 및 도구입니다.
각기 다른 유형의 워크플로에 대한 개요는 Windows Workflow Foundation Overview를 참조하십시오.
Visual Studio는 워크플로 응용 프로그램을 쉽게 만들 수 있는 도구를 제공합니다. 자세한 내용은 워크플로 프로젝트 만들기를 참조하십시오.
Office 개발 솔루션 만들기
Microsoft Visual Studio Tools for the Microsoft Office System(버전 3.0)을 사용하면 관리 코드를 통해 Microsoft Office 문서와 Microsoft Office Outlook을 사용자 지정할 수 있습니다.
Office 응용 프로그램을 사용한 솔루션 개발에 대한 자세한 내용은 Office 프로그래밍의 일반적인 작업을 참조하십시오.
사용자 지정 컨트롤이나 구성 요소 만들기
보안 응용 프로그램, 속성 설정, 이벤트 처리, 앵커 컨트롤 등을 비롯하여 Windows Forms 컨트롤을 사용하는 작업에 대한 자세한 내용은 Windows Forms 컨트롤을 참조하십시오.
컨트롤을 만드는 방법에 대한 도움말을 보려면 컨트롤 형식 권장 사항을 참조하십시오.
Windows Forms 컨트롤
자세한 내용은 디자인할 때 Windows Forms 컨트롤 개발을 참조하십시오.
기존 Windows Forms 컨트롤의 기능을 추가하려면 Windows Forms 컨트롤에서 직접 상속합니다. 단계별 예제를 보려면 연습: Visual Basic을 사용하여 Windows Forms 컨트롤에서 상속 또는 연습: Visual C#을 사용하여 Windows Forms 컨트롤에서 상속을 참조하십시오.
기존 컨트롤을 새 컨트롤과 결합하려면 UserControl 클래스에서 상속합니다. 자세한 내용은 방법: UserControl 클래스에서 상속을 참조하십시오.
처음부터 컨트롤을 만들려면 Control 클래스에서 상속합니다. 자세한 내용은 방법: Control 클래스에서 상속을 참조하십시오.
COM
COM에 .NET 구성 요소 노출 - 자세한 내용은 .NET Framework 구성 요소를 COM에 노출을 참조하십시오.
.NET Framework에 COM 구성 요소 노출 - 자세한 내용은 .NET Framework에 COM 구성 요소 노출을 참조하십시오.
구성 요소
XML Web services – 기술적으로는 구성 요소가 아니지만 Windows 응용 프로그램, 웹 응용 프로그램 또는 기타 XML Web services에서 호출할 수 있습니다. 자세한 내용은 웹 서비스를 사용한 웹 프로그래밍을 참조하십시오.
.NET 구성 요소 - 자세한 내용은 구성 요소 제작을 참조하십시오.
작업 자동화 또는 환경 확장
매크로, 추가 기능 또는 마법사가 필요한지 여부를 결정하는 데 대한 도움말을 보려면 Visual Studio 자동화의 범위를 참조하십시오. 또한 적절한 자동화 방법 선택도 참조하십시오.
매크로(Visual Basic 전용) - 자세한 내용은 매크로를 사용하여 반복 작업 자동화를 참조하십시오.
추가 기능 - 자세한 내용은 방법: 추가 기능 만들기를 참조하십시오.
마법사 - 자세한 내용은 연습: 마법사 만들기를 참조하십시오.
자세한 내용은 프로젝트 확장성 소개를 참조하십시오.
새 프로젝트 형식이나 사용자 지정된 편집기 만들기와 같이 개발 환경의 고급 사용자 지정은 Visual Studio 자동화의 범위의 "VSIP 프로그램" 단원을 참조하십시오.
빌드, 디버그 또는 테스트
사용 가능한 Visual Studio 빌드 옵션에 대한 자세한 내용은 Visual Studio에서 빌드를 참조하십시오.
Visual Studio의 디버깅에 대한 일반적인 내용은 디버거 로드맵을 참조하십시오.
자세한 내용은 다음을 참조하십시오.
응용 프로그램 프로파일링
자세한 내용은 응용 프로그램 추적 및 조율을 참조하십시오.
응용 프로그램 배포
어떤 배포 프로젝트 형식을 선택하여 사용할지에 대한 도움말을 보려면 배포 전략 선택 및 설치 및 배포 프로젝트를 참조하십시오.
Visual Studio 솔루션 자세한 내용은 ClickOnce 응용 프로그램 게시를 참조하십시오.
웹 응용 프로그램 자세한 내용은 웹 설치 프로젝트의 배포를 참조하십시오.
웹 서비스 자세한 내용은 방법: 관리 코드의 웹 서비스 배포를 참조하십시오.
Windows 응용 프로그램 예제를 보려면 연습: Windows 기반 응용 프로그램 배포를 참조하십시오.
NET 구성 요소 자세한 내용은 병합 모듈 프로젝트를 참조하십시오. 단계별 예제는 연습: 병합 모듈을 사용하여 공유 구성 요소 설치를 참조하십시오.
ActiveX 컨트롤 자세한 내용은 CAB 파일 프로젝트를 참조하십시오. 단계별 예제는 방법: CAB 프로젝트 만들기 또는 추가를 참조하십시오.
Visual Studio Team Edition for Architects에서 대상 데이터 센터에 대한 응용 프로그램 시스템의 배포를 평가하는 방법에 대한 자세한 내용은 연습: 배포에 대한 응용 프로그램 시스템 유효성 검사 및 배포 디자이너로 시스템 배포 평가를 참조하십시오.
이전 버전에서 업그레이드
Visual Basic 자세한 내용은 이전 버전의 Visual Basic에서 만든 응용 프로그램 업그레이드를 참조하십시오.
C++ 자세한 내용은 프로그램 이식 및 업그레이드를 참조하십시오.
기능에 대한 정보
새로운 기능
Visual C++ 2005 및 이전 버전의 변경 내용
Visual Studio Tools for Office의 새로운 기능