C++:
Organizacja kodu w funkcje

Jak to zrobić:

Weźmy za przykład wspólne zadanie: obliczanie pola koła. Zamiast pisać ten sam wzór za każdym razem, umieszczamy go w funkcji.

#include <iostream>
#define PI 3.14159

double calculateCircleArea(double radius) {
    return PI * radius * radius;
}

int main() {
    double r = 5.0;
    std::cout << "Pole koła o promieniu " << r << " wynosi " << calculateCircleArea(r) << std::endl;
    return 0;
}

Przykładowe wyjście:

Pole koła o promieniu 5 wynosi 78.5397

Szczegółowa analiza

Historycznie procedury i funkcje stanowiły kręgosłup programowania strukturalnego, promowanego w latach 60. w celu zwalczania problemów z “spaghetti code” we wcześniejszych językach programowania imperatywnego. Alternatywy takie jak OOP (Programowanie Obiektowe) poszły dalej, kojarząc te funkcje ze strukturami danych. W C++ mamy do czynienia z regularnymi funkcjami, metodami klas (w tym metodami statycznymi), lambdami i funkcjami szablonowymi, z których każda oferuje różne korzyści. Implementacja dobrze zorganizowanych funkcji zwykle wiąże się z przestrzeganiem zasad takich jak DRY (“Don’t Repeat Yourself” - Nie Powtarzaj Się) oraz SRP (Single Responsibility Principle - Zasada Jednej Odpowiedzialności), co oznacza, że każda funkcja robi jedną rzecz, ale robi ją dobrze.

Zobacz również

Aby dowiedzieć się więcej o funkcjach w C++:

Aby dowiedzieć się więcej o zasadach projektowania związanych z funkcjami:

Dowiedz się więcej na temat lambd i zaawansowanego użycia funkcji: