Archive

Archives pour 02/2011

Clean Android Code : I CAN HAZ INT IDS?

Disclaimer : cet article contient des switch, et pourrait donc heurter la sensibilité d’un public non averti. Je tiens à décliner toute responsabilité en cas de switchite aiguë consécutive à une pratique trop assidue d’Android.

Développeurs Android, avez-vous remarqué à quel point votre code utilise des int comme identifiant à tout bout de champ ?
Il n’est pas rare de devoir écrire le code suivant :


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
public class MyActivity extends Activity {

    private static final int WARNING_DIALOG = 0;
    private static final int DOWNLOAD_PROGRESS_DIALOG = 1;
    private static final int CONFIRM_LOGOUT_DIALOG = 2;

    public void iCanHasCheezburger() {
        showDialog(WARNING_DIALOG);
    }

    @Override
    protected Dialog onCreateDialog(int id) {
        switch (id) {
        case WARNING_DIALOG:
            return createWarningDialog();
        case DOWNLOAD_PROGRESS_DIALOG:
            return createDownloadProgressDialog();
        case CONFIRM_LOGOUT_DIALOG:
            return createConfirmLogoutDialog();
        default:
            return null;
        }
    }
    // [...]
}

Cette manière de faire est d’ailleurs recommandée par le guide de développement Android officiel.

Papy Android réalisé avec Androidify : http://markoi.de/HIy


Lire la suite…

Share