Convenzioni per la Nomenclatura delle Classi

Python ha una serie di regole e convenzioni che utilizziamo quando diamo nomi alle nostre classi, metodi e attributi. Queste convenzioni sono importanti perché assicurano coerenza nel codice che scrivi, rendendolo più facile da leggere e comprendere. Inoltre, aderire a queste convenzioni è una buona pratica professionale.

Nomi delle Classi

In Python, i nomi delle classi seguono la convenzione CapWords, nota anche come PascalCase. In questo stile, la prima lettera di ogni parola è maiuscola e non ci sono underscore (_) tra le parole:
class MyClass:  # Il nome della classe inizia con una lettera maiuscola
    pass        # Usiamo "pass" quando non vogliamo che la classe faccia nulla
Il termine PascalCase deriva dal linguaggio di programmazione Pascal, che adottava questa convenzione per la scrittura dei nomi. CapWords è il termine utilizzato nella guida ufficiale di stile di Python (PEP 8) ed è essenzialmente identico a PascalCase.

Nomi dei Metodi

I nomi dei metodi dovrebbero essere tutti in minuscolo, con le parole separate da underscore quando necessario per migliorare la leggibilità. Questo stile è anche noto come snake_case. Ecco un esempio:
class MyClass:
    def my_method(self):  # Il nome del metodo è tutto in minuscolo
        pass              # Dove le parole sono separate da underscore

Nomi degli Attributi

I nomi degli attributi seguono la stessa convenzione dei nomi dei metodi: dovrebbero essere tutti in minuscolo, con le parole separate da underscore per migliorare la leggibilità.
class MyClass:
    def __init__(self):
        self.my_attribute = 'some value'  # Il nome dell'attributo è in minuscolo, 
                                          # parole separate da underscore
Nel codice sopra, abbiamo definito un attributo my_attribute all'interno del metodo __init__. Il metodo __init__ è un metodo speciale nelle classi Python che viene chiamato automaticamente quando viene creata una nuova istanza della classe.
 

 
Diamo un'occhiata a un esempio completo di una classe con i suoi metodi e attributi:
class MyCar:                              # Il nome della classe usa CapWords
    def __init__(self):
        self.car_model = 'Tesla Model 3'  # Il nome dell'attributo usa snake_case

    def start_engine(self):               # Il nome del metodo usa snake_case
        print('Engine started!')
Anche se Python non impone strettamente queste convenzioni di nomenclatura, seguirle rende il tuo codice più professionale, leggibile e coerente. Pertanto, è considerata una buona pratica nella comunità Python.
 
To check your solution you need to sign in
Sign in to continue