C'è un problema quando dati e logica non sono separati?

0

Puoi fare molto con Excel. Anche senza Visual Basic Script. Ma i dati e la logica sono in un file, mentre i normali linguaggi di programmazione di solito hanno un altro file (o un database) per i dati.

Questo mi sembra sbagliato, ma potrebbe essere solo che non ci sono abituato.

Questa combinazione di dati e logica è un problema? In tal caso, dov'è esattamente il problema?

    
posta Martin Thoma 26.07.2017 - 08:46
fonte

2 risposte

1

Excel ha VBA, Visual Basic, Applications Edition, non Visual Basic Script. Ci sono differenze.

La tua domanda è abbastanza ipotetica. Excel è un'applicazione che può essere utilizzata per lavorare con grandi quantità di dati in un unico file ed elaborarli in quel file.

Ciò non significa che i dati e l'elaborazione non possono essere separati. Di fatto, una buona architettura del foglio elettronico separerà i dati dall'elaborazione.

Nelle moderne versioni di Excel, Power Query (Ottieni e trasforma in Excel 2016 e versioni successive) può essere utilizzato per caricare i dati da varie fonti, pulirli, modellarli e caricarli nel modello di dati Excel per un'ulteriore elaborazione con Power Pivot o con le formule del foglio di lavoro. Dati e elaborazione sono perfettamente separati.

Ma Excel può anche gestire modelli molto più semplici in cui gli utenti finali inseriscono manualmente i dati e utilizzano le formule per l'elaborazione dei dati. Ad esempio un registro di entrate e spese con un totale parziale. Dato un saldo iniziale, i dati inseriti manualmente per reddito e spese calcoleranno un saldo corrente, tutto in un foglio.

In tal caso, il mix di dati e logica di elaborazione non è affatto un problema.

Senza una guida adeguata, molti utenti di Excel inseriranno i dati e l'elaborazione su un foglio, ad esempio le attività di vendita per un mese. Faranno felicemente un foglio per ogni mese e poi faticheranno a trovare un modo per riferire tra i vari fogli (o molte cartelle di lavoro per molti anni con molti mesi).

Ma questo è un problema solo perché è una cattiva architettura dei dati, non un difetto di Excel. Con una buona architettura dei dati in Excel, tutti i dati di vendita possono andare in un unico foglio e l'elaborazione e il reporting possono essere fatti su altri fogli.

Excel è straordinariamente versatile. Puoi usarlo per far funzionare le cose regalmente. Come inserire solo il testo nelle celle e utilizzare il riempimento manuale delle celle, ad esempio una lista della spesa, e riempire manualmente le celle in verde per le cose che hai acquistato. Quindi prova a calulare il totale di tutte le celle verdi, che non puoi fare a meno di VBA. Questo è il livello più elementare.

Ma puoi anche calcolare in un batter d'occhio quanto una persona impiegherebbe mesi a calcolare manualmente.

Quindi, la risposta alla tua domanda "questa miscela di dati e logica è un problema" è "non proprio". Dipende dalla persona che crea modelli in Excel. La loro esperienza e comprensione dei dati e dell'elaborazione, e il motivo per cui deve essere separato, e come può essere separato.

Il problema è nelle competenze di Excel delle persone. Solo una piccola parte degli utenti di Excel capisce anche cosa ho scritto sopra, prima ancora di essere in grado di applicarlo.

    
risposta data 26.07.2017 - 09:29
fonte
1

Un problema evidente nel mix di dati e logica in un singolo file è che rende più difficile il controllo della versione.

Se questo è un problema dipende dalla scala del progetto e dalla frequenza delle modifiche.

Le modifiche alla logica potrebbero essere difficili da trovare tra le probabilmente più frequenti modifiche ai dati.

    
risposta data 25.08.2017 - 11:58
fonte

Leggi altre domande sui tag