Vâng, có sự nhầm lẫn, bởi vì F # đã chuyển từ OCaml để NET trong những năm qua. Về cơ bản, các quy ước đặt tên là "thay đổi đột phá" - mã cũ không phù hợp với mã mới.
Tuy nhiên, CTP tháng 5 năm 2009 đã giải quyết được vấn đề.
Các Release Notes nói ...
Thư Viện Tiêu chuẩn Quy ước đặt tên
Các quy ước đặt tên áp dụng cho các thư viện # F như sau:
Tất cả .NET và F # Mã OO sử dụng PascalCase theo nguyên tắc .NET hiện tại
Các toán tử lập trình hàm F # như List.map được sử dụng trong mã thực hiện nội bộ F #. Loại mã này sử dụng camelCase cho tên nhà điều hành
Không được sử dụng dấu gạch dưới.
Vì vậy, câu hỏi của bạn ...
Class.MyFunctionName or Module.my_function_name
Câu trả lời là
Class.MyFunctionName và Module.MyFunctionName
(áp dụng quy tắc 1 ở trên).
Vẫn còn một số nhầm lẫn bằng cách so sánh với toán tử lập trình F # (ví dụ: List.averageBy), nhưng mã F # sản xuất nên sử dụng CamelCase và do đó trông giống như mã .Net của mọi người. Nếu nghi ngờ, hãy kiểm tra số sample code cho CTP.
(Cá nhân tôi like_the_caml_style, nhưng tôi sẽ phải GetOverThat)
Nguồn
2009-06-11 23:35:22
Cập nhật - trong bản phát hành mới nhất, các chức năng to_type đã bị xóa theo ưu tiên của TypeType – Benjol
Cảm ơn bạn. Để đơn giản, tôi đã xóa văn bản đề cập đến chúng. –