Konwencje nazewnictwa - snake_case, camelCase, Kebab-case... stosowane w programowaniu Naming conventions - snake_case, camelCase, Kebab-case.... used in programming

W programowaniu istnieją różne konwencje nazewnicze dotyczące nazw elementów takich jak zmienne, funkcje czy klasy. Poprawne stosowanie konwencji nazewniczych zwiększa czytelność i efektywność kodu oraz ułatwiają jego utrzymanie i automatyzację. Język PHP podlega zasadom i rekomendacjom opisanym w standardzie PSR (PHP Standard Recommendations).

Jednakże, warto także poznać różne rodzaje notacji i ich nazwy, aby sprawnie poruszać się w świecie programistycznym.

Jeden z popularnych stylów nazewniczych to camelCase, gdzie nazwy składają się z kilku słów, a każde kolejne słowo zaczyna się wielką literą. Innym stylem jest snake_case, gdzie słowa są oddzielone podkreśleniem.

Przyjrzyjmy się bliżej najpopularniejszym konwencjom nazewnictwa:

  • camelCase - Notacja wielbłądzie, w której kolejne wyrazy są pisane łącznie, a każdy następny zaczyna się wielką literą (z wyjątkiem pierwszego wyrazu), na przykład: isPayment. Różni się od notacji PascalCase tym, że pierwszy wyraz zaczyna się małą literą. W PHP tą konwencję stosujemy obligatoryjnie do nazw metod, zwykle też zmiennych. Warto jednak zaznaczyć, że zgodnie z rekomendacjami PSR, nie narzuca się żadnej konkretnej konwencji dla nazw właściwości (property names). Zalecana jest jedynie konsekwencja w całym projekcie.
  • PascalCase - Zwana też UpperCamelCase lub StudlyCaps, to wariacja notacji wielbłądziej, z tym że każdy wyraz rozpoczynamy wielką literą. W dokumentacji PSR używana jest zwykle nazwa StudlyCaps i zalecana, wręcz wymagana jest ona dla nazwy Class. Określenie PascalCase powstało na cześć głównego architekta języka Turbo Pascal, gdzie ta notacja była szeroko stosowana.
  • Notacja węgierska – Stosowana zwykle dla nazw zmiennych, polega na poprzedzeniu właściwej nazwy zmiennej małą literą (lub kilkoma), określającą typ danej zmiennej. Przykłady: sName (dla stringu), iAge (integer), cPrefix (char/jeden znak), fFraction (float), hFile (handle/uchwyt). Mimo że konwencja jest dość powszechnie krytykowana, to często intuicyjnie stosowana przez programistów PHP dla nazw zmiennych, np. $arrUsers (tablica użytkowników), $fDividing (wynik z dzielenia), $hFile (handler do pliku). Notację węgierską wprowadził Charles Simonyi, programista z Microsoft.
  • snake_case - To notacja wężowa, zwana także (underscore case). Ma miejsce, gdy wszystkie litery słowa są małe, ale oddzielone podkreśleniem. Konwencja ta jest rzadko stosowana w językach w stylu C/C++, takich jak Java i JavaScript. Najczęściej spotykasz ją w języku skryptowym Python.
  • SCREAMING_SNAKE_CASE - Ta konwencja nosi nazwę "krzyczącej" notacji wężowej i wynika z netykiety i zwyczajów czatowych, w których treść pisana wielkimi literami uważana jest za krzyk. W językach inspirowanych C/C++, takich jak Java, Kotlin jak i PHP przyjęło się stosowanie tej konwencji do zapisu stałych. Jeśli stała składa się z więcej niż jednego słowa, każde słowo musi być oddzielone znakiem podkreślenia.
  • Kebab-case - Ta notacja jest bardzo podobna do notacji wężowej. Różnica polega na tym, że słowa oddzielone są myślnikiem, a nie podkreśleniem, jak to jest w przypadku notacji wężowej. W wielu językach nie można używać tej konwencji do nazw zmiennych czy metod z powodu ograniczeń składniowych, które zabraniają stosowania myślnika wewnątrz tych nazw. Niemniej jednak notacja kebab-case znalazła zastosowanie, zwłaszcza w wartościach argumentów adresu URL, gdzie uważana jest za najlepszą pod względem SEO, jako efekt przetworzenia najczęściej tytułu strony. W tym kontekście najczęściej używana jest nazwa slug name. Konwencja kebab-case jest również zalecana do nazewnictwa identyfikatorów w kodzie HTML, a także do class i atrybutów w CSS.

Kiedy stosować różne konwencje nazewnictwa

W zależności od języka programowania, nad którym pracujesz, oraz tego, co nazywasz, powinieneś stosować odpowiednią konwencję nazewnictwa. Każdy język programowania ma swoje preferowane style nazywania zmiennych, funkcji, klas i innych elementów programu, dlatego warto poznać i stosować się do tych zasad.

Zbiór reguł dla popularnych języków masz poniżej:

Stosowanie dobrych praktyk programistycznych, takich jak przestrzeganie konwencji nazewniczych czy nazw plików, rekomendowane jest we wszystkich językach programowania.

Podsumowując

Pamiętaj, że konwencje nazewnicze są kluczowe dla ułatwienia pracy programistów oraz zwiększenia czytelności kodu. Dlatego ważne jest, aby zawsze stosować się do konwencji przyjętych w danym języku programowania oraz społeczności programistycznej, z którą pracujesz. Dzięki temu, twój kod będzie bardziej zrozumiały i łatwiejszy do utrzymania, co ułatwi również współpracę z innymi programistami.

Warto także pamiętać, że konwencje nazewnicze nie tylko dotyczą nazw zmiennych, funkcji czy klas, ale również nazw plików, katalogów czy też bazy danych. Przyjęcie spójnej konwencji nazewnictwa dla całego projektu przyspiesza pracę programisty, zwiększa jego efektywność oraz usprawnia procesy automatyzacji.

Przestrzeganie konwencji nazewniczych jest kluczowe, ponieważ ułatwiają one pracę nie tylko Tobie, ale również innym programistom, którzy będą pracować z Twoim kodem. Dodatkowo, stosowanie konwencji ułatwia również proces szukania i rozwiązywania błędów w kodzie.


Materiał przygotował dla Was:
Andrzej EZNAWCA Mazur
Zapraszam na moje strony:
LekcjePHP.pl
Eznawca.pl