Significato del valore di priorità

2

La libreria su cui sto lavorando ha un parametro che definisce la priorità di un determinato processo. Voglio che l'interfaccia sia il più chiara possibile, ma sembra che persone diverse abbiano interpretazioni opposte dei valori prioritari.

1. Lowest number has highest priority (1 - highest priority, 10 - lowest priority)
2. Highest number has highest priority (1 - lowest priority, 10 - highest priority)

Quale pensi sia più naturale / logico?

    
posta Max 19.05.2011 - 02:17
fonte

3 risposte

2

Ci sono buone ragioni per impostare 1 (o 0) come il più alto livello di priorità e usare numeri più alti per priorità più basse.

Innanzitutto, la priorità può rappresentare l'ordine in cui devono essere eseguite le attività. Il numero 1 è la prima attività che svolgi, quindi ha priorità più alta rispetto al secondo insieme di attività che eseguirai.

Un altro è che il numero di livelli di priorità può essere soggetto a modifiche. In questo caso, come puoi determinare automaticamente cosa devi fare prima? Se lasci che 1 rappresenti la priorità più alta, il tuo codice non dipende dal numero di livelli di priorità.

Effettuando una ricerca sul web sulla stringa "numerazione a livello di priorità", molti esempi mostrano dove più basso è il numero di priorità, più importante è il compito. Alcuni esempi usano 0 come il più alto, altri usano 1.

Questa è una convenzione di vecchia data. La maggior parte dei registri di livello di priorità del processore funzionano allo stesso modo.

So che questo non sembra intuitivo, quindi dovresti rendere la tua convenzione sugli ordini molto chiara quando lavori con i livelli di priorità numerati.

    
risposta data 19.05.2011 - 05:48
fonte
3

Personalmente, non direi mai "Questa è la priorità 1" e significa "Questa è la priorità più bassa possibile". Quindi logicamente, direi che 1 è una priorità alta e 10 è bassa.

Tuttavia, se potessi sostituirlo con un enum, da WhyShouldICare a TheWorldIsCollapsing, lo farei. E in quel caso, stranamente, mi aspetterei che l'enumerazione scappasse da WhyShouldICare a 1 a TheWorldIsCollapsing a 10.

    
risposta data 19.05.2011 - 02:35
fonte
2

Personalmente, trovo un numero più alto = priorità più alta per essere più intuitivo. E ha il vantaggio aggiuntivo di estensibilità: se hai bisogno di aggiungere una priorità ancora più importante in seguito, puoi semplicemente aggiungere un 11 alla tua scala e non è necessario modificare alcun valore esistente o andare in negativo.

    
risposta data 19.05.2011 - 02:19
fonte

Leggi altre domande sui tag