SEO

Phỏng vấn tuyển dụng lập trình viên: Pure Function là gì?

Sự tồn tại của Hàm thuần túy, còn được gọi là hàm thuần túy trong tiếng Farsi, là cần thiết trong các trường hợp khác nhau, chẳng hạn như lập trình hàm và xây dựng chương trình trong React. Nhưng Pure Function nghĩa là gì?

Một hàm thuần túy là một hàm có các điều kiện sau:

  • Một đầu vào cụ thể luôn dẫn đến một đầu ra cụ thể.
  • Nó không có tác dụng phụ.

Trước khi chúng ta nghiêm túc thảo luận về các hàm thuần túy, có lẽ không tệ khi mở ra một chút thảo luận về Hàm để chúng ta có thể hiểu rõ hơn về lập trình hàm.

Hàm là gì?

Hàm là một quá trình nhận đầu vào (còn gọi là đối số) từ chúng ta và trả về đầu ra dự kiến ​​(còn gọi là giá trị). Các chức năng phục vụ một trong các mục đích sau:

Chức năng lập bản đồ: Tạo đầu ra dựa trên đầu vào đã cho. Về cơ bản, một hàm ánh xạ giá trị đầu vào thành giá trị đầu ra.

Các hàm thực hiện thủ tục: Một chức năng có thể được gọi để thực hiện một số bước theo trình tự. Các bước này được gọi chung là Thủ tục và lập trình theo kiểu này được gọi là Lập trình thủ tục.

Các chức năng vào/ra: Một số chức năng được sử dụng để giao tiếp với các thành phần hệ thống khác, chẳng hạn như màn hình, bộ lưu trữ, nhật ký hệ thống hoặc mạng.

Đọc thêm  Bắt đầu chương trình đào tạo lập trình học sâu với cách tiếp cận thị giác máy

không viết

Các chức năng thuần túy đều liên quan đến ánh xạ. Các hàm ánh xạ các đối số đầu vào để trả về đầu ra. Đó là, đối với mỗi bộ đầu vào, có một đầu ra. Một hàm lấy các đầu vào này và trả về đầu ra tương ứng.

Ví dụ: hàm “Math.max()” lấy các chữ số làm đối số và trả về số lớn nhất ở đầu ra.

Math.max(2, 8, 5); // số 8

Trong ví dụ này, 2, 8 và 5 là các đối số của hàm. Các giá trị truyền vào hàm.

Nhưng “Math.max()” là một hàm nhận các số của đối số và trả về số lớn nhất trong số chúng ở đầu ra. Trong ví dụ này, chữ số lớn nhất là số 8 và được trả về trong đầu ra của hàm.

Các hàm đặc biệt quan trọng trong cả toán học và khoa học máy tính, giúp chúng ta xử lý dữ liệu theo những cách hữu ích. Một lập trình viên giỏi sử dụng các tên mô tả để đặt tên cho các hàm để sau này nếu anh ta hoặc người khác nhìn thấy mã, anh ta có thể hiểu chức năng của hàm từ tên của nó.

Chúng ta cũng thấy các hàm trong toán học và chức năng của các hàm trong toán học rất giống với hàm của JavaScript. Trong đại số và toán học, bạn có thể đã thấy các hàm như thế này:

Đọc thêm  React là gì và tôi có thể học nó như thế nào?

f(x) = 2x

Trong ví dụ này, một hàm có tên là f nhận một đối số có tên là x và nhân nó với 2.

Để sử dụng chức năng này, chỉ cần đặt một giá trị thay cho x:

f(2)

Trong thực tế, nó giống như viết:

4

Do đó, bất cứ nơi nào chúng ta thấy f(2), chúng ta có thể coi nó bằng 4.

Bây giờ hãy viết hàm này bằng JavaScript:

const gấp đôi = x => x * 2

Bạn có thể kiểm tra đầu ra của hàm bằng cách sử dụng “console.log()”:

console.log( double(5) ); // 10

Bạn có nhớ chúng ta đã nói rằng f(2) có thể được thay thế bằng 4 trong các hàm toán học không? Trong JavaScript, công cụ JavaScript thay thế ‘double(5)’ bằng phản hồi là 10.

Hàm thuần túy hoặc hàm thuần túy

Một hàm thuần túy là một hàm:

  • Với cùng một đầu vào, nó tạo ra cùng một đầu ra.
  • Nó không tạo ra bất kỳ tác dụng phụ nào.

Do đó, console.log(double(5)) sẽ giống với console.log(10).

Tuyên bố này là đúng bởi vì double() là một hàm thuần túy. Nhưng nếu double() có tác dụng phụ, chẳng hạn như lưu giá trị vào bộ nhớ hoặc ghi nội dung nào đó vào bảng điều khiển, thì bạn không thể thay thế double(5) bằng 10 mà không làm thay đổi ý nghĩa của nó.

Thật hợp lý khi gọi các hàm thô mà không gọi giá trị mà chúng trả về, trong khi các hàm thuần túy thì không.

Đọc thêm  Những người đào tạo kiến ​​thức và công nghệ buổi sáng được đánh giá để tham gia thị trường việc làm CNTT-TT

Chúng tôi khuyên bạn nên sử dụng các hàm thuần túy. Đó là, nếu trong thực tế, có thể thực hiện các yêu cầu của chương trình bằng cách sử dụng các hàm thuần túy, bạn nên ưu tiên sử dụng các hàm đó hơn các tùy chọn khác trước mặt. Các hàm thuần túy cung cấp cho chúng ta dạng khối xây dựng đơn giản nhất của mã chương trình.

Có lẽ quy tắc thiết kế quan trọng nhất trong khoa học máy tính là quy tắc KISS (Keep It Stupid Simple). Theo nghĩa là bạn viết mã đơn giản nhất có thể. Sử dụng các hàm thuần túy là một cách để tuân theo quy tắc này.

Các hàm thuần túy có nhiều thuộc tính hữu ích và là cơ sở của lập trình hàm. Các chức năng thuần túy hoàn toàn độc lập với các điều kiện bên ngoài và do đó an toàn trước các lỗi bên ngoài.

Bản chất độc lập của các chức năng như vậy làm cho chúng trở thành ứng cử viên tuyệt vời cho xử lý song song trên CPU.

Do tính chất độc lập của các hàm thuần túy, tính khả chuyển và khởi tạo dễ dàng của chúng giúp chương trình của bạn trở nên linh hoạt hơn và dễ thích ứng với những thay đổi trong tương lai.

Related Articles

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

Back to top button