Class và Object trong Golang là gì?

Class Va Object Trong Golang La Gi



Ý tưởng cơ bản trong lập trình máy tính như lớp học sự vật cung cấp một cấu trúc để nhóm mã thành các mô-đun có thể tái sử dụng và thích ứng. Golang có cú pháp, tính năng và triết lý riêng biệt. Ngược lại với các ngôn ngữ khác, giải pháp không rõ ràng khi nói đến các khái niệm về lớp học sự vật TRONG Đi . Trong bài viết này, chúng ta sẽ khám phá xem Go có khái niệm về lớp học và một sự vật và cách nó so sánh với các ngôn ngữ lập trình khác.

Class và Object là gì?

Trước khi chúng ta có thể trả lời liệu Đi các lớp học các đối tượng , trước tiên chúng ta cần xác định chúng là gì trong ngữ cảnh lập trình. MỘT lớp học là một mô hình hoặc khuôn mẫu phác thảo các đặc điểm và hành động của một tập hợp các các đối tượng . MỘT sự vật được tạo ra như một thể hiện của một lớp học khi bộ nhớ được cấp phát và trạng thái của nó được khởi tạo khi chạy. Các lớp học các đối tượng là các khối xây dựng chính trong các ngôn ngữ lập trình hướng đối tượng cổ điển như Java, C++ hoặc C# hỗ trợ đa hình, kế thừa và đóng gói.

Cấu trúc ở Golang

TRONG Đi, các lớp học được thay thế bằng các kiểu dữ liệu do người dùng định nghĩa được gọi là cấu trúc. Những cái này cấu trúc kết hợp nhiều phần tử hoặc thuộc tính và cho phép bao gồm các phương thức – các hàm hoạt động trên các thể hiện của cấu trúc. Trong khi cấu trúc chia sẻ một số điểm tương đồng với các lớp học chẳng hạn như tính kế thừa và giao diện, cũng có những khác biệt đáng chú ý. Ví dụ, Đi không có hàm tạo – một phương thức duy nhất khởi tạo trạng thái của đối tượng khi tạo, như thường thấy trong các ngôn ngữ dựa trên lớp.







Giao diện trong Golang

Đi có một khái niệm giống như các đối tượng : giao diện . MỘT giao diện là một tập hợp các phương thức mô tả một hành vi hoặc chức năng, nhưng không chỉ định cách thực hiện. giao diện cung cấp một cách để đạt được tính đa hình trong Đi , cho phép các loại khác nhau được sử dụng thay thế cho nhau nếu chúng đáp ứng các yêu cầu của giao diện. Đây là một khái niệm mạnh mẽ cho phép Đi để đạt được mức độ linh hoạt và khả năng mở rộng cao mà không làm giảm hiệu suất hoặc tính đơn giản.



Sử dụng Cấu trúc và Giao diện trong Golang

Ví dụ sau minh họa việc sử dụng cấu trúc giao diện TRONG Đi .



gói chính
nhập khẩu 'fmt'

loại người cấu trúc {
chuỗi tên
}

loại Công nhân cấu trúc {
Nhân loại
chuỗi công việc
}

chức năng ( h Con người ) Thông tin ( ) {
fmt. inf ( 'Tôi là s \N ' , h. tên )
}

chức năng ( w Công nhân ) Thông tin ( ) {
fmt. inf ( 'Tôi là %s. Tôi là %s. \N ' , TRONG. tên , TRONG. công việc )
}

gõ Giao diện người {
Thông tin ( )
}
chức năng chính ( ) {
John := Công nhân { Nhân loại { 'John' } , 'công nhân' }
chim bồ câu := Nhân loại { 'Doe' }

John. Thông tin ( )
chim bồ câu. Thông tin ( )

đã ở trong người

Tôi = John
Tôi. Thông tin ( )

Tôi = chim bồ câu
Tôi. Thông tin ( )
}

Chúng tôi đã tạo ra hai cấu trúc , Nhân loại Công nhân , trong đoạn mã trên. Các chức năng in các tin nhắn sau đó được tạo. Các cấu trúc được gọi trong chủ yếu () chức năng của Người giao diện . Chúng ta có thể thấy rằng Thông tin phương pháp đã được thực hiện bởi cả hai Công nhân Nhân loại , do đó biến i có kiểu Người giao diện sẽ hoạt động chính xác và in đầu ra.





đầu ra



Đi có một cách tiếp cận độc đáo để đóng gói . đóng gói được thực hiện trong lập trình hướng đối tượng thông thường bằng cách đặt các trường ở chế độ riêng tư và làm cho chúng có thể truy cập được thông qua các phương thức getter và setter. TRONG Đi , đóng gói đạt được bằng cách sử dụng tên trường chữ thường, chỉ hiển thị trong cùng một gói. Chiến lược này đơn giản và rõ ràng hơn, giúp hiểu cách mã hoạt động đơn giản hơn và giảm khả năng xảy ra các tác dụng phụ không lường trước được.

Đi cung cấp một hình thức đơn giản hóa của tính đa hình . Lập trình hướng đối tượng có một tính năng gọi là tính đa hình cho phép các đối tượng từ các lớp khác nhau được coi là các thể hiện của cùng một lớp. Đi không cung cấp tính kế thừa dựa trên lớp thông thường, nhưng nó hỗ trợ các giao diện, có thể được sử dụng để chỉ định một tập hợp các phương thức mà một cấu trúc phải thực hiện. Đi cũng cung cấp các xác nhận kiểu, cho phép các lập trình viên kiểm tra nội dung của biến giao diện và nhận giá trị cụ thể cơ bản.

Phần kết luận

Đi không có các lớp học hoặc các đối tượng theo nghĩa cổ điển; thay vào đó, nó sử dụng cấu trúc giao diện , cung cấp chức năng có thể so sánh theo cách đơn giản và nhẹ nhàng hơn. Đi đã trở nên phổ biến trong số các nhà phát triển, những người ưu tiên sự đơn giản, dễ đọc và hiệu suất bằng cách áp dụng một triết lý và ngữ pháp khác. Dù làm quen với Đi phương pháp có thể mất một thời gian, các tính năng và thiết kế đặc biệt của nó dẫn đến mã hiệu quả hơn và dễ bảo trì hơn.