====== 01 - Bezeichner ======
//Bezeichner sind die «Namen» von Klassen, Funktionen, Attributen, Variablen und Konstanten sowie Modulen und Paketen.//
===== Sprechende Bezeichner =====
//Ein sprechender Bezeichner sagt etwas über den Sinn und Zweck einer Komponente aus. Durch den Einsatz von sprechenden Bezeichnern werden viele Kommentare überflüssig.//
|{{:howto:codingstandards:zwingend.png?30|}}| Die Bezeichner (Namen) von Klassen, Funktionen, Attributen, Variablen und Konstanten müssen sprechend sein. |
|{{:howto:codingstandards:zwingend.png?30|}}| Alle Bezeichner (Namen) werden in Englisch geschrieben. |
|{{:howto:codingstandards:ausnahme.png?30|}}| Schleifenzähler innerhalb einer kurzen Iteration (max. 5 Zeilen) dürfen auch kürzere Variablennamen wie //i//, //j// verwenden. |
=== Beispiel ===
total_marks = 0
i = 0
while i < 3:
mark = input('Note >')
total_marks = total_marks + int(mark)
i = i + 1
average = total_marks / 3
print('Durchschnitt: ' + str(average))
===== Schreibweise =====
//Durch eine einheitliche Schreibweise verbessern Sie die Lesbarkeit Ihres Sourcecodes.//
|{{:howto:codingstandards:empfehlung.png?30|}}| Vermeide Sonderzeichen, Leerzeichen und Umlaute in allen Bezeichnern, sowie in Datei- und Ordnernamen. |
==== Variablen, Konstanten und Funktionen ====
|{{:howto:codingstandards:zwingend.png?30|}}| Die Bezeichner von Funktionen und Variablen bestehen aus Kleinbuchstaben. |
|{{:howto:codingstandards:zwingend.png?30|}}| Zusammengesetzte Bezeichner werden in [[wp>Snake_case|snake_case]] geschrieben (z. B. //get_fullname//) |
|{{:howto:codingstandards:zwingend.png?30|}}| Konstanten werden nur mit Grossbuchstaben geschrieben (z.B. //PI//). |
=== Beispiel ===
def main():
PI=3.14159
radius=float(input('Radius >'))
circumference=2*radius*PI
circular_area = radius*radius*PI
===== Klassen, Module und Pakete =====
|{{:howto:codingstandards:zwingend.png?30|}}| Klassennamen werden in [[https://techterms.com/definition/pascalcase|PascalCase]] geschrieben. Sie bestehen aus einem Substantiv und beginnen mit einem Grossbuchstaben (z.B. //Person//). |
|{{:howto:codingstandards:zwingend.png?30|}}| Die Bezeichner von Attributen einer Klasse beginnen mit einem Underscore (z.B. //_firstname)//. |
|{{:howto:codingstandards:zwingend.png?30|}}| Für Module werden kurze, ganz in Kleinbuchstaben geschriebene Namen gewählt. Unterstriche können im Modulnamen verwendet werden, wenn dies die Lesbarkeit verbessert ([[wp>snake_case|snake_case]]). |
|{{:howto:codingstandards:zwingend.png?30|}}| Python-Pakete haben auch kurze, ganz in Kleinbuchstaben geschriebene Namen. Der Name eines Pakets enthält keine Unterstriche. |
=== Beispiele ===
class Person:
def __init__(self, firstname, lastname):
self._firstname = firstname
self.<_astname = lastname
def get_fullname(self):
return (self._firstname + ' ' + self._lastname)
...
from phone import Phone
class SmartPhone(Phone):
pass
Die Klasse ''SmartPhone'' leitet sich von der Klasse ''Phone'' im Modul ''phone.py'' ab.