Applicazione di tecniche modulari
Un problema nella vita reale è complesso e grande. Se viene sviluppata una soluzione monolitica, pone questi problemi:
Difficile scrivere, testare e implementare un grande programma
Le modifiche dopo la consegna del prodotto finale sono quasi impossibili
Manutenzione del programma molto difficile
Un errore può arrestare l'intero sistema
Per superare questi problemi, la soluzione dovrebbe essere divisa in parti più piccole chiamate modules. Viene chiamata la tecnica di scomporre una grande soluzione in moduli più piccoli per facilitare lo sviluppo, l'implementazione, la modifica e la manutenzionemodular technique di programmazione o sviluppo di software.
Vantaggi della programmazione modulare
La programmazione modulare offre questi vantaggi:
Consente uno sviluppo più rapido poiché ogni modulo può essere sviluppato in parallelo
I moduli possono essere riutilizzati
Poiché ogni modulo deve essere testato in modo indipendente, il test è più veloce e più robusto
Debug e manutenzione dell'intero programma più facili
I moduli sono più piccoli e hanno un livello di complessità inferiore, quindi sono facili da capire
Identificazione dei moduli
Identificare i moduli in un software è un compito sbalorditivo perché non può esserci un modo corretto per farlo. Ecco alcuni suggerimenti per identificare i moduli:
Se i dati sono l'elemento più importante del sistema, creare moduli che gestiscano i dati correlati.
Se il servizio fornito dal sistema è diversificato, suddividere il sistema in moduli funzionali.
Se tutto il resto fallisce, suddividere il sistema in moduli logici in base alla propria comprensione del sistema durante la fase di raccolta dei requisiti.
Per la codifica, ogni modulo deve essere nuovamente suddiviso in moduli più piccoli per facilitare la programmazione. Questo può essere fatto di nuovo utilizzando i tre suggerimenti condivisi sopra, combinati con regole di programmazione specifiche. Ad esempio, per un linguaggio di programmazione orientato agli oggetti come C ++ e Java, ogni classe con i suoi dati e metodi potrebbe formare un singolo modulo.
Soluzione passo passo
Per implementare i moduli, il flusso di processo di ogni modulo deve essere descritto passo dopo passo. La soluzione passo passo può essere sviluppata utilizzandoalgorithms o pseudocodes. Fornire una soluzione passo passo offre questi vantaggi:
Chiunque legga la soluzione può comprendere sia il problema che la soluzione.
È ugualmente comprensibile da programmatori e non programmatori.
Durante la codifica, ogni istruzione deve semplicemente essere convertita in un'istruzione di programma.
Può essere parte della documentazione e assistere nella manutenzione del programma.
I dettagli di livello micro come i nomi degli identificatori, le operazioni richieste, ecc. Vengono elaborati automaticamente
Diamo un'occhiata a un esempio.
Strutture di controllo
Come puoi vedere nell'esempio sopra, non è necessario che venga eseguita una logica di programma sequentially. Nel linguaggio di programmazione,control structuresprendere decisioni sul flusso del programma in base a determinati parametri. Sono elementi molto importanti di qualsiasi software e devono essere identificati prima che inizi la codifica.
Algoritmi e pseudocodes aiutare analisti e programmatori a identificare dove sono necessarie le strutture di controllo.
Le strutture di controllo sono di questi tre tipi:
Strutture di controllo delle decisioni
Le strutture di controllo decisionale vengono utilizzate quando il passaggio successivo da eseguire dipende da un criterio. Questo criterio è in genere una o più espressioni booleane che devono essere valutate. Un'espressione booleana restituisce sempre "true" o "false". Un insieme di istruzioni viene eseguito se il criterio è "vero" e un altro insieme viene eseguito se il criterio restituisce "falso". Ad esempio, if statement
Strutture di controllo della selezione
Le strutture di controllo della selezione vengono utilizzate quando la sequenza del programma dipende dalla risposta a una domanda specifica. Ad esempio, un programma ha molte opzioni per l'utente. L'istruzione da eseguire successivamente dipenderà dall'opzione scelta. Per esempio,switch dichiarazione, case dichiarazione.
Strutture di controllo ripetizione / loop
La struttura di controllo delle ripetizioni viene utilizzata quando un insieme di istruzioni deve essere ripetuto molte volte. Il numero di ripetizioni potrebbe essere noto prima che inizi o potrebbe dipendere dal valore di un'espressione. Per esempio,for dichiarazione, while dichiarazione, do while dichiarazione, ecc.
Come puoi vedere nell'immagine sopra, sia la selezione che le strutture decisionali sono implementate in modo simile in un diagramma di flusso. Il controllo della selezione non è altro che una serie di dichiarazioni di decisione prese in sequenza.
Ecco alcuni esempi di programmi per mostrare come funzionano queste affermazioni: