Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Redmi Pad 2 9.7: ampio display, economico e peso contenuto, ma qualche limite nelle prestazioni
Redmi Pad 2 9.7: ampio display, economico e peso contenuto, ma qualche limite nelle prestazioni
Redmi Pad 2 9.7 punta su un display ampio e fluido, una batteria capace di accompagnare l'uso quotidiano senza ansie da ricarica e un prezzo accessibile, a partire da 179,90 euro per la versione con 64 GB di storage. Lo Snapdragon 6s 4G Gen 2 e i 4 GB di RAM della configurazione più diffusa frenano però chi cerca reattività e multitasking spinto: ecco il bilancio dopo due settimane di prova diretta
Peugeot Polygon Concept: ecco il futuro delle utilitarie
Peugeot Polygon Concept: ecco il futuro delle utilitarie
Polygon è la concept car di Peugeot che mostra il futuro delle soluzioni del segmento B: tra design compatti e innovativi affiancati da dimensioni compatte uno scherzo dalla manovrabilità incredibile per le manovre a bassa velocità
Reno16 Pro: il compatto di OPPO punta su fotocamera da 200MP e il nuovo Bubble! La recensione
Reno16 Pro: il compatto di OPPO punta su fotocamera da 200MP e il nuovo Bubble! La recensione
OPPO ha portato in Italia, dal 1° luglio 2026, Reno16 Pro: display AMOLED da 6,32 pollici a 144Hz, tripla fotocamera con sensore principale da 200 megapixel, chip Dimensity 8550 Super e batteria da 6000mAh, al prezzo di lancio di 899 euro. Lo abbiamo provato per due settimane insieme al nuovo accessorio Bubble, per capire se la formula compatta della serie regge ancora di fronte a un listino da 1099 euro
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 12-05-2009, 08:14   #1
zakmckraken
Member
 
Iscritto dal: Apr 2004
Messaggi: 56
[MVC] perche? (e soprattutto come separare i layers) - lunghetto

Ciao a tutti, premetto che ho ripreso Java dopo anni di C/C++ embedded e C# e che ci lavoravo la bellezza di 6 anni fa, quindi -chiaramente- le mie opinioni sono totalmente opinabili e sicuramente non corrispondenti alla realta', proprio da questo ho deciso di scrivere questo post.
Da poco ho inziato a lavorare con Jsf/Spring/Hibernate, su un'applicazione che ha necessita di essere distribuita su n application servers, molto grande, molto modulare (almeno nei desideri dell'analista ma va beh...).
Ora, io ho sempre lavorato limitandomi a separare gui/logica/db come insegnato da millenni ormai, realizzando query sql piu'o meno complesse, elaborando i vari risultati, validando etc, tutto questo con servlet/JSP. Niente di eccezionale insomma. Si preparava l'analisi con use cases e uml si implementava la parte di business col db, si disegnava la gui e via andare.
Attualmente vedo (per esempio) Spring e Hibernate, belli, potenti flessibili, -strani-.
Ipotizzo una cosa banale, una semplice maschera CRUD con lista, schifosamente standard, (oggi) non voglio stare 2 ore a scrivere codice ridondante o molesto, -non voglio replicare le informazioni soprattutto-, per esempio le primary keys voglio che siano read-only in modifica e editabili per un nuovo record. Ma per questo devo conoscere i metadati del db, che sono gestiti var livelli sotto da Hibernate, ma sono dati che l'application server conosce, non vorrei dover riscrivere nella logica dell'interfaccia tutto questo comportamento (imho abbastanza comune). Con Spring (prendo questo perche'e'l'unico che conoscicchio, ma non credo sia molto diverso da altri) dovrei farmi un'altro bean che gestisce questi metadati con altri pojos, con altro xml, con altra logica, etc. etc.
Altra cosa, La logica di business, ho il mio pojo, ipotizzo un pattern stile Value Object, con il mio vo che rotola tra gui e persistenza, la logica non puo'essere messa sul lato gui, non puo'essere messa sul lato hibernate. Va messa sul pojo??? Si dovranno fare delle classi che dato il Pojo vi applichino delle operazioni, sto impazzendo??? (prob.si...)
Il Control di MVC, prendo Jsf perche'e quello che ho appena visto (male), qual'e' la sua ragion d'essere in una applicazione tipo gestionale? Capisco un sito web, ma...
Ripeto che non conosco assolutamente bene questo enorme mondo, e per questo che chiedo a chi gia'bazzica tutto questo, le mie idee attuali sono dovute banalmente al fatto che sono tornato su questi ambienti da poco piu'di un mese, quindi non mi trucidate
zakmckraken è offline   Rispondi citando il messaggio o parte di esso
Old 12-05-2009, 11:47   #2
PGI-Bis
Senior Member
 
L'Avatar di PGI-Bis
 
Iscritto dal: Nov 2004
Città: Tra Verona e Mantova
Messaggi: 4553
Se la tuo opinione è che tutto il carrozzone enterprise fa schifo hai il mio voto.
PGI-Bis è offline   Rispondi citando il messaggio o parte di esso
Old 12-05-2009, 12:34   #3
zakmckraken
Member
 
Iscritto dal: Apr 2004
Messaggi: 56
Tendenzialmente...

Mi sembra quantomeno strano di dover costruire tutto sto po'po' di roba per la minima cosa, ovvero, se aggiungo un campo al sistema devo andare a ritoccare:
1) Il file hbm di hibernate (se non uso le annotations di hib. )
2) La classe Entity di hibernate
3) La classe VO
4) La copia dei parametri da entity a vo e viceversa
5) Aggiungere il campo nei vari ed eventuali findBy
6) Modificare l'hsql delle ricerce di cui al punto 5 (si in effetti avere solo un dialetto sql per tutto male non e',anche se le join sono un tantino contorte rispetto ad un sano sql standard... rimpiango Oracle 8...)
7) La gui
In piu',sara'che sono pesantemente legato all'approccio C/C++ non amo molto la reflection...giusto per motivazioni prestazionali, non per altro..
Ripeto, probabilmente e'una mia impressione ma mi sembra un tantino eccessivo... attendo (e spero in) smentite
zakmckraken è offline   Rispondi citando il messaggio o parte di esso
Old 12-05-2009, 13:10   #4
PGI-Bis
Senior Member
 
