Sto finendo una porta che ho fatto di una porzione di una libreria Java. La biblioteca calcola l'alba e il tramonto per una data latitudine e longitudine. Anche la libreria Java originale calcolava varie volte in base all'alba e al tramonto, che ho intenzione di ottenere in seguito.
Detto questo, sto lavorando con Objective-C e il framework Cocoa Touch. I metodi originali, essendo Java, iniziarono tutti con get
e presero i loro argomenti tra parentesi. Tuttavia, Objective-C ha una diversa struttura del metodo, quindi i metodi finiscono per sembrare diversi. Ad esempio,
public double getUTCSunset(AstronomicalCalendar astronomicalCalendar,
double zenith, boolean adjustForElevation)
diventa questo:
- (double) getUTCSunsetForDate:(NSDate*)date andZenith:(double)zenith adjustForElevation:(BOOL)adjustForElevation
.
Il problema qui è duplice. Prima di tutto, secondo la Documentazione di Apple sulla convenzione di codifica, i nomi dei metodi (e "getter"), non dovrebbero includere get
in essi. Tuttavia, sorge un secondo problema se si rilascia il get
. Finiamo con una firma del metodo che inizia con una lettera maiuscola, che non dovrebbe neanche accadere.
Come riscriverebbe questo metodo, mantenendo le firme dei metodi abbastanza simili da essere riconoscibili l'un l'altro?