Ich habe die folgende Funktion in einer Klasse:
%Vor% welches wie folgt let myWeather = conditions(for: myLocation)
aufgerufen wird.
Der Code funktioniert gut, die Frage betrifft die Dokumentation. Das folgende Bild zeigt, was im Fenster 'Schnellhilfe' für die Funktion Ist das ein Fehler in Xcode oder gibt es einen Grund dafür, dass der (interne) Parametername angezeigt wird und nicht die externe Argumentbezeichnung? conditions
angezeigt wird. Da der Benutzer der Funktion das externe Argument label ( for
) verwenden muss und ich dieses Label auch explizit dokumentiert habe, sollte die Parameterzeile im Schnellhilfefenster nicht Parameters for
und nicht Parameters location
?
Ganz einfach, for
ist nicht der Parameter; location
ist. Und schnelle Hilfe dokumentiert Parameter.
Die schnelle Hilfe, for
als einen Ort auf der Erdoberfläche zu identifizieren, wäre, wie vorgeschlagen, dem Leser ein wenig rätselhaft.
Die SPLG und API Design Guidelines verwenden die Terminologie "Parameter" und "Argument Label" (wie in Ihrem Fragetitel) anstelle von "interner Parameter" und "externer Parameter "(was zu der Verwirrung führen kann, die Sie ansprechen). Gegebenenfalls fallen die Parameter in der Schnellhilfe unter die Überschrift Parameter und in der Deklaration werden Argumentbezeichnungen angezeigt.
Das "for" Wort ist kein obligatorisches Wort, es ist optional für ein besseres Verständnis des Codes, wenn verwendet.
Im Swift 3 Buch steht:
Durch die Verwendung von Argument-Labels kann eine Funktion ausdrucksstark, satzweise genannt werden, während ein Funktionskörper bereitgestellt wird, der lesbar ist und klar in der Absicht .
Ohne dieses Wort wäre das Schreiben des Codes
%Vor%Wenn wir Methoden definieren, ist es immer gut, Wörter wie mit: zu verwenden, mit :, für :, mitLabel: etc.