Tuyên bố miễn trừ trách nhiệm: Tôi mới chỉ chơi với Go được một ngày, vì vậy rất có thể tôi đã bỏ lỡ rất nhiều.
Có ai biết tại sao không có hỗ trợ thực sự cho thuốc generic / mẫu / whatsInAName trong Go không? Vì vậy, có một cái chung map
, nhưng được cung cấp bởi trình biên dịch, trong khi một lập trình viên Go không thể viết bản thực hiện của riêng mình. Với tất cả các cuộc nói chuyện về việc biến Go thành trực giao nhất có thể, tại sao tôi có thể SỬ DỤNG một loại chung chung nhưng không TẠO một loại mới?
Đặc biệt là khi nói đến lập trình chức năng, có lambdas, thậm chí đóng, nhưng với một hệ thống kiểu tĩnh thiếu khái quát, làm thế nào để tôi viết, tốt, các hàm bậc cao hơn như thế filter(predicate, list)
nào? OK, danh sách được liên kết và tương tự có thể được thực hiện với interface{}
hy sinh loại an toàn.
Vì một tìm kiếm nhanh trên SO / Google không tiết lộ bất kỳ thông tin chi tiết nào, có vẻ như thuốc generic, nếu có, sẽ được thêm vào Go như một suy nghĩ sau. Tôi tin tưởng rằng Thompson sẽ làm tốt hơn những người Java, nhưng tại sao lại bỏ qua những điều chung chung? Hay họ đã lên kế hoạch và chỉ chưa thực hiện?
interface{}
hy sinh loại tĩnh an toàn. Tuy nhiên, đây là một khiếu nại hơi lạ khi đề cập đến Đề án là đoạn tiếp theo, vì Đề án thường không có kiểm tra kiểu tĩnh.