Pisanie obiektu użytkownika w Swift, choć moje pytanie dotyczy dowolnego silnie napisanego języka. Użytkownik może mieć kilka linków (FacebookProfile, InstagramProfile itp.). Kilka pytań wokół tego.
- Czy dobrą praktyką jest zawijanie łączy we własnym obiekcie?
struct Użytkownik { var firstName: string var lastName: string var email: string var links: Linki }
Struktur Linki { var facebook: string var instagram: string var twitter: string }
A może powinny być luźne? Wiem, że technicznie oba sposoby są w porządku, ale zastanawiam się, czy istnieje ogólnie zalecane podejście - szczególnie w zakresie czytelności.
struct User {
var firstName: string
var lastName: string
var email: string
var facebookLink: string
var twitterLink: string
var instagramLink: string
}
Czy w takim scenariuszu linki powinny być zbiorem / listą? Uznałem, że nie powinna to być lista, ponieważ dostępna jest stała liczba opcji linków, a nie rosnąca liczba. Czy moje myślenie jest prawidłowe?
Czy dobrą praktyką jest umieszczanie moich metod sieciowych w obiekcie użytkownika, takich jak getUsers, getUser, updateUser?
Wiem, że mogą być subiektywne, ale staram się zrozumieć, jaka jest najlepsza praktyka w podobnych sytuacjach. Byłby wdzięczny za wszelkie wskazówki.
FacebookProfile, InstagramProfile, ...
Myślę, że OP już odpowiedział na pytanie. Jego język mówi nam, że Użytkownicy mogą nie mieć żadnego profilu lub kilku profili związanych z sieciami społecznościowymi. Ale programista w nim / nim zamienił ten element w zwykłe linki. Dlaczego nie kolekcjaProfiles
? Zgodziłem się z CandiedOrange. Za dużo zakładasz na przyszłość. Mogą pojawić się nowe sieci społecznościowe. Rzeczywiste mogą zniknąć. Użytkownicy mogą przechodzić z jednej sieci do drugiej.