F # - Không gian tên

A namespaceđược thiết kế để cung cấp một cách để giữ một bộ tên riêng biệt với một bộ tên khác. Tên lớp được khai báo trong một không gian tên sẽ không xung đột với các tên lớp tương tự được khai báo trong vùng tên khác.

Theo thư viện MSDN, namespace cho phép bạn tổ chức mã thành các khu vực chức năng liên quan bằng cách cho phép bạn đính kèm tên vào nhóm các phần tử chương trình.

Khai báo không gian tên

Để tổ chức mã của bạn trong một không gian tên, bạn phải khai báo không gian tên như phần khai báo đầu tiên trong tệp. Nội dung của toàn bộ tệp sau đó trở thành một phần của không gian tên.

namespace [parent-namespaces.]identifier

Ví dụ sau minh họa khái niệm -

Thí dụ

namespace testing

module testmodule1 =
   let testFunction x y =
      printfn "Values from Module1: %A %A" x y
module testmodule2 =
   let testFunction x y =
      printfn "Values from Module2: %A %A" x y

module usermodule =
   do
      testmodule1.testFunction ( "one", "two", "three" ) 150
      testmodule2.testFunction (seq { for i in 1 .. 10 do yield i * i }) 200

Khi bạn biên dịch và thực thi chương trình, nó sẽ tạo ra kết quả sau:

Values from Module1: ("one", "two", "three") 150
Values from Module2: seq [1; 4; 9; 16; ...] 200