Make_Newspaper è un programma che permette all’utente di trasformare un file di testo in un giornale, il tutto potendo personalizzare a piacimento il formato delle pagine e delle colonne del giornale.
Dopo il download dei file del programma, l'utente potrà posizionarsi nella cartella di una delle due versioni del programma (uni-processo e multi-processo), dopo di che potrà creare l'eseguibile makeNewspaper
digitando make
all'interno del terminale, infine l'utente potrà eseguire il programma e visualizzare il formato dell'input atteso digitando ./makeNewpaper --help
.
esempio:
Il programma è diviso in tre processi principali:
graph LR
A[Lettura delle parole dei singoli paragrafi] --> B[Allocazione del paragrafo in una pagina di giornale dinamica]
B --> D[Scrittura righe complete del giornale dinamico nel file di output]
- Lettura e salvataggio delle parole dei singoli paragrafi in una lista che verrà utilizzata dal secondo processo
- Giustificazione e allocazione delle parole prese dal primo processo all'interno di una lista di stringhe che rappresenta una pagina di giornale, quindi ogni volta che scriviamo l'ultima riga dell'ultima colonna, passiamo tutta la riga al terzo processo
- scrive le righe nel file di output
-
- si occupa di leggere l’input dell’utente e inizializzare la struttura che ci permeterrà di gertire il file di output, la pagina di giornale e il suo formato.
-
- si occupa di leggere e salvare in una lista le parole fino alla terminazione di un paragrafo.
-
- si occupa di ricevere, allocare e giustificare le parole dei singoli paragrafi all'interno di una riga che rappresenta una riga della singola colonna.
-
- si occupa di gestire :
- gli indici di scrittura della prossima riga e colonna della lista di stringhe che rappresenta la pagina di giornale.
- la scrittura delle righe delle colonne su una lista di stringhe.
- la scrittura della spaziatura tra colonne, paragrafi su una lista di stringhe.
- la scrittura di una riga della lista di stringhe, e di una nuova pagina sul giornale.
- chiusura del giornale (file di output).
- si occupa di gestire :
-
- si occupa di fornire funzioni di supporto agli altri file.