.NET không phải là viết tắt của cụm từ nào cả mà nó được đặt từ nhiều ý tưởng lúc bấy giờ. Ngay cả Microsoft cũng không đưa ra cụ thể chính xác đó có nghĩa là gì.
Nếu quan tâm bạn có thể đọc thêm tại các liên kết sau:
- StackOver: What does .NET stand for? Is it an acronym?
- CNET: .Net name ties Microsoft in knots
- James Kovacs: C#/.NET History Lesson
- The Common Language Runtime (CLR)
- The Base Class Libraries
Ảnh dưới mô tả mối quan hệ giữa thư viện lớp cơ sở và CLR
1. Các Phiên Bản .NET Framework
Phiên bản .NET Framework hiện tại là 4.5.2 phát hành vào ngày 05/05/2014. Để tìm hiểu rõ hơn lịch sử các phiên bản .NET bạn có thể xem liên kết bên dưới.Wiki | MSDN
Cần phải cài đặt .NET Framework để chạy các ứng dụng .NET trên máy Client. Đối với Windows 8 đã được cài sẵn .NET Framework 4.5 và Windows 8.1 là .NET Framework 4.5.1
2. Các Khái Niệm Cơ Bản
a) MSIL - IL - CIL
Ba kiểu viết tắt này đều nói về một khái niệm- MSIL: Microsoft Intermediate Language
- IL: Intermediate Language
- CIL: Common Intermediate Language
Mã CIL có dạng như sau. Để xem mã này trên Visual Studio bạn có thể dùng.NET Reflector (fee) hoặc các công cụ tương tự khác.
.method public hidebysig instance int32 Add(int32 x,Tham khảo thêm: Understanding Common Intermediate Language (CIL)
int32 y) cil managed
{
// Code size 9 (0x9)
.maxstack 2
.locals init (int32 V_0)
IL_0000: nop
IL_0001: ldarg.1
IL_0002: ldarg.2
IL_0003: add
IL_0004: stloc.0
IL_0005: br.s IL_0007
IL_0007: ldloc.0
IL_0008: ret
} // end of method Calc::Add
b) .NET Assemblies
Sau khi Project .NET được biên dịch, cho dù bạn dùng ngôn ngữ nào thì ngôn ngữ đó đều được đưa về ngôn ngữ CIL. CIL nằm trong khối Assembly, khối này bao gồm các thành phần sau:
- A Windows file header
- A CLR file header
- CIL code
- Type metadata
- An assembly manifest
- Optional embedded resources
- Private Assembly: DLL và EXE chỉ được thực thi bởi một ứng dụng
- Public/Shared Assembly: DLL có thể được sử dụng bởi nhiều ứng dụng cùng lúc. Loại này thường được lưu trữ tại "C:\Windows\Assembly"
- Satellite Assembly: Chứa các đối tượng tĩnh và không thể thực thi ví dụ như ảnh.
c) CLR - The Common Language Runtime
CLR cung cấp môi trường Run-Time, bạn có thể hiểu đó là một môi trường cung cấp các dịch vụ có sẵn để giúp chương trình .NET chạy được và dễ dàng. Nói một cách khác nó biên dịch assembly thành mã máyHai tính năng quan trọng của CLR là:
- Managed Execution Process
- Automatic Memory Management
Ảnh quá trình nạp assembly vào CLR
d) CLS - The Common Language Specification
CLS đưa ra các quy tắc mà dựa vào đó các ngôn ngữ hướng .NET cần tuân theo để đảm bảo thực thi chéo. Nó giúp các ngôn ngữ khác nhau có thể dễ dàng tích hợp các tính năng của nhaue) CST - The Common Type System
CST xác định các thư viện và chương trình được tổ chức và cách tương tác giữa các thành phần có thể thực hiện. Nói cách khác nó hỗ trợ thực thi chéo các ngôn ngữ, định nghĩa sẵn các kiểu dữ liệu và giá trị có trong MSIL. Các ngôn ngữ trong .NET sẽ được biên dịch thành IL dựa trên kiểu dữ liệu nàyMột số kiểu dữ liệu CTS cơ bản
Type | C# | VB | C++/CLI | F# |
System.Byte | byte | Byte | unsigned char | byte |
System.Int16 | short | Short | short | int16 |
System.Int32 | int | Integer | int/long | int/int32 |
System.Int64 | long | Long | __int64 | int64 |
System.Single | float | Single | Float | single/float32 |
System.Double | double | Double | Double | double/float |
System.Boolean | bool | Boolean | Bool | bool |
System.Char | char | Char | wchar_t | char |
System.Decimal | decimal | Decimal | Decimal | decimal |
System.String | string | String | String^ | string |
CLS và CTS đảm bảo cho các ngôn ngữ khác nhau hiểu và tận dụng các tính năng của nhau tối ưu nhất trong .NET. Trong .NET hỗ trợ rất nhiều cả các ngôn ngữ phổ biến hiện nay
f) JIT - Just-In-Time
CLR chuyển mã IL thành mã máy (Native Code) trong lúc runtime. Quá trình này được gọi là JIT Compilingg) BCL - The Base Class Library
Bộ thư viện chức năng có sẵn cho tất cả ngôn ngữ trong .NET. Nó có thể tái sử dụng và được tích hợp với CLR3. Cấu Trúc Tổng Quan .NET Framework
.NET Framework là một công nghệ hỗ trợ và xây dựng các ứng dụng và dịch vụ web. Tất cả chương trình .NET đều thực hiện dưới sự giám sát của CLR. CLR tích hợp sẵn các chức năng để giúp chương trình hoạt động tốt hơn. Nhờ vào đó việc coding trở nên đỡ phức tạp hơn vì bạn không cần phải quá quan tâm về bảo mật cơ sở, giải phóng bộ nhơ chương trình ...Thực sự, nó là một công nghệ phức tạp để hiểu rõ được nó bạn phải mất kha khá thời gian.
Một số tài nguyên để bạn tự có cái nhìn tổng quát về nó
.NET Framework 4.5 - Poster
Author
.NET Framework 4.0
Author Shared
.NET Framework 3.5
.NET Framework 3.0
.NET Framework 2.0
Xem Thêm WPF Object Model
Tải Full Poster
13/08/2014
Tìm Hiểu Khái Quát .NET Framework
Related Tags :WritingObsolete
No comments:
Post a Comment
Commets Download Photoshop Actions, Lightroom Presets, PSD Template, Mockups, Stocks, Vectors, Fonts. Download free