Computer >> Máy Tính >  >> Lập trình >> Ruby

Cách viết các lớp riêng của bạn trong Ruby (Giải thích rõ ràng)

Lớp trong Ruby là gì?

Các lớp là các khối xây dựng cơ bản trong Lập trình hướng đối tượng (OOP) và chúng giúp bạn xác định kế hoạch chi tiết để tạo các đối tượng.

Đối tượng là sản phẩm của lớp .

Vậy đối tượng là gì?

Đối tượng là một “sự vật” riêng lẻ, có danh tính riêng và dữ liệu riêng của nó.

Ví dụ :

Một Book lớp có thể là bản thiết kế để tạo sách.

Lớp này xác định những thuộc tính mà TẤT CẢ sách có chung, như:

  • một tiêu đề
  • một tác giả
  • trang
  • v.v.

Mỗi cuốn sách riêng lẻ là một đối tượng và bạn có thể tạo ra nhiều đối tượng giống như nó nhờ vào Book lớp. Đó là điểm của việc tạo các lớp, chúng là bản thiết kế có thể sử dụng lại cho ứng dụng Ruby của bạn.

Bây giờ :

Bạn sẽ học cách viết các lớp học của riêng mình để có thể bắt đầu viết mã OOP ngay hôm nay.

Cách tạo một lớp Ruby

Cú pháp để tạo một lớp như sau:

class Orange
end

Lưu ý rằng :

  • Tên lớp bắt đầu bằng chữ hoa
  • Chúng tôi sử dụng class từ khóa, sau đó là end từ khóa
  • Một lớp trống không hữu ích lắm nhưng bạn vẫn có thể tạo các đối tượng từ nó

Có những cách khác để tạo một lớp (như Class.new ), nhưng những phương pháp này chỉ hữu ích trong các tình huống đặc biệt.

Một lớp, nhiều đối tượng

Công dụng chính của một lớp là trở thành một vùng chứa các phương thức, biến cá thể &hằng số, tạo thành một bản thiết kế mà bạn có thể tạo các đối tượng từ đó.

Bạn có thể tạo các đối tượng bằng new phương pháp.

Như thế này :

Orange.new

Chúng tôi biết quá trình tạo một đối tượng dưới dạng “khởi tạo” và chúng tôi nói rằng một đối tượng là một “thể hiện” của một lớp.

Tại sao phải tạo các đối tượng?

Bởi vì mọi đối tượng bạn tạo đều khác biệt và duy nhất .

Mọi đối tượng đều có bản sắc riêng của nó.

Ví dụ :

Với Orange lớp, mọi orange đối tượng bạn tạo có trọng lượng, quốc gia xuất xứ, chất lượng, v.v.

Làm cho các lớp Ruby hữu ích hơn

Các lớp trở nên hữu ích hơn khi bạn bắt đầu thêm các phương thức cá thể và biến cá thể vào chúng.

Phương thức là thứ mà lớp của bạn có thể làm.

Ví dụ :

Bạn có thể vắt một quả cam để lấy nước.

Đây là một ví dụ về mã :

class Orange
  def squeeze
    puts "Here's your juice!"
  end
end

orange = Orange.new
orange.squeeze

Các phương thức này trở thành lệnh cho các đối tượng của bạn!

Mọi Orange đối tượng bạn tạo sẽ có quyền truy cập vào squeeze này &đó là một trong những lợi ích của việc sử dụng các lớp.

Một biến phiên bản điều mà lớp của bạn biết .

Ví dụ:

class Orange
  def initialize
    @juice_available = 100
  end

  def squeeze
    @juice_available -= 50
  end
end

Biến phiên bản khác với biến cục bộ vì chúng bắt đầu bằng @ Biểu tượng. Bạn không thể truy cập chúng bên ngoài lớp trừ khi bạn xác định attr_accessor.

Đó là Lớp nào?

Khi làm việc với các đối tượng trong Ruby, sẽ rất hữu ích nếu biết một đối tượng được tạo từ lớp nào.

Bạn có thể làm điều đó như thế này :

"".class
# String

[].class
# Array

orange.class
# Orange (assuming orange = Orange.new)

Tại sao điều này hữu ích?

Các phương thức là công cụ nhỏ giúp mọi thứ xảy ra trong Ruby.

Nếu bạn biết lớp học, bạn có thể tìm ra những phương pháp có sẵn (sử dụng Google, ri hoặc pry ), nói cách khác, bạn có thể khám phá những gì đối tượng có thể làm cho bạn!

Tìm hiểu thêm về lớp học

Đây chỉ là “phần nổi của tảng băng chìm” khi nói đến các lớp học.

Nếu bạn muốn tìm hiểu thêm…

Đọc những điều này :

  • Phương thức khởi tạo Ruby
  • Attr_accessor, attr_reader, attr_writer
  • Kế thừa trong OOP
  • Lập trình hướng đối tượng

Bản thân các lớp Btw cũng là các đối tượng, ít nhất là trong Ruby 🙂

Tóm tắt

Bạn đã tìm hiểu về các lớp trong Ruby, cách tạo chúng và lý do tại sao chúng hữu ích!

Đừng quên chia sẻ bài viết này để nhiều người cùng thưởng thức.

Cảm ơn vì đã đọc.