Python:
Organizacja kodu w funkcje

Jak to zrobić:

Załóżmy, że piszesz skrypt do obliczania kwadratu i sześcianu liczby. Bez funkcji to nieład powtarzania:

num = 4
kwadrat = num * num
szescian = num * num * num
print(f"Kwadrat: {kwadrat}, Sześcian: {szescian}")

num = 5
kwadrat = num * num
szescian = num * num * num
print(f"Kwadrat: {kwadrat}, Sześcian: {szescian}")

Wynik:

Kwadrat: 16, Sześcian: 64
Kwadrat: 25, Sześcian: 125

Z funkcjami jest schludniej:

def kwadrat(n):
    return n * n

def szescian(n):
    return n ** 3

num = 4
print(f"Kwadrat: {kwadrat(num)}, Sześcian: {szescian(num)}")

num = 5
print(f"Kwadrat: {kwadrat(num)}, Sześcian: {szescian(num)}")

Wynik:

Kwadrat: 16, Sześcian: 64
Kwadrat: 25, Sześcian: 125

Szczegółowy przegląd

Kiedyś, gdy programy były proste, można było obejść się bez funkcji, zapisując po prostu listę instrukcji. Ale w miarę komplikowania się oprogramowania, programiści uświadomili sobie, że wielokrotnie piszą ten sam kod. Witaj, funkcje — wielokrotnie używalne bloki kodu, które wykonują jedno działanie.

Alternatywy dla funkcji obejmują klasy (łączenie funkcji z danymi, na których działają) oraz kod wbudowany (inteligencja tam, gdzie jej potrzebujesz, ale ryzykowna dla skomplikowanych zadań). Jeśli chodzi o implementację, chodzi nie tylko o tworzenie funkcji, ale także o to, aby robiły one jedną rzecz dobrze — pomyśl o zasadzie pojedynczej odpowiedzialności. Funkcje powinny być także idealnie bezstanowe, co oznacza brak niespodzianek z danymi przychodzącymi lub wychodzącymi.

Zobacz również