L'Avatar di PGI-Bis
 
Iscritto dal: Nov 2004
Città: Tra Verona e Mantova
Messaggi: 4553
Guarda, sfondi una porta aperta. Potremmo star qui a darci pacche sulle spalle per delle giornate intere.

Vorrei darti un'opzione B ma non c'è. Sono "soluzioni" software che nell'ambiente enterprise devi usare quindi rassegnati e vai.

Va precisato però che Java e Java EE in comune hanno solo un pezzo del nome.
PGI-Bis è offline   Rispondi citando il messaggio o parte di esso
Old 12-05-2009, 13:43   #5
zakmckraken
Member
 
Iscritto dal: Apr 2004
Messaggi: 56
Fantastico, quindi niente simpatiche soluzioni out-of-the box... a parte imporbabili tentativi di automatizzare la generazione della persistenza e quant'altro dal modello UML (si intende questo con MDA? si lo so, ma google usa troppa CO2 per ricerca :P ), ma... mai provato il mistico AndroMDA... che ti genera pure la gui, che pero'ha una lista di dipendenze un po, come dire 'inconsistente' (e se qualcuno e'riuscito a usarlo con Jsf mi dica come perche' io ho dichiarato la resa incondizionata...), fatta col caro dolce Maven, che pero'fa ingrandire i progetti in maniera brutale (basta aggiungere la dependency... mettiamoci questo plugin) mi sembra di vedere rotolare a valle la qualita'del codice... non delle librerie intendiamoci, saran fatte benissimo, ma di solito cerco sempre di minimizzare codice e dipendenze (anche per non spararmi ad ogni release), e ogni mattina, quando sbatto 50 Mb su JBoss (di librerie, piu' altri 15 di applicativo) insomma mi sento un po'come se fossi diventato un enrome ippopotamo sovrappeso con problemi di gotta...
Continuo a sottolineare che spero di trovare qualcuno che mi critichi...e mi dica che sto sbagliando tutto... e PGI-Bis, grazie per il supporto morale, almeno non mi sento piu'solo ... mal comune mezzo gaudio!
zakmckraken è offline   Rispondi citando il messaggio o parte di esso
Old 13-05-2009, 14:49   #6
RaouL_BennetH
Senior Member
 
L'Avatar di RaouL_BennetH
 
Iscritto dal: Sep 2004
Messaggi: 3967
Lungi da me essere scambiato per un esperto...

Anche io, ma solo per scopi 'didattici', stavo cercando di capirci qualcosa su questi design.

Credo di aver capito che fin quando un progetto dev'essere gestito e manutenuto da una sola persona, adottare questi design non ha molto senso.
Davvero è come prendere un lanciarazzi per sparare ad una mosca (citazione)


In un team abbastanza vasto dove ci sono competenze specifiche e comunicazione fra i vari componenti del progetto, credo possa semplificare le cose, almeno per progetti molto ampi.
__________________
Dai wafer di silicio nasce: LoHacker... il primo biscotto Geek
RaouL_BennetH è offline   Rispondi citando il messaggio o parte di esso
Old 13-05-2009, 15:02   #7
banryu79
Senior Member
 
L'Avatar di banryu79
 
Iscritto dal: Oct 2007
Città: Padova
Messaggi: 4131
Quote:
Originariamente inviato da RaouL_BennetH Guarda i messaggi
In un team abbastanza vasto dove ci sono competenze specifiche e comunicazione fra i vari componenti del progetto, credo possa semplificare le cose, almeno per progetti molto ampi.
Per progetti molto ampi oppure per teste molto diverse
__________________

As long as you are basically literate in programming, you should be able to express any logical relationship you understand.
If you don’t understand a logical relationship, you can use the attempt to program it as a means to learn about it.
(Chris Crawford)
banryu79 è offline   Rispondi citando il messaggio o parte di esso
Old 13-05-2009, 15:29   #8
shinya
Senior Member
 
L'Avatar di shinya
 
Iscritto dal: Jul 2005
Città: Bologna
Messaggi: 1130
JSF e Hibernate, nella mia modestissima opinione sono lammerda.
Se li devi usare perchè sei costretto dall'ambiente in cui lavori, posso risponderti solo con un "I feel your pain".
Se invece hai possibilità di movimento, ti dò un paio di framework alternativi che fanno le cose come devono essere fatte.

http://www.stripesframework.org/ (un web framework action-based, l'ho usato un pò, figo)
http://wicket.apache.org/ (un altro web framework, ma component-based. Mai usato, ma ne parlano tutti molto bene)
https://activeobjects.dev.java.net/ (un ORM fatto come dio comanda, non come hibernate...è moooolto più semplice)
http://code.google.com/p/google-guice/ (un framework per dependency injection senza quella merda di xml, se ti serve)
shinya è offline   Rispondi citando il messaggio o parte di esso
Old 29-06-2009, 11:47   #9
gokan
Senior Member
 
L'Avatar di gokan
 
Iscritto dal: Apr 2002
Città: Palermo
Messaggi: 4913
Ciao, rispolvero il thread che avevo seguito, e che avevo messo tra i sottoscritti per i vari framework segnalati da shinya
Come è andata a finire all'autore del thread con jsf/hibernate nel progetto in cui lavora?

Me lo sono chiesto perchè anch'io lavoro da un pò con jsf e sebbene lavori con le vecchia versione 1.0 devo dire che non sono così malaccio..per fare qualche form, mostrare tabelle di risultati e cosette "tipo gestionale" non sembra malaccio; tra le altre cose sono costretto ad utilizzare RAD di ibm come ide (una sorta di eclipse potenziato e più pesante) e devo dire che vi sono dei tag ibm abbastanza comodi.
Finora l'impressione non è negativa e leggendo in giro, le JSF 2.0 (al momento in versione RC) promettono molto bene.

Quote:
Originariamente inviato da shinya Guarda i messaggi
JSF e Hibernate, nella mia modestissima opinione sono lammerda.
Se li devi usare perchè sei costretto dall'ambiente in cui lavori, posso risponderti solo con un "I feel your pain".
Se invece hai possibilità di movimento, ti dò un paio di framework alternativi che fanno le cose come devono essere fatte.

http://www.stripesframework.org/ (un web framework action-based, l'ho usato un pò, figo)
http://wicket.apache.org/ (un altro web framework, ma component-based. Mai usato, ma ne parlano tutti molto bene)
https://activeobjects.dev.java.net/ (un ORM fatto come dio comanda, non come hibernate...è moooolto più semplice)
http://code.google.com/p/google-guice/ (un framework per dependency injection senza quella merda di xml, se ti serve)
Per quanto riguarda questi link, sembra molto interessante wicket, però come tutti sappiamo alla fine usiamo sempre i framework che vanno in voga (e non sempre sono i migliori, ma molto supportati si).
Torniamo sempre ai soliti discorsi..lavorando come dipendenti di qualcuno è difficile imporre l'uso di alcune tecnologie piuttosto che altre.
Se lavorassi come libero professionista allora si potrebbe anche prendere in considerazione (fino ad un certo punto però) l'uso di framework alternativi.

ciao
__________________
Sun Certified Java Programmer - Sun Certified Web Component Developer - Sun Certified Business Component Developer
gokan è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Redmi Pad 2 9.7: ampio display, economico e peso contenuto, ma qualche limite nelle prestazioni Redmi Pad 2 9.7: ampio display, economico e peso...
Peugeot Polygon Concept: ecco il futuro delle utilitarie Peugeot Polygon Concept: ecco il futuro delle ut...
Reno16 Pro: il compatto di OPPO punta su fotocamera da 200MP e il nuovo Bubble! La recensione Reno16 Pro: il compatto di OPPO punta su fotocam...
 Hisense 55U7SE: tuttofare e accessibile, il MiniLED per film, sport e gioco Hisense 55U7SE: tuttofare e accessibile, il Min...
Kindle Scribe Colorsoft: riduce le cornici e diventa a colori, ma il prezzo è alto Kindle Scribe Colorsoft: riduce le cornici e div...
Intel brevetta XBM: la nuova memoria pun...
Film prodotti con l'IA: Disney, insieme ...
Reinstallare Windows senza chiavette o s...
Apple racconta il suo vantaggio nell'AI ...
Cisco Cloud Control, una cabina di regia...
Il software che controlla le Fab va in p...
Il settore tech è il primo bersag...
Windows 11, corretto un bug che poteva o...
X introduce nuove funzioni per i video c...
Blue Origin sta costruendo diversi lande...
DeepSeek avvia lo sviluppo di un chip pr...
Le offerte migliori ora su Amazon sugli ...
Fino a un petabit al secondo! Il piano d...
Cisco punta tutto sull'IA: tutti i 90.00...
Intel Nova Lake riporterà il supp...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 22:23.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v