Cosa ne pensi di questa pratica di gestione delle eccezioni

2

Sto lavorando a un progetto che include molto creare / manipolare e leggere JSONObjects e matrici ma non in modo sistematico. Quindi c'è il codice JSON ovunque.
Per me va bene, tranne il fatto che ogni volta che lavoro su un JSONObject devo gestire JSONException.
Così ho creato una classe che estende JSONObject e scavalca i metodi put / get in essa e gestisce JSONExceptions all'interno di questa classe.
Ha reso il mio codice molto più chiaro e credo che sia più che sufficiente per il mio caso.

Che ne pensi?

    
posta Mr.Me 12.12.2011 - 11:22
fonte

3 risposte

3

I created a class that extends JSONObject and Override the put/get methods in it and handled JSONExceptions inside this class.

Questo può essere perfettamente perfetto o perfettamente sucky a seconda di come hai gestito l'eccezione all'interno di quella classe. Quando ( quando , non se ) sorge un'eccezione, cosa succede? Forse c'è un gestore di errori centrale che stai usando? In che modo gli utenti della sottoclasse JSONObject sanno se qualcosa è andato storto?

O hai la garanzia che le cose semplicemente non possono andare storte? Se sì, allora dovresti comunque avere una sorta di meccanismo di asserzione per catturare l'impossibile.

Eccezioni ed errori possono essere gestiti in una miriade di modi. La maggior parte dei modi va bene fino a quando le cose si bloccano presto, con il messaggio di errore più specifico possibile, e non si guastano più silenziosamente in seguito.

    
risposta data 12.12.2011 - 11:53
fonte
4

Da quanto ho capito, preferisci non gestire eccezioni controllate. La soluzione più semplice potrebbe essere che la tua classe estesa comprenda semplicemente l'eccezione JSON controllata in una nuova eccezione di runtime.

    
risposta data 12.12.2011 - 12:08
fonte
0

1) Bolla l'eccezione fino a un punto recuperabile nel codice. Quindi affrontalo.

2) Come stai arrivando al punto in cui sei preoccupato di ottenere dati non validi? Mi piace mantenere i miei dati il più puliti possibile. Se ottieni un'eccezione a quel punto, puoi trattarla come un'eccezione.

3) Dovresti davvero preoccuparti del tuo codice. Vai a leggere thedailywtf.com per vedere le persone che stanno "bene" con il loro codice (disordinato).

    
risposta data 12.12.2011 - 15:19
fonte

Leggi altre domande sui tag