Function là gì? Những kiến thức cơ bản về Function trong lập trình

Bước vào thế giới lập trình, hẳn ai cũng sẽ thắc mắc Function là gì? Bài viết này sẽ giúp bạn làm rõ khái niệm này, đồng thời trình bày một số loại hàm cơ bản.

Function là gì?

Function (Hàm) là một tập hợp những đoạn mã dùng để thực hiện một nhiệm vụ nào đó. Nó có thể được gọi và tái sử dụng nhiều lần. Bạn có thể chuyển thông tin vào một hàm. Đồng thời, nó cũng có thể gửi trả thông tin trở lại. Nhiều ngôn ngữ lập trình có các hàm dựng sẵn mà người dùng chỉ cần lấy từ thư viện hàm. Ngoài ra, bạn cũng có thể tự tạo ra các hàm theo mục đích của riêng mình.

Cơ chế hoạt động của hàm có thể được giải thích một cách đơn giản như sau:

  • Các hàm sẽ lần lượt được đọc theo thứ tự từ trên xuống dưới.
  • Khi bạn gọi một hàm, chương trình sẽ tạm dừng ở đoạn đang chạy và tiến hành thực thi hàm.
  • Khi hàm thực hiện xong, chương trình tiếp tục chạy ở nơi nó đang tạm dừng.
  • Nếu hàm trả về một giá trị, giá trị đó chỉ dùng được khi bạn gọi xong hàm.

Có nhiều cách khác nhau để viết hàm. Cú pháp chính xác sẽ phụ thuộc vào ngôn ngữ lập trình mà bạn đang sử dụng. Chẳng hạn, cú pháp của Python sẽ hoàn toàn khác với cú pháp của JavaScript. Do đó, bạn cần ghi nhớ cú pháp để viết hàm được chính xác.

Các loại hàm trong lập trình

Tùy thuộc vào mỗi ngôn ngữ, mà ta có thể có cách phân loại hàm khác nhau. Chẳng hạn, trong Python có 3 loại hàm là: hàm có sẵn, hàm do người dùng viết và hàm nặc danh (hay hàm Lambda).

Để thống nhất, chúng ta sẽ dựa trên cách viết hàm để phân thành ba loại như sau:

1. Hàm Void

Đây đơn giản là loại hàm không yêu cầu hoặc trả về giá trị nào cả. Hàm Void được sử dụng để hoàn thành một tập hợp các hướng dẫn.

Thông thường người ta sẽ đặt tên hàm theo chức năng của nó. Cách làm này sẽ giúp việc quản lý hàm và kiểm tra mã dễ dàng hơn.

Lấy ví dụ, chúng ta viết một hàm đặt tên là helloFunction. Mục đích của hàm là xuất dòng chữ “Hello World” ra màn hình. Đây là một trong những bài tập cơ bản nhất mà ai cũng từng làm khi mới học lập trình.

Dưới đây là hàm helloFunction được viết theo ngôn ngữ Python:

Bạn sẽ phần hiểu được Function là gì qua ví dụ cơ bản trên.
Bạn sẽ phần hiểu được Function là gì qua ví dụ cơ bản trên.

Giải thích:

  • Từ khóa def là cú pháp dùng để tạo hàm trong Python.
  • Sau def là tên của hàm. Cụ thể là helloFunction.
  • Sau tên hàm là dấu ngoặc “()” nhưng bên trong không có nội dung gì cả. Điều này cho thấy đây là một hàm void.
  • Những gì bạn muốn hàm thực hiện sẽ nằm ở dòng tiếp theo, sau dấu “:”.

2. Hàm yêu cầu giá trị đầu vào

Các hàm Void rất đơn giản, nhưng chúng cũng có hạn chế. Lý do là vì chúng hoàn toàn không thay đổi bất cứ điều gì. Do đó, một cách để ta có thể tăng tính hữu dụng của hàm là đưa cho nó các giá trị cụ thể để xử lý.

Dưới đây là hàm helloFunction có giá trị đầu vào được viết theo ngôn ngữ Python:

Minh họa về hàm yêu cầu giá trị đầu vào trong Python.
Minh họa về hàm yêu cầu giá trị đầu vào trong Python.

Giải thích:

  • Khác với hàm Void, dấu ngoặc “()” sau tên hàm đã có nội dung. Đây chính là những giá trị bắt buộc phải có khi gọi hàm. Cụ thể, newPhrase là một biến cần được nạp vào hàm để chạy.
  • Khi gọi hàm helloFunction, ta cần chuyển thông tin được yêu cầu bằng cách đặt nó vào giữa các dấu ngoặc “()”.

3. Hàm trả về một giá trị đầu ra

Loại hàm cuối cùng là loại trả về dữ liệu khi chạy xong. Điều này đặc biệt hữu ích khi bạn muốn thay đổi dữ liệu trước khi sử dụng. Chẳng hạn, bạn cần đổi từ dặm sang mét để tính toán, thì bạn cần viết ra một hàm để chuyển đổi trước.

Dưới đây là hàm addFunction trả giá trị đầu ra được viết theo ngôn ngữ Python:

Minh họa về hàm trả giá trị đầu ra trong Python.
Minh họa về hàm trả giá trị đầu ra trong Python.

