![]() |
Pages (2): [1] 2 » Show 150 posts per page |
.dsy:it. (http://www.dsy.it/forum/)
- Fondamenti di architettura e programmazione (http://www.dsy.it/forum/forumdisplay.php?forumid=234)
-- [Progetto] MailMerge (http://www.dsy.it/forum/showthread.php?threadid=36057)
[Progetto] MailMerge
Salve ragazzi,
ho creato questo 3d per condividere idee e suggerimenti sulla realizzazione di questo nuovo "entusiasmante" progetto; per quanto mi rigurda, credo che passerò almeno tutta la giornata di oggi a cercare di comprendere l'idea partorita dai prof tentando di decriptare il testo del progetto........
ahimè non sei il solo
__________________
"The more the water, the higher the boat"
DeviantART - Blog - Portfolio
già....
__________________
:O
sarà che ho qualche problema io, ma per me la cosa più difficile è davvero capire il testo...
a me pare di aver capito così, ditemi se sbaglio:
Abbiamo
txt con i nomi delle variabili (primo nome, secondo nome, cognome ecc..)
txt con i valori di persone a caso ( marco rossi ecc.)
txt con modelli di documenti email e rapporti (possibili testi con dei campi in cui inserire i nomi)
noi dobbiamo:
Leggere il file dei nomi
Leggere il file dei valori
Leggere il file dei modelli ed inserire al posto dei campi vuoti (facendo un check con il file delle variabili) e inserirci al loro posto i valori delle persone e , seguendo le regole di formattazione del testo che sono scritte nel progetto, stamparli a video e salvarli uno per uno.
questo credo sia il concetto base...
__________________
:O
Ciao ragazzi,volevo chiedervi una cosa che dalle specifiche del testo non ho ben capito: in pratica non mi è ben chiara la differenza tra le due classi DocumentProcessor e BatchProcessor....
Grazie a tutti.
PS: concordo con te AnTHrAx, penso che quello che chiede sia proprio questo!
raga, nel testo non si parla del main.....quindi non va fatto?
Il main ce l'hanno in mano i professori... non faranno altro che richiamare i metodi che obbligatoriamente dobbiamo implementare...
eh? non ho capito... come non dobbiamo fare il main??
__________________
:O
Originally posted by Dattebayo
Il main ce l'hanno in mano i professori... non faranno altro che richiamare i metodi che obbligatoriamente dobbiamo implementare...
la faccenda della mancanza del main era un mistero anche degli altri progetti... io personalmente lo metterò nel progetto, perchè mi sembra assurdo non farlo... riguardo all'interpretazione del testo, in effetti fa sorgere molti dubbi. le due classi processor sono abbastanza inutili, poichè la batch richiama quella document... io ho già scritto al malchiodi per qualche dubbio, e aspetto le varie risposte...
__________________
"They Can't Stop Us Let Them Try...
for heavy metal we would die..."
(Manowar - Die For Metal)
http://www.jackassubs.com - Admin (in ricerca di traduttori!!!)
qualcuno di voi sa spiegarmi come comportarsi con le sequenze di escape?
ad esempio del file dei valori prelevo i vari token mettendo come divisore la virgola, però se c'è il \, la vede come virgola ed effettua il taglio...voi come fate?
stessa cosa vale per il file dei modelli dove ci possono essere \< oppure \>
altra cosa... al punto 7 il testo del progetto dice:
utilizzare un’interfaccia all’interno del progetto, nel punto ritenuto piu opportuno;
secondo voi dove è meglio utilizzarla? io direi per i tipi di documento... correggetemi pure
__________________
Oh. My. God.
sinceramente non ne ho idea, non ne vedo la necessità... sarà che ho parecchi dubbi, ma mi sembra che il progetto sia spiegato in maniera più complicata di quello che in effetti serva (esattamente come gli altri due....)
p.s.: non so se è il caso di parlare qui di dettagli così specifici...
__________________
"They Can't Stop Us Let Them Try...
for heavy metal we would die..."
(Manowar - Die For Metal)
http://www.jackassubs.com - Admin (in ricerca di traduttori!!!)
Come sempre, è il testo che manda in confusione..ho una domanda,spero che qualcuno sappia aiutarmi!
Non capisco cosa intenda con "inserire in ognuna delle classi descritte al punto precedente un costruttore che permetta di creare un’istanza specificando come argomenti tutti gli elementi che compongono un documento (anche se per ragioni di efficienza nel codice potrà essere sensato invocare tali costruttori specificando null al posto di uno o più argomenti); " punto 7, pagina 5.
'Sti costruttori devono o non devono avere argomenti?
EMail prova = new EMail(con o senza argomenti?);
Sarà che è mezzanotte,ma non capisco..
Grazie in anticipo!
"anche se per ragioni di efficienza nel codice potrà essere sensato invocare tali costruttori specificando null al posto di uno o più argomenti"
non vuol dire che il costruttore non ha argomenti, ma che, quando crei un oggetto di tipo, ad esempio Documento, al posto di un valore ci puoi mettere null
es. Document d = new Document(pippo, null);
crei un documento il cui autore è pippo, e come argomento data ci metti null...capito?
inoltre in una classe puoi avere + di un costruttore...sia con argomenti che senza ![]()
ps: ma c'è nessuno che ha mandato delle domande hai prof? a me non hanno ancora risp. Nessuno che ha preso appuntamento per ricevimento? cazzola non c'è scritto il giorno, e malchiodi solo di venerdì.....nessuno sa se c'è qualcun altro, tipo tutor, a cui fare riferimento?
Ciao ragazzi,
siccome il prof non risponde volevo chiedere a voi circa la data dei documenti: nel file documents.txt c'è già una data ma non devo prendere quella bensì crearne una io (quella vera di creazione del documento) giusto?
Grazie a tutti!
io ho fatto ben tre e-mail al malchiodi e una al cazzola, tutte senza risposta... perciò noi faremo un pò come ci pare (certo che se in questi quindici giorni magari rimanessero disponibili non sarebe male)... più lavoro a questo progetto più mi incasino... riguardo alla data la cosa è dubbiosa perchè è presente nei modelli ma nel testo parla di gestirla, perciò probabilmente bisognerà cancellarla e aggiornarla (l'ho chiesto ai prof, ma come detto prima, boh).... poi altra cosa: in pratica il main non deve far altro che instanziare un oggetto batchprocessor e processare tutto il file dei modelli giusto? e soprattutto, i file si suppongono sintatticamente corretti vero?? l'unico controllo che si dovrebbe fare sono le variabili.... a sto punto su queste interpretazioni ragionamoci su insieme, è l'unico modo...
__________________
"They Can't Stop Us Let Them Try...
for heavy metal we would die..."
(Manowar - Die For Metal)
http://www.jackassubs.com - Admin (in ricerca di traduttori!!!)
Originally posted by IsaMetallo
riguardo alla data la cosa è dubbiosa perchè è presente nei modelli ma nel testo parla di gestirla, perciò probabilmente bisognerà cancellarla e aggiornarla (l'ho chiesto ai prof, ma come detto prima, boh)
Originally posted by IsaMetallo
e soprattutto, i file si suppongono sintatticamente corretti vero??
Ciao a tutti,
Non mi è chiaro il passaggio della creazione dell'istanza di un doucumento,report o email..ognuno di questi documenti ha un numero variabile n di elementi che lo possono comporre e pertanto non è possibile sapere a priori il numero di variabili da assegnare al prototipo del costruttore;ed è quindi sensato,come descritto nel testo,lasciare null.Ma non capisco, se non so a priori il numero, non è più sensato lasciare il costruttore privo di argomenti e poi, tramite appositi metodi presenti nella classe, assegnare tali valori?Voi come avete risolto?
Originally posted by -MaVeRiK86-
Ciao a tutti,
..ognuno di questi documenti ha un numero variabile n di elementi che lo possono comporre
Forse allora non ho capito un c***o io, cosa molto probabile..sul testo dice : "...specificando come argomenti tutti gli elementi che compongono un documento...".Cosa sono allora questi elementi di cui parla?Io avevo avevo che fossero ad esempio il nome,l'autore,data,titolo,etc...e se qualcuno in un dato modello non era specificato, si lasciava null...o sto dicendo cazzate?help..
sul controllo die file dei modelli hai purtoppo ragione... è un casino infernale... qualcuno ha qualche idea per risolvere il dilemma delle due classi processor?
__________________
"They Can't Stop Us Let Them Try...
for heavy metal we would die..."
(Manowar - Die For Metal)
http://www.jackassubs.com - Admin (in ricerca di traduttori!!!)
però farei notare una cosa:
pagina sei decima riga:
- rispettare alla lettere il formato per i file di input e di output e per le visualizzazioni a schermo
questo non implica che si dia per scontato che l'input sia corretto? perchè come si potrebbe mai controllare un file dei modellio che per sua natura stessa è variabile? anche se fosse possibile verrebbe scritto più codice per controllare quel file che il programma stesso, alla faccia delle 400 linee...
__________________
"They Can't Stop Us Let Them Try...
for heavy metal we would die..."
(Manowar - Die For Metal)
http://www.jackassubs.com - Admin (in ricerca di traduttori!!!)
Originally posted by -MaVeRiK86-
Forse allora non ho capito un c***o io, cosa molto probabile..sul testo dice : "...specificando come argomenti tutti gli elementi che compongono un documento...".Cosa sono allora questi elementi di cui parla?Io avevo avevo che fossero ad esempio il nome,l'autore,data,titolo,etc...e se qualcuno in un dato modello non era specificato, si lasciava null...o sto dicendo cazzate?help..
Originally posted by Lukkei
Anch'io l'ho intesa così, ovvero che gli elementi che compongono un documento sono i vari: autore, data, titolo, etc...ho pensato ad una superclasse astratta il cui costruttore abbia come argomenti le voci comuni (autore, data e titolo), superclasse da estendere con le varie Document, Report, Email, ovviamente "estendendo" gli specifici costruttori....spero di essere sulla strada giusta
non ho ancora ben capito dove implementare un'interfaccia, ma forse perchè non sono ancora arrivato ad averne effettivamente bisogno...qualcuno ha qualche idea?
qualcuno di voi ha capito come comportarsi con le date? 0_o
oops.. they did it again
Ciao a tutti!
come al solito dobbiamo decodificare il testo dei professori...
Malchiodi purtroppo risponde SOLO in orario di ricevimento, quindi di venerdì, perciò fino ad allora o ci rimbocchiamo le maniche e non perdiamo tempo (facile a dirsi), oppure si aspettano le risposte (ma sapete bene che è meglio non perdere 1SECONDO...)
Avrei una domanda sul progetto:
come deve funzionare il programma?
1) leggo il file modello
2) leggo il file delle variabili e le confronto con quelle contenute nel doc
3) leggo il file dei valori e li sostituisco alle corrispettive variabili
4) visualizzo o salvo il documento "mergiato" (suona male)
Erro o dovrebbe funzionare così in linea generale?
Mi sto incasinando, come sempre.
Se per creare un'istanza di DocumentProcessor debbo scrivere una cosa come:
DocumentProcessor doc = new DocumentProcessor(mail, "nomi.txt" , "valori.txt");
Ora, l'istanza 'mail' la devo aver creata prima di andarla a passare al costruttore di DocumentProcessor.Ma se il costruttore di EMail richiede che gli vengano passati gli elementi che lo compongono (almeno io ho capito così), com'è possibile?
Probabilmete non ho ben capito a cosa servano le tre istanze dei tre tipi di documento e sopratutto, cosa contengono.
Cioè, io cosa ci metto dentro a un Email o Report quando lo creo e successivamente, quano lo passo a DocumentProcessor?
Qualcuno che ha capito sarebbe cosi gentile da spiegarmi un po' la logica e la sequenza?
Mille grazie in anticipo,i prof non mi rispondono!!
Originally posted by -MaVeRiK86-
Mi sto incasinando, come sempre.
Se per creare un'istanza di DocumentProcessor debbo scrivere una cosa come:
DocumentProcessor doc = new DocumentProcessor(mail, "nomi.txt" , "valori.txt");
Ora, l'istanza 'mail' la devo aver creata prima di andarla a passare al costruttore di DocumentProcessor.Ma se il costruttore di EMail richiede che gli vengano passati gli elementi che lo compongono (almeno io ho capito così), com'è possibile?
Probabilmete non ho ben capito a cosa servano le tre istanze dei tre tipi di documento e sopratutto, cosa contengono.
Cioè, io cosa ci metto dentro a un Email o Report quando lo creo e successivamente, quano lo passo a DocumentProcessor?
Qualcuno che ha capito sarebbe cosi gentile da spiegarmi un po' la logica e la sequenza?
Mille grazie in anticipo,i prof non mi rispondono!!
Se non ho capito male, il file dei modelli va passato solo alla BatchProcessor e non alla DocumentProcessor....
Ca*** hai proprio ragione Lukkei, non avevo letto questo punto bene.Infatti non capivo dove andasse a finire il file dei modelli..
Originally posted by Jaky
qualcuno di voi ha capito come comportarsi con le date? 0_o
Ma....
Se io ho per ipotesi 50 valori (mario rossi carlo rossi giacomo rossi ec...) nel file dei nomi e 3 modelli (email doc e report) nel file dei modelli... per ogni modello utilizzo 50 valori (quindi vengono 150 file) o uso tanti valori quanti sono i modelli? (quindi 3..)
__________________
:O
Secondo me la prima ipotesi... ripeto il modello per tutti i valori presenti nel file dei valori!
Però avevo un dubbio... per esempio nel file "documents" nell'ultimo documento (un report) non compaiono varibili da sostituire! In questo caso il documento non andrebbe ripetuto per tutti i valori, giusto?
Grazie.
Originally posted by Lukkei
io ho creato un metodo che me la genera, formatta ed inserisce nel formato richiesto, ma visto che non è specificato se la data dev'essere inserita dall'utente o presa da sistema, non mi resta che sperare di aver avuto la giusta intuizione...
Ragazzi, quando parla di ARRAY di numero elementi sconosciuto, voi cosa credete intenda?
sicuramente ci vorrà un'array dinamico (io pensavo alla classe ArrayList del pacchetto standard di Java) voi cosa ne dite????
Originally posted by nasty121
Ragazzi, quando parla di ARRAY di numero elementi sconosciuto, voi cosa credete intenda?
sicuramente ci vorrà un'array dinamico (io pensavo alla classe ArrayList del pacchetto standard di Java) voi cosa ne dite????
Ragazzi, quando parla di ARRAY di numero elementi sconosciuto, voi cosa credete intenda?
sicuramente ci vorrà un'array dinamico (io pensavo alla classe ArrayList del pacchetto standard di Java) voi cosa ne dite????

nel testo dice che nn si possono usare librerie esterne...quindi nemmeno la prog che c'è sul sito di cazzola?intendo quella che contiene le classi sequenza e frazione usate a lezione...
Originally posted by Deglia
nel testo dice che nn si possono usare librerie esterne...quindi nemmeno la prog che c'è sul sito di cazzola?intendo quella che contiene le classi sequenza e frazione usate a lezione...
Ok ragazzi, faccio appello a coloro che hanno capito questo dannato progetto (probabilmente sono l'unica p***
a non averlo capito) sperando nella loro pazienza e prometto di non rompere più
.
Sostanzialmente il progetto si divide in due: una parte relativa alla processazione del DocumentProcessor per un singolo documento e l'altra del BatchProcessor.
Al paragrafo 5 , pagina 3 descrive i passaggi essenziali per il mail merge relativo a un singolo documento, operazione che compierà un'istanza di DocumentProcessor.
Ma nella pratica non ho capito un 'azzo.
1) Cosa vuol dire "creerà un documento i cui contenuti faranno riferimento a una o più variabili; "Cioè cos'è questo 'documento'?Un file di testo?Una struttura fissa definita in una classe?Da dove lo prendo?
2)Come lo riempo con le variabili segnaposto?Cioè fisicamente dove e come devo creare la struttura di questo singolo documento modello da "mergiare"?Devo definire tutto nella sua classe di appartenenza(mail,report,document)?E sopratutto, come faccio a riempirlo con le variabili segnaposto?
EMail prova = new EMail(/*sono queste le variabili segnaposto da inserire nel modello?*/);
prova, una volta completo della sua struttura, potrà essere passato al costruttore del DocumentProcessor per essere "mergiato" secondo il file dei nomi/valori.
Ciò che mi manca di capire è proprio dove devo definire la struttura di questi tre documenti e come li riempo di volta in volta con le varie variabili segnaposto prima di darli in pasto al DocumentProcessor..sto impazzendo..
In BatchProcessor è semplice..è il file dei modelli a definire il tutto, ma qui proprio non capisco..abbiate pazienza/pietà ![]()
Ringrazio in anticipo chi si sbatterà a leggere sta solfa e magari mi darà qualche dritta!
io ho capito che il documento/mail/report singolo da istanziare in DocumentProcessor lo crei attraverso gli argomenti passati ai relativi costruttori...
mmm ma così come fai a stabilire il testo base (quello che non cambia ) del documento?
Originally posted by polar
mmm ma così come fai a stabilire il testo base (quello che non cambia ) del documento?
Cioè praticamente io nella mia classe mi creo dei metodi ad hoc con i testi prestabiliti descritti nella consegna, con la possibilità di accogliere variabili segnaposto che passo al costruttore dell'istanza della classe.Cosi da avere in output un'istanza contenente il testo base descritto dai miei metodi e variabili segnaposto passate al costruttore..ho capito bene?
Raga scusate ma da quello ke ho capito io il documento non ha 1testo...nel file dei modelli del prof dove c'è BEGIN Document c'è solo l'autore e la data...mentre in BEGIN email c'è anke il testo!!
Da quello ke ho capito io un documento ha solo autore e data, una mail ha autore e data + indirizzo di posta,oggetto e TESTO(vedi 1°pagina), report ha autore e data + indirizzo autore,titolo,paragrafi cn titolo e contenuto.
Se andate sul file dei modelli vi accorgerete ke il documento non ha testo!
Il mio problema è 1altro....la lettura dai file dei nomi e delle variabili la faccio nelle classe dei doc(documenti,mail,report) o da 1altra parte??
Voi avete fatto 1classe astratta document(poi estesa da mail,report) oppure document come classe concreta sempre estendibile??
Originally posted by ufficiale86
Raga scusate ma da quello ke ho capito io il documento non ha 1testo...nel file dei modelli del prof dove c'è BEGIN Document c'è solo l'autore e la data...mentre in BEGIN email c'è anke il testo!!
Da quello ke ho capito io un documento ha solo autore e data, una mail ha autore e data + indirizzo di posta,oggetto e TESTO(vedi 1°pagina), report ha autore e data + indirizzo autore,titolo,paragrafi cn titolo e contenuto.
Se andate sul file dei modelli vi accorgerete ke il documento non ha testo!
Il mio problema è 1altro....la lettura dai file dei nomi e delle variabili la faccio nelle classe dei doc(documenti,mail,report) o da 1altra parte??
Voi avete fatto 1classe astratta document(poi estesa da mail,report) oppure document come classe concreta sempre estendibile??
Originally posted by -MaVeRiK86-
e il mio dubbio è proprio qui:da dove recupero questra struttura da riempire (cioè la devo creare nelle tre classi dei doc credo).
scusate ma non mi è ancora chiaro ...
prendiamo per esempio un'e-mail, ok per il nome dell'autore, la data, l'indirizzo, l'oggetto, ma il testo del mex (che conterrà a sua volta dei campi che dovrò modificare) dove vado a prenderlo???
Mi riferisco sempre nel caso del documento singolo non del file dei modelli
Grazie
Originally posted by polar
scusate ma non mi è ancora chiaro ...
prendiamo per esempio un'e-mail, ok per il nome dell'autore, la data, l'indirizzo, l'oggetto, ma il testo del mex (che conterrà a sua volta dei campi che dovrò modificare) dove vado a prenderlo???
Mi riferisco sempre nel caso del documento singolo non del file dei modelli
Grazie
io propongo che domani chi può vada dal prof, e poi postiamo le risposte
Scusate ho letto il messaggio di prima e ho confrontato con quanto fatto:
Il DocumentProcessor viene istanziato specificando
- Istanza generico documento o mail o report
- file nomi
- file valori
ok ma come faccio a istanziare il generico documento O mail O report??
io ho creato una GeneralDocument che è superclasse astratta dei 3 tipi di documenti, ma essenso classe astratta non posso istanziarla....
quindi nel costruttore che devo fare? devo mettere coem parametri tutti i tre tipi di documenti o cosa??
grazie per l'attenzione
Originally posted by Supernick
Scusate ho letto il messaggio di prima e ho confrontato con quanto fatto:
Il DocumentProcessor viene istanziato specificando
- Istanza generico documento o mail o report
- file nomi
- file valori
ok ma come faccio a istanziare il generico documento O mail O report??
io ho creato una GeneralDocument che è superclasse astratta dei 3 tipi di documenti, ma essenso classe astratta non posso istanziarla....
quindi nel costruttore che devo fare? devo mettere coem parametri tutti i tre tipi di documenti o cosa??
grazie per l'attenzione
Io e il mio socio di gruppo domani andiamo da Malchiodi e poniamo delle domande.
se avete dubbi e domande postate pure la lista, che stamperemo e presenteremo al professore domani a ricevimento.
AH, sul sito di Malchiodi dice che settimana salta il giorno di ricevimento x impegni, perciò vi conviene pensare bene le domande da fare entro domani poichè NON CI SARANNO ALTRE POSSIBILITA' DI COMUNICAZIONE CON IL DOCENTE!!!
come al solito i docenti sono disponibilissimi....
quindi se avete questions....
Allora visto che nessuno si fa avanti lo faccio io volentieri....
Allora potresti chiedere questo:
1. Le date presenti sul file dei modelli, una volta mergati i documenti contenuti in quel file, andranno aggiornate alla data corrente oppure vanno lasciate quelle del file??(che non sono aggiornate)
2.Dove va usata l'interfaccia(domanda troppo generica?!
)
3.Nel punto 6 dice che bisogna creare una directory dove andare a salvare i documenti...la directory va creata manualmente o con java??(cosa ke nn so fare)
4.Il caricamento del file dei nomi e del file dei valori va fatto nella varie sottoclassi del Documento??(document,email,report)??
Queste sono le domande che riesco a postare ora...se qualcuno sa rispondere risponda qui grazie così evitiamo la brutta figura hai nostri gentilissimi colleghi.....
Grazie mille per la disponibilità
Inizio io
1) Una possibile domanda è dove implementare l'interfaccia (io avevo pensato o per l'escape dei caratteri o per il contatore)
2) Per incrementare il contatore universale per i nomi dei file le vie sono due a mio avviso: scorrere l'intera cartella salvandosi in un vettore la lista dei nomi, e tramite un apposito metodo estrapolarne i valori numerici da incrementare (soluzione da brivido), oppure creare un txt con il valore più alto da leggere alla creazione di ogni nuovo documento, report o mail.Mi sembrerebbe più sensata la seconda, ma ho paura a creare file al di fuori di quelli richiesti, voi che ne dite?
3) La domanda ormai posta in mille salse ma che ancora mi manda in bestia : per i singoli documenti da passare a DocumentProcessor, DOVE devo creare le parti "statiche" del messaggio?Ovvero il modello di EMail, Report e Document dove è descritto? Nel BatchProcessor è nel file dei modelli, ma nel DocumentProcessor come lo creo?
Per quando mi riguarda,sono le domande che più mi stanno mandando a male..
raga sentite un attimo..
la classe DocumentProcessor serve a creare documenti con i file dei valori e modelli,partendo da un documento,mail,o report gia creato
la classe batchprocessor invece crea documenti,mail e report dal file dei modelli e poi li compila
mi chiedo xò che senso ha fare 2 metodi process per ognuna della classe precedente,nn sarebbe + comodo usare un document processor dentro al batch?
Raga ma voi avete creato 1classe astratta tipo GeneralDocument che viene estesa da 3 sottoclassi che rappresentano i documenti possibili??
Ah scusate 1cosa...ma cosa vuol dire quando il prof nel testo dice( punto 7): "per ragioni di efficienza nel codice potrà essere sensato invocare tali costruttori specificando null al posto di uno o più argomenti)??
Bella domanda..guarda, domani avremo sicuramente le risposte dopo che nasty avrà parlato con il docente.
Se ho capito bene e cioè che all'interno delle sotto classi come ad esempio EMail vi è la struttura 'statica' (il modello) della mail da mergiare, i vari argomenti non sono altro che le variabili segnaposto da inserire all'interno di questa struttura.E' possibile però che il docente decida di creare una mail magari senza oggetto, e quindi quell'argomento vada lasciato null..contradditemi se sbaglio..
mi pare di capire che sono l'unico ad aver creato un metodo per l'inserimento "dinamico" del documento/mail/report da processare con la DocumentProcessor.....quindi a questo punto la domanda che vorrei porre ai Prof è:
"Il documento/mail/report da processare con DocumentProcessor dev'essre creato in runtime dall'utente o dev'essere preconfezionato nelle rispettive classi?"
Lukkei una domanda, e come fai a crearlo in runtime? Se almeno la struttura statica non è precofenzionata nella sua rispettiva classe, vorrebbe dire passare l'intero documento/report/mail al suo costruttore, o non ho capito?
gli passo delle stringhe che poi memorizzo in una List...
cosa che chiaramente non crea problemi soltanto se la data non è presa da sistema, altrimenti dovrei rivedere qualcosina...
raga un'altra cosa, il testo dice che i documenti generati andranno salvati in un'apposita cartella che andrà creata se non esiste
come facciamo a sapere se esiste o meno? che nome deve avere o bisogna dare alla suddetta directory? come ci si comporta in caso di batch? tutti i file alla rinfusa nella cartella o suddivisione?
ho provato a mailare il professore ma non ho ancora avuto risposta, se il gruppo che va domani volesse aggiungere le sopracitate domande da chiedere...
__________________
Oh. My. God.
Originally posted by ufficiale86
Allora visto che nessuno si fa avanti lo faccio io volentieri....
Allora potresti chiedere questo:
1. Le date presenti sul file dei modelli, una volta mergati i documenti contenuti in quel file, andranno aggiornate alla data corrente oppure vanno lasciate quelle del file??(che non sono aggiornate)
2.Dove va usata l'interfaccia(domanda troppo generica?!)
3.Nel punto 6 dice che bisogna creare una directory dove andare a salvare i documenti...la directory va creata manualmente o con java??(cosa ke nn so fare)
4.Il caricamento del file dei nomi e del file dei valori va fatto nella varie sottoclassi del Documento??(document,email,report)??
Queste sono le domande che riesco a postare ora...se qualcuno sa rispondere risponda qui grazie così evitiamo la brutta figura hai nostri gentilissimi colleghi.....
Grazie mille per la disponibilità
Grazie nasty, o nostro rappresentante ![]()
Sarei venuto molto volentieri anche io ma purtroppo non ci sono!
Spero vivamente che il docente domani si dimostri comprensivo e ci dia qualche dritta per andare avanti..
Buona serata!
Originally posted by nasty121
ciao Maverick (scusa la confidenza)
domani provvederò a fare le domande a Malchiodi.
A qualcuno provo a risponderti io, ma sai ovviamente k è una MIA interpretazione del testo codificato dai docenti.
1. chiederò..
2. non credo k mi risponderà e sinceramente non l'ho ancora trovato il dove;
3. chiederò (penso bisogna vedere le librerie di I/O di Java;
4. Il caricamento dei file dovrebbe con l'istanza dei PROCESSORI, credo... ma chiederò cmq
se qualcuno vuole venir ein comelico a ricevimento, magari si scambiano 2chiacchere sul progetto e magari scatta anke qlke amicizia (ke nella vita non fanno male)
ora segno anke le altre domande!
buon lavoro e buona serata compagni
Originally posted by -MaVeRiK86-
Inizio io
1) Una possibile domanda è dove implementare l'interfaccia (io avevo pensato o per l'escape dei caratteri o per il contatore)
2) Per incrementare il contatore universale per i nomi dei file le vie sono due a mio avviso: scorrere l'intera cartella salvandosi in un vettore la lista dei nomi, e tramite un apposito metodo estrapolarne i valori numerici da incrementare (soluzione da brivido), oppure creare un txt con il valore più alto da leggere alla creazione di ogni nuovo documento, report o mail.Mi sembrerebbe più sensata la seconda, ma ho paura a creare file al di fuori di quelli richiesti, voi che ne dite?
3) La domanda ormai posta in mille salse ma che ancora mi manda in bestia : per i singoli documenti da passare a DocumentProcessor, DOVE devo creare le parti "statiche" del messaggio?Ovvero il modello di EMail, Report e Document dove è descritto? Nel BatchProcessor è nel file dei modelli, ma nel DocumentProcessor come lo creo?
Per quando mi riguarda,sono le domande che più mi stanno mandando a male..
io nn ho ancora capito bene qual'è la differenza tra batchprocessor e documentprocessor...
del tipo io farei leggere al batch tutto il file dei documenti e spezzerei i singoli documenti da mandare poi a documentprocessor che elabora singolarmente (creando un array un vettore o una mappa) il contenuto tra le stringhe begin ed end...
solo che nn so... non mi convince piu di tanto xke sul test oc'è scritto che il batchprocessor elabora tutti i documenti e devono essere letti anche il file dei nomi e delle variabili che in ciò che ipotizzavo io risultano inutili...
accetto volentieri aiuti 
__________________
:O
hai interpretato giusto... ho chiesto al prof e a quanto si è capito è così: la classe batch processor si occupa di suddividire il file die modelli in oggetti di diverso tipo e li manda a documentProcessor per il procedimento di merge...
__________________
"They Can't Stop Us Let Them Try...
for heavy metal we would die..."
(Manowar - Die For Metal)
http://www.jackassubs.com - Admin (in ricerca di traduttori!!!)
nasty121 facci sapere com'è andata dal prof ![]()
Bene.
Ciao a tutti!
scusate se nn sono riuscito a scrivervi ieri.
Ho tenuto in ballo il professore per circa un ora e son riuscito a estrapolare qualche informazione, tramite le vostre domande.
Suggerimenti:
1) le date (da stringhe) vanno gestite come oggetti di una determinata libreria di Java e NON vanno aggiornate durante la "mergiatura"
2) l'interfaccia (ha riso) non ce lo viene a dire dove implemetarla, PERO' dobbiamo sfruttare la sua funzionalità (ovvero il definire caratteristiche comuni a + sottoclassi k la implementano)
3) Le directory vanno create grazie ad apposite classi di Input/Output di Java
4) il caricamento degli oggetti Doc/EM/Rep può esser fatto in diversi modi
5) E' ovvio che si possano passare argomenti NULL ai costruttori dei documenti vari, perciò è una caso da prevedere
6) I documenti da processare devono essere istanziati in runtime
7) per ricercare l'occorrenza di un elemento in un array bisogna utilizzare una struttura trattata durante il corso (voi ricordate?)
Ora ragazzi BUONA IMPLEMENTAZIONE! ![]()
cosa vuole dire in runtime??
Originally posted by ufficiale86
cosa vuole dire in runtime??
__________________
Oh. My. God.
in pratica per la faccenda della data: si deve leggere la stringa, codificarla un oggetto Date, Calendar o simili e poi riscriverla uguale... se è così è proprio strainutile, ma se dobbiamo farlo pazienza...
__________________
"They Can't Stop Us Let Them Try...
for heavy metal we would die..."
(Manowar - Die For Metal)
http://www.jackassubs.com - Admin (in ricerca di traduttori!!!)
per le date che ne dite della classe SimpleDateFormat e i suoi metodi?
al costruttore si passa il formato con cui vogliamo visualizzare la data..
date un occhiata sulsito della Sun.
Originally posted by nasty121
per le date che ne dite della classe SimpleDateFormat e i suoi metodi?
al costruttore si passa il formato con cui vogliamo visualizzare la data..
date un occhiata sulsito della Sun.
raga
ricordate come si fa a bloccare l'esecuzione del programma dopo aver catturato un eccezione?
hai interpretato giusto... ho chiesto al prof e a quanto si è capito è così: la classe batch processor si occupa di suddividire il file die modelli in oggetti di diverso tipo e li manda a documentProcessor per il procedimento di merge...
ricordate come si fa a bloccare l'esecuzione del programma dopo aver catturato un eccezione?
a me cattura l'eccezione, come azione gli faccio fare una stampa a video dell'errore, dopodichè prosegue con il codice... boh
beh nasty dipende dove metti il catch... se lo metti immediatamente dopo il punto che potrebbe lanciarla continua, ma se lo metti più avanti ignora tutto il codice che c'è dall'eccezione al catch
__________________
"They Can't Stop Us Let Them Try...
for heavy metal we would die..."
(Manowar - Die For Metal)
http://www.jackassubs.com - Admin (in ricerca di traduttori!!!)
ragazzi riquoto le domande di prima, qualcuno saprebbe rispondermi???
grazie
Originally posted by Supernick
ragazzi riquoto le domande di prima, qualcuno saprebbe rispondermi???
grazie
inoltre..
Originally posted by Supernick
3- a seconda che sia di un documento, mail o report, creo la rispettiva istanza che ha come parametro il contenuto del documento (per questo ho creato nelle classi un secondo costruttore che riceve come parametro una Stringa)
si infatti per questo ho notato l'errore che ho fatto, praticametne nel batch processor quindi io, passo i tre file (modelli, nomi e valori) e nel metodo process esamino il file dei modelli e lavoro sul singolo blocco tra BEGIN X e END X
scusate ma sto impazzendo...
asssssssss
Ma come si gestiscono questi caratteri di escape????
Sto impazzendo per trovare l'algoritmo migliore, ma magari è +semplice di ciò k sembra!!!!
Voi come avete fatto per \\, \, , \< e \>?
Originally posted by nasty121
asssssssss
Ma come si gestiscono questi caratteri di escape????
Sto impazzendo per trovare l'algoritmo migliore, ma magari è +semplice di ciò k sembra!!!!
Voi come avete fatto per \\, \, , \< e \>?
java mette a disposizione delle funzioni molto utili per gestire le sequenze di escape 
quoto, non è il peggiore dei problemi....purtroppo 
quali sono??
Originally posted by ufficiale86
quali sono??
Originally posted by Jaky
java mette a disposizione delle funzioni molto utili per gestire le sequenze di escape![]()
dai dai che gia sapendo che esistono delle funzioni che facilitano le cose, è un buon indizio ![]()
tra l'altro sono le stesse che si usavano per il progetto html validator ![]()
suugerimenti?
Originally posted by nasty121
suugerimenti?
raga ho 1problema....dopo ke prelevo il testo tra BEGIN e END come avete fatto a dire ke la prima riga è l'autore,la seconda la data,ecc....con il report e con la mail è 1casino....paragrafi,titoli...da diventare matti!come avete fatto(più o meno nn voglio l'implementazione ma 1idea di aiuto) per dividere il testo e creare così 1istanza di Document/Email/Report??
Originally posted by Jaky
dai dai che gia sapendo che esistono delle funzioni che facilitano le cose, è un buon indizio
tra l'altro sono le stesse che si usavano per il progetto html validator![]()
non sono ancora arrivato ad occuparmi dell'escape, ma così come prima idea mi verrebbe in mente il metodo replaceAll di String...
..al momento sto combattendo con il contatore, avete qualche idea in proposito?
Originally posted by Lukkei
non sono ancora arrivato ad occuparmi dell'escape, ma così come prima idea mi verrebbe in mente il metodo replaceAll di String...
..al momento sto combattendo con il contatore, avete qualche idea in proposito?
guardate che se l'applicazione viene lanciata 2 volte in due momenti distinti, non è che si deve ricordare dei file creati la volta prima...
Ma in questo caso ci potrebbe essere una riscrittura, se il contatore riparte da zero..o forse non ho capito io: ad ogni esecuzione devo creare una directory nuova contenente il file (se è DocumentProcessor) o i file (BatcProcessor), a patto che vi sia argomento al process..è cosi?
ok, penso di aver risolto il problema del contatore...
Io sono bloccato su un altro punto...
ok che la classe batch suddivide il file e salva un nuovo documento/mail/report ma dopo che l'o salvato come faccio a passarglielo alla classe documentProcessor che dovrebbe fare il merge? E poi a questo punto chi visualizza? Il metodo process di quale classe?
Per me questa parte è spiegata malissimo e troppo incasinata!!
Scusate una cosa ma come fate a controllare che vengano rispettati i formati?
secondo voi è male superare le 400 linee di codice? fino a quanto si potrà sforare? 0_o
Originally posted by Jaky
secondo voi è male superare le 400 linee di codice? fino a quanto si potrà sforare? 0_o
eccoci all'escape......qualcuno di voi ha risolto il problema?
io ci sto impazzendo da circa 4 ore...
raga ma come cavolo avete fatto a dividere le righe in mezzo tra il BEGIN e l'END e inserirle nel costruttore di un documento ad esempio??dai sto impazzendo 1aiutino misero grazie
Originally posted by Lukkei
eccoci all'escape......qualcuno di voi ha risolto il problema?
io ci sto impazzendo da circa 4 ore...
Scusate ma dopo aver creato la classe Batch Processor, come facciamo a creare delle istanze per i vari tipi di documenti, da passare a Document Processor sapendo che :
1)DP ha bisogno del file dei nomi e dei valori, i quali NON contengono le variabili necessarie per la formattazione del documento(per esempio come interpretiamo "nome dell'autore"?Dobbiamo mettere primo nome+ secondo nome + cognome?E la mail la inventiamo noi?)
2)Non possiamo passare a DP i modelli, e anche se potessimo quale mail, document, report scegliamo?
3)Se chiediamo nel costruttore di un documento di inserire i valori necessari per la sua corretta formazione non abbiamo più bisogno di tener conto dei file dei nomi e dei valori?
4)Nel testo del progetto dice di lanciare WrongFormatException quando il formato dei file dei modelli non viene rispettato. Bisogna fare un controllo riga per riga?(se così fosse sarebbe un casino)
Il prof è "fuori sede" fino a venerdì, noi abbiamo completato la parte di BP e ci manca di sapere cosa fare per finire DP.
Originally posted by Kiba
Scusate ma dopo aver creato la classe Batch Processor, come facciamo a creare delle istanze per i vari tipi di documenti, da passare a Document Processor sapendo che :
1)DP ha bisogno del file dei nomi e dei valori, i quali NON contengono le variabili necessarie per la formattazione del documento(per esempio come interpretiamo "nome dell'autore"?Dobbiamo mettere primo nome+ secondo nome + cognome?E la mail la inventiamo noi?)
2)Non possiamo passare a DP i modelli, e anche se potessimo quale mail, document, report scegliamo?
3)Se chiediamo nel costruttore di un documento di inserire i valori necessari per la sua corretta formazione non abbiamo più bisogno di tener conto dei file dei nomi e dei valori?
4)Nel testo del progetto dice di lanciare WrongFormatException quando il formato dei file dei modelli non viene rispettato. Bisogna fare un controllo riga per riga?(se così fosse sarebbe un casino)
Il prof è "fuori sede" fino a venerdì, noi abbiamo completato la parte di BP e ci manca di sapere cosa fare per finire DP.
Originally posted by Jaky
1)eeh? cosa vuol dire -come interpretiamo "nome dell'autore"?
quando al DP passi l'istanza di un documento, quest'ultimo contiene gia tutte le informazioni, che le abbia inserite tu a mano o che siano state prelevate dal file dei modelli...è indifferente...
2)certo che puoi! non è che gli passi l'intero modello ovvio...a cosa pensi che serva la classe DP?
non devi fare una scelta...per ogni modello che trovi( per ogni singolo bloggo BEGIN END) devi creare n file tanti quanti le righe del file dei valori
3)no, una volta inserire dovrai controllare se sono scritte correttamente e che siano presenti nel file dei nomi(lo dice il testo)
4) direi proprio di si
Originally posted by Kiba
Ma scusa BP prende il file dei modelli, DP no.
Non è detto che malchiodi in fase di verifica esegua sempre prima Batch Processor; se esegue DocumentProcessor dove li prendi i modelli???e poi è scritto chiaramente DP vuole un'istanza di un documento, mail o report mica ti dice di prenderle da BP
scusate,
ma secondo voi se nel file dei modelli abbiamo una riga insensata (tipo invece di cominciare con un BEGIN Document, inizia con pippo come prima riga) la ignoriamo o lanciamo l'eccezione WrongFormatException()???
Raga il prof nel testo dice:"Rispettare alla lettera il formato per i file di input e di output e per le visualizzazioni a schermo"(pagina6) cosa vuole dire?????output e visualizzazioni a schermo ok ma x i file di input??vuol dire ke bisogna inserire sempre dei file di input(nomi,variabili e modelli) sempre fatti bene??
Originally posted by ufficiale86
Raga il prof nel testo dice:"Rispettare alla lettera il formato per i file di input e di output e per le visualizzazioni a schermo"(pagina6) cosa vuole dire?????output e visualizzazioni a schermo ok ma x i file di input??vuol dire ke bisogna inserire sempre dei file di input(nomi,variabili e modelli) sempre fatti bene??
Non credo sia quella la questione:
I file possono contenere all'interno qualsisasi cosa, ed è li che dobbiamo lanciare l'eccezione, io credo rispettare i formati di input, significa che devono tener conto della struttura dei vari file, cioè ad esempio verificare che nei file dei nomi i nomi delle variabili siano posti su righe diverse ecc....
raga ma come cavolo avete fatto a dividere le righe in mezzo tra il BEGIN e l'END e inserirle nel costruttore di un documento ad esempio??dai sto impazzendo 1aiutino misero grazie
code:
BEGIN Email Supermercati TRIPP 21/08/2008 10:03:45 <primo nome>.<cognome>@<server di posta> Promozione dei supermercati TRIPP Gentile <titolo> <primo nome> <secondo nome> <cognome>, siamo lieti di informarla che, avendo lei effettuato <acquisti\>100> acquisti nel nostro supermercato, ognuno per un totale superiore a 100 Euro, potrˆ acquistare in anteprima il nuovo modello del frullatore KRAZZ al presso simbolico di 10 Euro. <saluto>, La direzione dei supermercati TRIPP END Email
Secondo me, per il fatto di rispettare il formato, si riferisce solo ed esclusivamente al formato per i documenti, ovvero quello che dice nel punto 5.1 del pdf.
per il file dei nomi e dei valori penso proprio che non devi controllare nulla...
supernick diceva:
cioè ad esempio verificare che nei file dei nomi i nomi delle variabili siano posti su righe diverse ecc....
ma un controllo del genere non può essere fatto; poniamo la variabile PRIMO NOME, come fai a sapere se è una variabile intera oppure sono due variabili distinte, ovvero PRIMO e NOME?
non si può fare un controllo del genere, nè sul file dei nomi ne su quello dei valori..il controllo va fatto solo sui formati dei modelli, a prescindere che vengano presi da un file dei modelli o che vengano inserite a mano
ma un controllo del genere non può essere fatto; poniamo la variabile PRIMO NOME, come fai a sapere se è una variabile intera oppure sono due variabili distinte, ovvero PRIMO e NOME?
Originally posted by Supernick
perche se ho capito bene (e sarebbe una novità) nei file dei nomi, i singoli nomi delle variabili sono posti su righe diverse quindi
Primo
Nome
son due variabili distinte, ma
Primo nome
è la stessa variabile
appunto! ed è per questo motivo che non possono essere fatti controlli sul file dei nomi.
se nel file dei nomi c'è
primo nome secondo nome
cognome
primo nome secondo nome è da intendersi come unica variabile
che sembra scritto da Battiato in una fase acuta di depressione...
si, vero, infatti questo controllo è scritto esplicitamente nel testo 
già, vanno confrontati il numero di nomi con il numero di valori per riga..
"ogni riga
conterr`a esattamente tanti valori quante sono le righe (e quindi le variabili)" (4.2, pg 2)
esatto.
scusate (per curiosità) voi su che strutture state lavorando.
io credevo di fare un vector per la lettura da documento (così non ho problemi per le dimensioni) però poi trasferire tutto in array (dandoli come dimensione vector.size()) che son più facili da gestire
anch'io ho abusato di vettori ehehe... sono comodissimi!
e l'interfaccia voi dove l'avete utilizzata?
Malchiodi mi disse che non è obbligatoria (xk se la togli e rimuovi l"implements alle classi, è uguale), ma lui vuole vedere come la sfruttiamo...
si non è obbligatoria, però la puoi usare e riportarne come traccia i metodi usati nelle classi Document, Mail e Report (se hai fatto coem me che Document è superclasse (NON astratta ovviamente) di mail e report la usi solo per implementare questa classe).
quindi alla fine l'interfaccia la usi come parametro da passare quando istanzi documentprocessor.
penso sia così.... (anche se non l'ho ancora fatto
)
una domandina poi, il FileModelli deve iniziare per forza con
BEGIN xyz o può iniziare anche con una riga vuota? mi serve per gestire le eccezioni...
Originally posted by Supernick
si non è obbligatoria, però la puoi usare e riportarne come traccia i metodi usati nelle classi Document, Mail e Report (se hai fatto coem me che Document è superclasse (NON astratta ovviamente) di mail e report la usi solo per implementare questa classe).
quindi alla fine l'interfaccia la usi come parametro da passare quando istanzi documentprocessor.
penso sia così.... (anche se non l'ho ancora fatto)
una domandina poi, il FileModelli deve iniziare per forza con
BEGIN xyz o può iniziare anche con una riga vuota? mi serve per gestire le eccezioni...
infatti, perchè comunque non so se darli che "SE il file inizia con qualcosa di diverso da BEGIN Doc o BEGIN MAil o BEGIN Rep = errore oppure se anche la riga bianca è consentita...vabbeh è un problema moooolto minore
No no <primo nome>, primo nome è la variabile e nel file dei nomi primo nome è sulla stessa riga x forza
piccolo semi off topic:
nelle modalità di consegna citate nell'ormai mitico testo di questo "entusiasmante" progetto, c'è scritto che il malloppo cartaceo dei documenti va consegnato mercoledi 16 settembre...tutto perfetto, tranne per il fatto che il 16 settembre è un martedi!
allora voleva dire martedi 16 settembre
o mercoledi 17?
scusate ma mi scappa da ridere....
Originally posted by Lukkei
piccolo semi off topic:
nelle modalità di consegna citate nell'ormai mitico testo di questo "entusiasmante" progetto, c'è scritto che il malloppo cartaceo dei documenti va consegnato mercoledi 16 settembre...tutto perfetto, tranne per il fatto che il 16 settembre è un martedi!
allora voleva dire martedi 16 settembre
o mercoledi 17?
scusate ma mi scappa da ridere....
Oddio, per fare tutte le letture mi è venuto fuori un Vector di Vector di String ![]()
Raga, ma voi che tipo di argomento passate al costruttore del Report per quanto riguarda i paragrafi? 0_o
è la stessa domanda che mi ponevo pure io.....cioè quello che tu dici è il fatto che i paragrafi non sono nei file dei valori e dei nomi ma solo nei modelli, quindi come si fa a capire quando inizia un paragrafo e quando finisce (ricordo che non sono delimitati da < e > ) lo stesso vale per altri dati.
comunque per quando riguarda l'argomento credo vada bene una stringa però con le sequenze di escape ecc..
cosa intendi con "ricordo che non sono delimitati da < e >" ?
all'interno dei paragrafi potrebbero esserci delle variabili...
all'interno si, ma io sto parlando dei pragrafi stessi....questi come devo gestirli?
Essendo "fissi" alcuni paragrafi, come faccio a passarli come parametro del costruttore?
ah boh..non ci sono ancora arrivato...sto ancora tentando di prelevare quello che c'è dentro un BEGIN Document..
mi sa che allora siamo piu o meno allo stesso punto...solo che sto debuggando perchè ha qualche problema....
non ho la minima idea di come si usi il debug ![]()
Originally posted by Jaky
non ho la minima idea di come si usi il debug![]()
mah..non ho ancora capito che tipo di variabili ci va per memorizzare i paragrafi...qualche idea?
Originally posted by Supernick
Oddio, per fare tutte le letture mi è venuto fuori un Vector di Vector di String![]()
Raga ma la lettura del file dei nomi e del file delle variabili l'avete fatto nelle classi dei documenti (Document,Email,Report)?????????
Originally posted by nasty121
il controllo dei nomi dove lo effettuate) (ricordo k devono comprendere almeno tutte le variabili contenute nel documento)
Io questo "check" lo farei subito dopo aver caricato il vettore di nomi nel DocumentProcessor, voi come fate?
Raga ma la lettura del file dei nomi e del file delle variabili l'avete fatto nelle classi dei documenti (Document,Email,Report)?????????
Originally posted by Jaky
io lo faccio man mano che trovo una variabile, del tipo
trovo la variabile, controllo se è presente, se si vado avanti, altrimenti eccezioni. Lo faccio anche io nel DocumentProcessor
no, lo puoi fare solo in una classe questa cosa, ed è tremendamente palese
mi rimane ancora il problema di che tipo di varibile usare per i paragrafi..mmmmah!
ah raga..curiosità...come siete messi a linee di codice?qualcuno è sulle 400? io circa 500
![]()
dice: nella classe meno specifica
sta a te capire quale intendeva
meno specifica tra quali???tra le 3??dai dimmelo.....
ho kiesto solo per sapere se sto procedendo in maniera corretta o sto sbagliando tutto!
Originally posted by Jaky
dice: nella classe meno specificasta a te capire quale intendeva
| All times are GMT. The time now is 10:31. | Pages (2): [1] 2 » Show all 279 posts from this thread on one page |
Powered by: vBulletin Version 2.3.1
Copyright © Jelsoft Enterprises Limited 2000 - 2002.