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

Các chức năng &phương pháp của Ruby:Cách xác định của riêng bạn

Phương thức Ruby là gì?

Phương thức là một hoặc nhiều dòng mã Ruby được nhóm lại với nhau cho một mục đích cụ thể.

Mã được nhóm này được đặt tên để bạn có thể sử dụng nó bất cứ khi nào bạn muốn mà không cần phải viết hoặc sao chép và dán lại mã.

Mục đích của một phương pháp có thể là :

  • NHẬN thông tin.
  • THAY ĐỔI hoặc TẠO đối tượng.
  • Dữ liệu LỌC &ĐỊNH DẠNG.

Ví dụ 1 :

Kích thước size trên một Array đối tượng cung cấp cho bạn số lượng phần tử (lấy thông tin).

Ví dụ 2 :

pop phương thức xóa phần tử cuối cùng khỏi mảng (thay đổi đối tượng).

Khi bạn hiểu mối quan hệ giữa các đối tượng, lớp và phương thức, mọi thứ bắt đầu có ý nghĩa.

Các chức năng &phương pháp của Ruby:Cách xác định của riêng bạn

Hãy tiếp tục học hỏi!

Cách xác định phương thức

Ngôn ngữ lập trình Ruby có nhiều phương thức tích hợp mạnh mẽ mà bạn có thể sử dụng, nhưng bạn cũng có thể tạo riêng .

Làm thế nào?

Bạn có thể xác định phương thức phiên bản của riêng mình bằng cách sử dụng def từ khóa.

Đây là cú pháp :

def gimme_bacon
  puts "Bacon plz."
end

Chuyện gì đang xảy ra ở đây?

  1. def là một phần trong cú pháp của Ruby, nó nói rằng chúng ta muốn def không có một phương pháp
  2. gimme_bacon là tên của phương thức
  3. puts "Bacon plz." là phần thân của phương thức
  4. end đánh dấu phần cuối của định nghĩa phương thức

Việc xác định một phương thức chỉ cho Ruby biết rằng bạn muốn tạo nó.

Nếu bạn muốn sử dụng nó thì bạn cần gọi phương thức.

Cách gọi các phương thức trong Ruby

Trong Ruby, khi chúng ta sử dụng một phương thức, chúng ta nói rằng chúng ta đang gọi nó.

Bạn sẽ thường nghe thấy “cuộc gọi phương pháp” hoặc nếu bạn đang làm việc với một người theo chủ nghĩa thuần túy Hướng đối tượng, bạn có thể nghe thấy rằng “bạn đang gửi một tin nhắn”.

Dù bằng cách nào…

Hãy xem một ví dụ về việc sử dụng một phương pháp.

Thông tin cho bạn đây :

gimme_bacon

Bản in này :

"Bacon plz."

Bạn có thể gọi các phương thức trên các đối tượng.

Ví dụ :

n = [1,2,3]

n.size
# 3

n.size này đang gọi phương thức size trên đối tượng n , tình cờ là một Array .

Kết quả?

Chúng tôi nhận được kích thước của mảng.

Có những phương pháp nào?

Điều đó phụ thuộc vào lớp của đối tượng mà bạn đang gọi phương thức.

Một mảng sẽ có các phương thức khác với hàm băm .

Bạn có thể kiểm tra tài liệu Ruby để tìm danh sách các phương thức cho một lớp nhất định.

Trả lại giá trị từ các phương thức

Một khái niệm quan trọng trong Ruby là TẤT CẢ các phương thức đều trả về một giá trị.

Hãy để tôi giải thích!

Kết quả của việc gọi một phương thức, bạn sẽ nhận lại được thứ gì đó.

“Thứ gì đó” mà bạn nhận được đến từ biểu thức cuối cùng trong định nghĩa phương thức của bạn.

Đây là ý của tôi :

def number_one
  1
end

number_one
# 1

Một ví dụ khác :

def add(x,y)
  x + y
end

add(5, 6)
# 11

Chúng tôi gọi đây là "trả lại ngầm", chỉ là một cái tên ưa thích của "tự động trả lại điều cuối cùng".

Ngoài ra :

Bạn có thể yêu cầu Ruby return một cái gì đó với một từ khóa.

def two
  return 2
end

# 2

Lưu ý rằng phương thức của bạn ngừng chạy khi bạn sử dụng return .

Bạn sử dụng điều này để trả về sớm mã của mình hoặc để thoát khỏi vòng lặp.

Tại sao lại có dấu hỏi trong tên phương pháp của tôi?

Bạn có thể tìm thấy một số phương thức Ruby lạ.

Với những cái tên như :

  • empty?
  • sort!
  • title=

TẤT CẢ trong số này đều là tên phương thức hợp lệ.

Dấu chấm hỏi, dấu chấm than hoặc dấu bằng có nghĩa là gì?

Chúng là quy ước trong cộng đồng Ruby.

Giải thích :

  • Phương pháp dấu chấm hỏi , còn được gọi là phương thức vị từ, được cho là trả về true hoặc false
  • Phương thức dấu chấm than nói rằng nó sẽ làm điều gì đó khác với phiên bản không có dấu chấm than. Thông thường, điều này có liên quan đến việc thay đổi bản thân đối tượng theo một cách nào đó, chẳng hạn như thêm / xóa các phần tử. Còn được gọi là “phương pháp bang”.
  • Phương thức dấu bằng có nghĩa là phép gán . Nó được sử dụng để gán một giá trị cho một biến phiên bản

Không có quy ước nào trong số này được thực thi bởi ngôn ngữ.

Nhưng…

Nếu bạn làm theo họ, bạn sẽ có thể viết nhiều mã giống Ruby hơn!

Tóm tắt

Bạn đã học về sức mạnh của các phương thức Ruby, cách xác định chúng, sử dụng chúng và cách tuân theo các quy ước phù hợp.

Bây giờ đến lượt bạn áp dụng điều này vào thực tế 🙂

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