Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    consiglio su implementazione sistema autenticazione

    ciao a tutti. avrei bisogno di un vostro parere su come implementare la classe UserAuth, che rappresenta l'amministratore o utente + in generale dal punto di vista dell'applicazione in relazione all'autenticazione. la classe è la seguente (non terminata):
    codice:
    Namespace classes
        Public Class UserAuth
            Private m_ID As Integer
            Private m_Nick As String
            Private m_Password As String
            Private m_Email As String
            Private m_isAuthenticated As Boolean
    
            Public Property ID() As String
                Get
                    Return m_ID
                End Get
                Set(ByVal Value As String)
                    m_ID = Value
                End Set
            End Property
    
            Public Property Nick() As String
                Get
                    Return m_Nick
                End Get
                Set(ByVal Value As String)
                    m_Nick = Value
                End Set
            End Property
    
            Public Property Password() As String
                Get
                    Return m_Password
                End Get
                Set(ByVal Value As String)
                    m_Password = Value
                End Set
            End Property
    
            Public Property Email() As String
                Get
                    Return m_Email
                End Get
                Set(ByVal Value As String)
                    m_Email = Value
                End Set
            End Property
    
            Public Property Email() As String
                Get
                    Return m_Email
                End Get
                Set(ByVal Value As String)
                    m_Email = Value
                End Set
            End Property
    
        End Class
    End Namespace
    in particolare ho dei dubbi sul sistema da adottare per l'autenticazione: a rigor di logica infatti i metodi setter dovrebbero essere implementati soltanto sui membri m_Nick e m_Password, per cui non so se aggiungere una routine alla classe UserAuth che si occupi dell'autenticazione su db e dell'" inflate " delle altre proprietà oppure incaricare un'altra classe (es. un DataManager) ma ciò implicherebbe di impostare per tutti i membri i relativi metodi get e set...
    Consigli su una buona programmazione? :master:
    "0 è tutto finito. 1 è solo l'inizio"
    HO IL CERTIFICATO DI RESISTENZA.

  2. #2
    Dovresti impostare le proprieta' pubbliche dello stesso tipo dei membri privati che restituiscono.
    Poi per quanto riguarda un datamanager che si occupa di riempire l'oggetto non e' una cattiva strada.
    Saluti a tutti
    Riccardo

  3. #3
    Originariamente inviato da riccardone
    Dovresti impostare le proprieta' pubbliche dello stesso tipo dei membri privati che restituiscono.
    intanto grazie, potresti spiegare meglio il concetto? io non vorrei che i membri della classe corrispondenti ai campi del db che non interessano l'autenticazione fossero membri privati e possano essere valorizzati da altre classi....questo significa che l'inflate deve essere fatto inevitabilmente dalla classe in cui tali membri sono impostati? oppure esiste qualche pattern o metodo particolare?

    PS: scusa si , non guardare i tipi restituiti....
    "0 è tutto finito. 1 è solo l'inizio"
    HO IL CERTIFICATO DI RESISTENZA.

  4. #4
    Originariamente inviato da max161
    l'inflate deve essere fatto inevitabilmente dalla classe in cui tali membri sono impostati? oppure esiste qualche pattern o metodo particolare?
    o usi il cosidetto pattern datamapper che consiste in una classe manager che presenta tutti i metodi per smanazzare i dati della tua classe e questa dovra' semplicemente avere una serie di proprieta get e set e magari dei semplici metodi es. is_valid o equals e poco altro. Oppure metti la logica all'interno della stessa classe e a questo punto le proprieta' potranno essere ad es. solo readonly. Questa seconda ipotesi personalmente non mi piace. In genere tendo a seguire la strada del datamapper che e' uno dei pattern che applico insieme a factory e facade per permettere una correta layerizzazione e compatibilita' con rdbms diversi.
    Saluti a tutti
    Riccardo

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.