Assemblies Một assembly là một đơn vị luận lí chứa mã đã được biên dịch sang .NET. Chúng ta sẽ bàn kĩ về các assemblie trong chương 8, ở đây chúng ta sẽ nói sơ về nó. Một assembly là một tự mô tả đầy đủ, và nó giống một đơn vị luận lí hơn là một đơn vị vật lí, | Assemblies Một assembly là một đơn vị luận lí chứa mã đã được biên dịch sang .NET. Chúng ta sẽ bàn kĩ về các assemblie trong chương 8 ở đây chúng ta sẽ nói sơ về nó. Một assembly là một tự mô tả đầy đủ và nó giống một đơn vị luận lí hơn là một đơn vị vật lí điều đó có nghĩa là nó có thể chứa trong nhiều file thật vậy các assemblie động được lưu trong bộ nhớ không phải trong file . Nếu một assembly được lưu trong nhiều file thì sẽ có một file chính chứa các con trỏ và các mô tả về các file khác của assembly. Chú ý rằng câu trúc assembly được dùng chung cho cả mã thi hành và mã thư viện. Sự khác biệt duy nhất là assembly thi hành chứa lối vào chương trình chính trong khi assembly thư viện thì không có. Một điểm quan trọng trong các assembly là chúng chứa metadata dùng để mô tả các kiểu và phương thức được định nghĩa trong mã tương ứng. Một assembly tất nhiên cũng chứ assembly metadata dùng để mô tả chính assembly đó. Assembly metadata này chứa một vùng đựơc hiểu như là manifest cho phép kiểm tra phiên bản và tình trạng của assembly. ildasm một tiện ích có sẵn của Windows có thể dùng để nghiên cứu nội dung của một assembly bao gồm manifest metadata. Chủng ta sẽ lấy vi dụ về ildasm trong chương 8. Thật vậy một assembly chứa metadata của chương trình nghĩa là các ứng dụng hoặc các assembly khác có thể gọi mã trong môt assembly mà không cần tham chiếu đến Registry hoặc một dữ liệu nguồn khác . Một điểm quan trọng trong cách làm của COM cũ các GUID của các thành phần và giao diện interfaces không thể đạt được từ Registry. Việc dàn trải dự liệu thành 3 định vị khác nhau đồng nghĩa với việc tạo ra mối nguy hiểm trong đồng bộ hoá nó ngăn không cho các thành phần khác sử dụng. Với assemblies sẽ không còn những mối nguy hiểm như vậy bởi vì tất các các metadata được lưu trong bộ lệnh thi hành của chương trình. Chú ý rằng dù cho các assemblie được lưu thành một vài file chúng vẫn không gây vấn đề gì về đồng bộ hoá dữ liệu. Đó là vì nhờ vào file assembly chính file này chứa đường