-
.NET 프레임워크.NET 정리 2010. 2. 18. 17:00
닷넷 프레임워크(.NET Framework)를 알아보기 이전에 우선 닷넷(.NET)이 무엇인지 무얼 하는지 어떤 점들이 있는지 알아보도록 하고 프레임워크에 대해서도 알아보기로 하자.
닷넷(.NET)이란?
닷넷(.NET)은 컴퓨터와 컴퓨터를 연결하는 인터넷을 넘어서 휴대전화기, TV, 냉장고 같은 모든 전자제품을 하나의 네트워크로 연결하는 통합서비스를 말한다. 소프트웨어를 통해 시스템, 장치들을 연결하기 위한 웹 서비스 전략으로서 플랫폼을 모두 모아놓은 닷넷(.NET) 기술은 웹 서비스를 통해 보안이 향상된 연결을 신속하게 만들어 배포하고 관리 및 사용할 수 있는 기능을 제공한다. 닷넷(.NET) Connect Solutions는 회사의 시스템을 신속하게 좀 더 효과적인 방식으로 시스템을 통합할 수 있도록 하며 시간, 장소, 장치에 상관없이 정보를 저장 및 사용할 수 있도록 Microsoft에서 지원한다.
닷넷(.NET)의 장점은?
예를 들면 비쥬얼 스튜디오 6.0에 속한 Visual C++로 코드를 만들어서 컴파일을 하게 되면 자동적으로 컴퓨터가 읽을 수 있고 사용자도 읽을 수 있는 바이너리코드로 컴파일이 되는데 비해 Visual C++.NET으로 소스코드를 작성한 뒤 컴파일을 하게 되면 바로 바이너리코드로 바뀌는 것이 아니라 중간 저장(LI)코드로 컴파일이 된다. 이렇게 일부러 LI코드를 만들어 컴파일을 하는 이유는 다른 운용체제, 즉 리눅스나 매킨토시에서도 실행이 가능하다는 점이 큰 장점이다. 회사 측면에서 봐도 다른 운영체제에 맞는 프로그램을 돈들여 더 만들 필요가 없어졌기 때문에 비용면에서 절감을 얻을 수 있게 되는 것이다. 하지만 이런 시도를 맨 처음으로 한건 닷넷(.NET)이 아닌 SUN Microsystems의 자바(JAVA)이다.
닷넷(.NET)을 이용한 웹 서비스의 장점은?
웹 서비스를 하게 되면 얻게 되는 이득으로는 일단 위에서 말했듯이 회사에서 자신이 만든 프로그램을 웹 서비스를 함으로써 수익을 얻을 수 있고, PC를 비롯, 여러종류의 스마트 장치를 통해 사용자에 맞는 서비스를 제공해 줄 수 있다는 점, 또한 보통 프로그램 하나에 들어가는 시간과 비용을 제작시간 단축이라는 점을 통해 줄일 수 있게 되고, 웹을 이용하여 새로운 파트너와 연결되어 또 다른 비즈니스 기회에 대한 가능성을 높혔다는 것 등, 여기서 제시한 이 장점들을 보고도 흥미를 못 느낀다는 건 참으로 어리석은 짓이라고 감히 말할 수 있겠다.
닷넷 프레임워크(.NET Framework)란?
닷넷 프레임워크(.NET Framework)는 닷넷(.NET) 플랫폼의 프로그래밍 모델로 웹 응용 프로그램, 스마트 클라이언트 응용 프로그램 및 XML Web Services를 작성, 구축 및 실행할 수 있게 해주고, 다른 복잡한 작업을 관리해 줌으로써 개발자가 응용 프로그램의 비즈니스용 프로그램의 개발을 변화시킬 새로운 논리 코드를 작성하는 데 집중할 수 있도록 한다.닷넷 프레임워크(.NET Framework)에는 공용 언어 런타임과 클래스 라이브러리가 포함되어 있다. 즉, 어떠한 비즈니스나 기술의 기반이 되는 구조를 말한다.
예를 들면 어떤 물건을 사고 파는데 있어서 물건을 사려고 하는 곳에 가서 직접 보고, 물어보고, 돈을 들고 가서 실거래를 한 뒤 물건을 들고 집까지 다시 와야 물건 하나를 사서 올 수 있었다. 하지만 지금은 인터넷에서 검색창에 원하는 물건을 골라서 신청만 하면 쉽게 구매할 수 있다.
우리는 인터넷을 사용해 구매하고자 하는 것만 골라서 구매한다. 그러면 나머지 여러 복잡한 일들(보안, 중간 거래, 사용 내역, 입금 확인, 배송 확인 등)은 구매사이트에서 작업을 처리하고 물건과 함께 정보를 제공해 준다.
여기서 인터넷과 같은 기능을 가진 것이 바로 닷넷 프레임워크(.NET Framework)이다.
닷넷 프레임워크(.NET Framework)의 장점은?
닷넷프레임워크(.NET Framework)를 이용하면 기존의 COM/DCOM(Component Object Model/Distributed Component Object Mode)을 지원하는 컴포넌트를 인터넷상에서도 사용할 수 있다. - 이것이 바로 웹 서비스이다 - 그래서 웹상에서 데이터와 비즈니스 구조를 가지고 사용자의 입맛에 맞는 서비스를 실현 및 구현할 수 있게 되는 것이다. 닷넷(.NET)은 또한 PC뿐 아니라 다양한 도구들(휴대폰, PDA, 스마트폰 등등)이 표준적인 프로토콜들(HTTP, SMTP, SOAP)을 통하여 네트워크에 접속, XML문서 형태로 데이터를 N계층의 분산환경에서 자유롭게 다룰 수 있도록 기능을 제공한다.
또한 수정이 원활하여 보기에도 깔끔하게 작성되어 있기 때문에 누가 어떤 프로그래머가 와서 보게 된다 하더라도 쉽게 컴파일을 해주게 되면 ASP보다 빠른 속도로 응답해주고 인터페이스 상속 기능에 호환문제도 걱정할 필요가 없으니 닷넷(.NET)의 우수성이 입증되는 순간이다.
닷넷 프레임워크(.NET Framework)의 목적은?
닷넷 프레임워크(.NET Framework)는 XML Web Services와 다른 모든 종류의 응용 프로그램(데스크탑, 모바일 또는 웹 기반 프로그램)을 개발, 구축 및 실행할 수 있게 해주는 새로운 Microsoft 프로그래밍 모델로서 Microsoft는 닷넷(.NET)의 플랫폼을 작성하면서 두가지 주된 목표를 추구했는데 첫 번째로는 개발을 구성 요소 지향적으로 만들고 기본 개체 모델을 간소화하여 Microsoft Windows에서의 개발 성과를 올리기 위함과, 두 번째로는 XML Web Services의 3세대 프레임워크를 제공하는 것이다. XML Web Services는 SOAP, WSDL(Web Services Description Language) 및 UDDI(Universal Description, Discovery, and Integration)와 같은 표준 인터넷 프로토콜로 통신하여 오늘날의 각기 다른 컴퓨팅 환경에 맞게 디자인 되고 세세한 부분으로 나뉜 응용 프로그램 및 구성 요소를 통합 했다.
닷넷 프레임워크(.NET Framework)의 구조는?
닷넷 프레임워크(.NET Framework)는 세 가지 영역으로 나뉘게 되는데,
일단 첫 번째 영역은 응용 프로그램 실행을 담당하는 공용 언어 런타임(CLR - Common Language Runtime)이다.
공용 언어 런타임(CLR)은 모든 응용 프로그램 종속성을 증가시키고 메모리를 관리하며 보안 및 언어 통합과 같은 문제를 처리한다. 공용 언어 런타임(CLR)은 코드와 응용 프로그램의 개발 과정을 단순화하고 응용 프로그램의 안정성을 높이는 데 도움이 되는 다양한 서비스를 제공한다. 이러한 작업 중 대부분은 개발자와 관리자의 작업을 단순화 및 깔끔하게 처리된다.
다음으로 두 번째 영역은 통합된 핵심 클래스이다.
클래스는 현대식 응용 프로그램을 작성하려는 개발자에게 필요한 모든 기능(XML 지원, 네트워킹 및 데이터 액세스 기능)을 제공한다. 이러한 통합된 클래스를 사용하면 응용 프로그램을 작성하는 개발자는 Windows를 기반으로 만들어진 응용 프로그램이든 웹 기반 응용 프로그램이든 관계 없이 같은 클래스를 사용하게 된다. 이러한 일관성으로 개발자 생산성과 코드 재사용 가능성이 향상된다.
세 번째 영역에는 웹 응용 프로그램 개발용 ASP.NET (US) 과 Windows 기반 또는 "스마트 클라이언트" 응용 프로그램 개발용 XML Web services (US) 및 Windows Forms (US)를 포함하는 프레젠테이션 클래스가 포함된다.
다만 스마트 클라이언트(Smart Client)등 클라이언트에서 동작해야할 프로그램이 있다면 클라이언트 컴퓨터에는 닷넷 프레임워크(.NET Framework)가 있어야 한다.
'.NET 정리' 카테고리의 다른 글
asp.net 의 웹폼에 대하여.. (0) 2010.02.25 ASP.NET Development Model (0) 2010.02.18 ASP.NET Execution Model (0) 2010.02.18 NET Framework Class Library (0) 2010.02.18 .NET 플래폼의 구조 (0) 2010.02.18