Citat:
Ursprungligen postat av jonny
Varför har du fyra i prinicip identiska metoder?
checkDomain() som är privat och gör jobbet.
isFree() som använder checkDomain och returnerar resultatet
isAvailable() som är identisk med isFree()
och så har du isOccupied som i princip returnerar !checkDomain()
Hade varit intressant med en motivering till varför det inte helt enkelt hade räckt med en publik checkDomain?
Samtidigt är $domain en publik medlemsvariabel. Den borde vara privat och så skulle du komplettera getDomain() med en setDomain().
Sorry om det börjar bli lite off topic nu...
|
Har inte gjort något setter för $domain eftersom det faktiskt inte behövs.
Däremot gjorde jag en getter för att ordna med ifall du inte avslutar med .se, detta hade jag likaväl kunnat göra med en setter men valde istället att göra det i getDomain().
isFree() metoden kändes till en början självklar eftersom free.iis.se returnerar "free domain.se", men sedan att isAvailable() passade betydligt bättre (rent språkligt) och valde att lägga till metoden utan att ta bort isFree().
Men jag medger att exempelvis isOccupied() borde skrivas om.
isAvailable() och isOccupied() är bara för att skapa mer "humana" metoder, lite Ruby/Rails inspirerat tycker jag. Är väl något inspirerat utav hur modeller jobbar och fungerar i exempelvis CakePHP också.