230 likes | 450 Views
.NET 란 ?. MS 의 전략 ! 새로운 개발환경 새로운 API. 1/22. VB.NET. C#. JScript. Fortran;. Visual Studio .NET. CLS. .NET FRAMEWORK. ASP.NET. Windows Forms. Data and XML. BCL. CLR. Windows. COM+ SERVICE. 2/22. Visual Studio .NET. VB.NET. C#. JScript. Fortran;. CLS. ASP.NET.
E N D
.NET란? MS의 전략! 새로운 개발환경 새로운 API 1/22
VB.NET C# JScript Fortran; Visual Studio .NET CLS .NET FRAMEWORK ASP.NET Windows Forms Data and XML BCL CLR Windows COM+ SERVICE 2/22
Visual Studio .NET VB.NET C# JScript Fortran; CLS ASP.NET Windows Forms Data and XML BCL CLR Windows COM+ SERVICE 장점? 언어 통합성 언어 독립성 교차 언어의 상속가능 DLL 지옥 BYE~ 이미 만들어져 있는 컴포넌트를 활용 가능 (상속 확장) 플랫폼 기반의 최적화된 코드의 생성 자동으로 자원 관리 Increased Performance Improved Reliability http://msdn.microsoft.com/netframework/technologyinfo/topten/default.aspx 3/22
Common Language Specification a set of basic language features needed by many applications + CTS (Common Type System) 언어통합에 많은 도움을 주는 .NET Framework의 규칙 CLS CLS 언어중립성 CTS ?? 4/22
CLR vs. JVM • 플랫폼의 차이를 • 추상화 • Java만을 지원 • JVM이 설치된 여러 플랫폼 • 공통 중개 언어로 • 표현될수 있는 모든 언어 지원 • CLR이 설치된 윈도우플랫폼 5/22
.NET Framework란? .NET FRAMEWORK ASP.NET Windows Forms Data and XML BCL CLR 6/22
.NET Framework란? - Application을 개발, 배치하는 것을 단순화, 현대화 시킨 새로운 플랫폼.- 공개표준 프로토콜을 사용, 지원하는 인터넷 지향 어플리케이션 제작을 위해 설계.- 풍부한 클래스 라이브러리를 제공.- 모든 언어를 사용 가능하게 하는 언어 중립적인 플랫폼.- COM, DLL으로 제작된 기존 컴포넌트를 상호운용하도록 지원.- 새로운 운영체제(Operating System)가 아닌, 관리된 런타임 환경을 의미.- 독립적인 관리 환경인 Common Language Runtime을 통해 코드실행을 지원. 작성, 배포 및 실행을 위한 환경! 7/22
MSIL란? Metadata란? JIT Compiler란? 8/22
JIT? Just-In-Time MSIL -> Native Code JIT Complier 뭐라고 읽을까?? 9/22
Intermediate Language 확장자가 DLL,EXE But, 실행파일 아니다! 왜 MSIL을 생성할까??? 같은 기능의 프로그램을 다른 언어로 짜도 MSIL은 같다 CLS 언어중립성 CTS MSIL MSIL 10/22
Data를 서술하는 data Procedural/Declarative Construct 코드를 수행할때 metadata를 메모리에 로드해서 class와 member, 상속등의 정보를 분석한다 Metadata 11/22
Module & Assembly Assembly Module MSIL Metadata DLL 지옥 해결 실행에 필요한 파일들 Manifest 12/22
.NET Framework란? .NET FRAMEWORK ASP.NET Windows Forms Data and XML BCL CLR 14/22
프로그램이 실행되고, 관리되는 환경 CLR CTS CLS 7/22
BCL Supporter Thread Support COM Marshaler Type Checker Exception Manager Security Engine Debug Engine IL to Native compiler Code Manager GC Class Loader 7/22
.NET 언어의 몫이라는 것이 .NET 클래스 라이브러리를 가져다가 꾸밈을 넣어 사용하는 것에 불과하다라고 말할 수 있을 정도~~ BCL 7/22
메모리 관리 작업 처리 Garbage Collection 알고리즘 리소스 정리 방법 메모리 확보 시 개체 정리 방법 http://www.mskwork.com/korea/msdn/msdnmag/issues/1100/GCI/GCI.asp Garbage Collector 7/22
응용 프로그램을 격리하는 데 사용하는 가상 프로세스 OS의 프로세스 -비용이 많이 들고 -대용량 웹 서버에 필요한 번호까지 확장되지 X 응용 프로그램 도메인? 7/22
http://www.mskwork.com/korea/msdn/theshow/Episode011/default.asphttp://www.mskwork.com/korea/msdn/theshow/Episode011/default.asp http://www.mskwork.com/korea/msdn/library/techart/faq111700.htm http://msdn.microsoft.com/netframework/technologyinfo/topten/default.aspx 7/22