Thiết kế với hàm Python (phần 4)

Hàm loại trừ sự dư thừa

Cách thức đầu tiên cái các hàm phục vụ như cơ chế trừu tượng là bằng cách loại trừ code dư thừa, hay lặp lại.
Để khám phá khái niệm dư thừa, hãy nhìn vào một hàm tên summation, cái trả về tổng của các số bên trong một
dải các số đã cho. Sau đây là định nghĩa của summation, theo sau bởi một phiên làm việc thể hiện sử dụng của
nó:

def summation(lower, upper):

“””Arguments: A lower bound and an upper bound
Returns: the sum of the numbers from lower through upper
“””
result = 0
while lower <= upper:

result += lower
lower += 1

return result

>>> summation(1,4) # The summation of the numbers 1..4
10
>>> summation(50,100) # The summation of the numbers 50..100
3825

Nếu hàm summation không tồn tại, lập trình viên sẽ phải viết toàn bộ thuật toán mọi lần một tổng được tính toán.
Trong một chương trình cái phải tính toán nhiều tổng. cùng code sẽ xuất hiện nhiều lần. Nói cách khác, code dư
thừa sẽ được bao gồm trong chương trình. Dư thừa code là tồi vì một vài lí do. Cho một thứ, nó yêu cầu lập
trình viên cật lực nhập hay copy cùng code lặp lại, và để có nó đúng mọi lần. Sau đó, nếu lập trình viên quyết
định cải tiến thuật toán bằng cách thêm một đặc tính mới hay làm nó hiệu quả hơn, họ phải sửa lại mỗi thực thể
của code thừa qua toàn bộ chương trình. Như bạn có thể tưởng tượng, cái này sẽ là ác mộng duy trì.
Bằng cách dựa vào một định nghĩa hàm đơn thay vì nhiều thực thể của code thừa, các lập trình viên giải phóng
bản thân để viết chỉ một thuật toán đơn chỉ tại một nơi – giả sử trong một module thư viện. Bất cứ module hay
chương trình khác sau đó có thể nhập khẩu hàm cho sử dụng của nó. Một khi được nhập khẩu, hàm có thể được gọi nhiều
lần khi cần thiết. Khi các lập trình viên cần debug, sửa hay cải tiến hàm, họ cần biên tập và test chỉ định
nghĩa hàm đơn. Không cần biên tập các phần của chương trình cái gọi hàm.

Chia sẻ