Giải thích:

  • Hàm yêu cầu đầu vào là hai số nguyên a và b. Biến a và biến b được đặt trong dấu ngoặc “()” nhưng được phân tách bằng dấu phẩy.
  • Sau khi thực hiện xong, hàm sẽ trả về giá trị là tổng của a và b.
  • Từ khóa return là cú pháp để yêu cầu hàm trả về dữ liệu cuối cùng. Trong trường hợp này là “a + b”. Đây chính là tổng của a và b.

Lưu ý về Function là gì?

Một điều thú vị về hàm là nó có thể gọi đến các hàm khác. Thậm chí, một hàm có thể tự gọi chính mình (trường hợp này gọi là đệ quy). Tuy nhiên, nếu bạn lạm dụng điều này có thể sẽ khiến cho chương trình trở nên phức tạp hơn. Do đó, bạn đừng nên tạo nhiều hàm có nội dung rắc rối, phụ thuộc vào nhiều hàm khác.

Như đã nói ở trên, mỗi khi một hàm được gọi, chương trình sẽ tạm dừng. Điều này có nghĩa là chương trình đang được nạp vào bộ nhớ. Nếu bạn gọi thêm một số hàm mà không chạy xong, nghĩa là bạn dùng nhiều bộ nhớ hơn. Nếu bạn không cẩn thận, chương trình có thể vượt khỏi vòng kiểm soát và báo lỗi.

Tóm lại, Function là một nội dung quan trọng trong bất kỳ ngôn ngữ lập trình nào. Hy vọng qua bài viết bạn có thể hiểu được Function là gì, từ đó có cách để sử dụng nó tốt hơn.


Got It Vietnam – Tham khảo: Makeuseof.com

Nếu bạn quan tâm, hãy xem các vị trí đang tuyển dụng của Got It tại: bit.ly/gotit-hanoi và đọc thêm về quy trình tuyển dụng tại đây.

https://d1iv5z3ivlqga1.cloudfront.net/wp-content/uploads/2021/04/29235048/1_QAG9RXQyyMAY7i9OYo84FA.png
Got It Vietnam
February 07, 2021
Share this post to:
Tags:
0 Comments
Inline Feedbacks
View all comments
Các bài viết liên quan
Callback Function là gì? Tổng quan về Callback Function

Callback Function là gì? Tổng quan về Callback Function

Nếu bạn đã học lập trình, chắc hẳn bạn biết thế nào là function. Nhưng bạn đã nghe đến Callback Function bao giờ chưa? Callback Function là một phần quan trọng của JavaScript. Một khi bạn hiểu rõ về , bạn sẽ thành thạo JavaScript hơn rất nhiều.  Mục lục1. Callback Function là gì?2. Tại […]
Softmax Function là gì? Tổng quan về Softmax Function

Softmax Function là gì? Tổng quan về Softmax Function

Softmax Function là một khái niệm toán học. Nó được sử dụng phổ biến trong lĩnh vực công nghệ thông tin, cụ thể là Machine Learning (Học máy). Hãy cùng Got It tìm hiểu về Softmax Function nhé. Mục lục1. Khái niệm Softmax Function2. Lịch sử hàm Softmax3. Tính chất của hàm Softmax4. Lợi ích […]
Tìm hiểu Sigmoid Function và lịch sử hình thành của nó

Tìm hiểu Sigmoid Function và lịch sử hình thành của nó

Sigmoid Function là một khái niệm quen thuộc trong Deep Learning. Bài viết sẽ trình bày sơ bộ về Sigmoid Function và lịch sử hình thành của nó. Mục lụcSigmoid Function là gì?Sigmoid Function dùng để làm gì?Lịch sử của Sigmoid FunctionHàm Sigmoid trước năm 1975Hàm Sigmoid sau năm 1975 Sigmoid Function là gì? Sigmoid […]
Function là gì? Những kiến thức cơ bản về Function trong lập trình

Function là gì? Những kiến thức cơ bản về Function trong lập trình

Bước vào thế giới lập trình, hẳn ai cũng sẽ thắc mắc Function là gì? Bài viết này sẽ giúp bạn làm rõ khái niệm này, đồng thời trình bày một số loại hàm cơ bản. Mục lụcFunction là gì?Các loại hàm trong lập trình1. Hàm Void2. Hàm yêu cầu giá trị đầu vào3. Hàm […]
Arrow Function trong ES6 – khi nào nên và không nên dùng?

Arrow Function trong ES6 – khi nào nên và không nên dùng?

Arrow Function là một trong những tính năng đặc biệt của ES6, nhưng vẫn chưa phổ biến với nhiều người. Bài viết này sẽ trình bày một số đặc điểm của Arrow Function và khi nào bạn nên hoặc không nên sử dụng nó. Mục lụcArrow Function trong ES6 có gì hay?Đặc điểm của Arrow […]
Inverse Function là gì? Tổng quan về hàm ngược

Inverse Function là gì? Tổng quan về hàm ngược

Inverse Function là một khái niệm trong toán học. Nó được sử dụng khá phổ biến trong lĩnh vực công nghệ thông tin, cụ thể là lập trình. Hôm nay hãy cùng Got It tìm hiểu về Inverse Function nhé. Tìm hiểu thêm: Function là gì? Mục lục1. Khái niệm Inverse Function2. Ví dụ về […]