|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Oct 2004
Messaggi: 1945
|
[Java EE] - Apprendimento rapido
Salve a tutti. Ho bisogno di un consiglio da programmatori navigati (e non ovviamente).
Conosco molto bene Java SE (università e studi personali). All'università ho anche fatto qualcosina di EE. Diciamo un'infarinatura iniziale. Ora, siccome per lavorare con SE non ci si fa nulla, voglio studiare bene EE. Per bene ovviamente voglio dire che posso cominciare a lavorare con quello che so anche se è l'esperienza poi a fare il resto. Non so però in che modo studiare EE. Sarei in grado da autodidatta di studiarlo, non ho di questi problemi. L'unico problema che ho però è il tempo a mia disposizione. Devo imparare il più velocemente possibile. Come potrei fare? Corsi in sede, online, libri dettagliati, ecc... Oltre a questo, Java EE è composta da varie componenti (JNDI, JDBC, ecc..). Da dove partire? Cosa studiare in dettaglio e cosa magari un po più superficialmente? Penso di aver chiesto tutto... è molto importante per me.. grazie a tutti |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Oct 2004
Messaggi: 1945
|
Proprio nessun consiglio?
|
|
|
|
|
|
#3 |
|
Junior Member
Iscritto dal: Oct 2013
Messaggi: 18
|
il consiglio che ti do è quello di studiarti:
jsp e le servelt e tutti i metodi connessi e soprattutto l'inferfaccia ServletRequest che sta alla base per poter creare pagine dinamiche Poi un'altra cosa che ho trovato di fondamentale importanza è stato studiare l'api JDBC j(ava DataBase Connectivity), è un connettore per database che consente l'accesso alle basi di dati da qualsiasi programma scritto in Java. Per ogni rdbms (Relational database management system) come Mysql, Oracle 10g, SQLServer devi scaricare il relativo connettore. Ciò che devi imparare è come connetterti al db (devi imparare ad utilizzare la classe Connection), creare uno statement, ovvero lanciare una query (con la classe Statement o PreparedStatement), aprire un ResultSet ed attraverso un ciclo portarti dove vuoi (in un array oppure in una List/Vector) i dati estratti! In ultima battuta, ti consiglio caldamente di studiare un Framework (JSF oppure Hibernate) ed imparare la sua logica e capire il funzionamento dei metodi principali. Spero di esserti stato d'aiuto oppure di averti dato qualche spunto Ciao |
|
|
|
|
|
#4 |
|
Member
Iscritto dal: Mar 2008
Messaggi: 142
|
Sviluppa una piccola applicazione web, che poi magari pubblichi.
Dopo un infarinatura di teoria, per velocizzare io direi di passare direttamente ai framework. Ad esempio puoi usare Spring MVC per l'applicazione strutturare l'applicazione web e Hibernate per l'ORM. Unica cosa che sicuramente all'inizio c'è da Puoi usare le guide di html it, che per i principianti sono chiare. |
|
|
|
|
|
#5 |
|
Senior Member
Iscritto dal: Oct 2004
Messaggi: 1945
|
Grazie mille per i consigli.
Ho studiato qualcosa all'università di JSP e Servlet, ma ovviamente niente con cui potrei lavorarci. Ho anche usato le API JDBC ma ovviamente come sopra Stavo esattamente pensando di dedicarmi ai due framework consigliati (JFC e Hibernate). Come inizio stavo pensando di sbrodolarmi tutto il tutorial ufficiale sul sito ma quello penso dia una sola infarinatura. Qualche libro che qualcuno può consigliare in prima persona? Nel senso che lo ha letto e ci si è trovato bene. O anche (anche in privato) qualche scuola dato che devo dare priorità alla velocità purtroppo Grazie mille per ora ai due che mi hanno risposto... spero si aggiunga qualcun altro |
|
|
|
|
|
#6 |
|
Senior Member
Iscritto dal: May 2008
Città: Seattle (WA)
Messaggi: 306
|
Ciao, innanzitutto ti devi chiarire le idee su cosa vuoi fare. Nel senso:
1) Dal momento che sai Java vuoi buttarti nel mondo del web in generale 2) Dal momento che sai Java vuoi buttarti nello specifico su JavaEE dal momento che hai qualche opportunità al riguardo, o comunque hai visto che c'è molta offerta? In entrambi i casi e in generale per essere per lo meno appetibile sul mondo del lavoro devi assolutamente conoscere: -Framework di persistenza (ORM): permette di mappare gli oggetti su tabelle di un Database e viceversa. NE eseistono innumerevoli ma il più utilizzato in ambito Java è JPA (che è una specifica data da Oracle). Esistono varie implementazioni di JPA io ti consiglio di usare Eclipselink per iniziare che è molto leggero e semplice, il più usato è Hibernate ma è anche più "rognoso" quindi fidati di me e usa Eclipselink inizialmente. -Framework di logging: permette di effettuare il logging dell'applicazione su vari livelli DEBUG, INFO, WARNING ecc.. (vietato mettere i System.out.println all'interno del codice) log4j direi che è il più usato e semplice -Framework di test: permette di effettuare test sull'applicazione al fine di mantenere l'applicazione stabile a fronte delle modifiche. Per quanto riguarda Java i più famosi sono TestNG e JUnit, io ho sempre usato il secondo e del primo so poco e niente (magari dai un occhio qui: http://java.dzone.com/news/how-choos...testing-framew -Strumenti di Build, equivalente del make per C,C++ ecc.. ovvero quello strumeto che peremtte di automatizzare molti dei processi che riguardano lo sviluppo di un applicazione. A tal scopo ANT è molto usato ma sta venendo sostituito (da un bel po ormai) da Maven che permette di fare molte cose in più compreso gestire le dipendenze del progetto (ovvero lui si occupa di scaricarle e metterle nel classpath, figo vero?). Ultimamente anche Gradle sta prendendo molto piede ma è anche più difficile io ti consiglio di inziare con Maven che ormai e standard de facto. -IDE: Eclipse è il più usato, quindi ha anche più plugin ma a mio avviso è il peggiore. Netbeans è meglio (sempre secondo il mio modesto parere) è più veloce e stabile nonché intuitivo. Intellij è in assoluto il migliore ma è a pgamento (ma ne esiste una versione gratutita). I primi due li uso attualmente su diversi progetti quindi non parlo per sentito dire. Intellij l'ho usato un po e devo dire che si capisce al volo che ha una marcia in più. Ok adesso che hai gli strumenti puoi sceglierti un framework da usare che sono davvero innumerevoli. TI dico questo perché anche io esattamente come te mi sono trovato a studiare JavaEE senza conoscere gli strumenti sopracitati e dopo poco tempo ne ho pagato le conseguenze (le pago tutt'ora siccome i progetti di allora vanno ancora avanti). Se rientri nel caso 1 le scelte sono infinite: JavaEE, Spring, Struts, Wicket, Vaadin, GWT ecc.. TI consiglio di guardare questo link per farti un idea di cosa offre il mercato The Curious Coder’s Java Web Frameworks Comparison: Spring MVC, Grails, Vaadin, GWT, Wicket, Play, Struts and JSF Nel caso 2 semplicemente ti conviene iniziare a guardare come funzionano le servlet e jsp (infarinata) e poi passare a studiare JSF, EJB ecc... Comunque comprarsi un buon libro non guasta. PS: conoscere JDBC ti serve a poco e niente siccome salvo casi particolare ci penserà l'ORM a utilizzarlo per i suoi scopi. Comunque aver un idea di cos'è e come funziona non guasta.
__________________
"Considerate la vostra semenza fatti non foste a viver come bruti ma per seguir virtute e canoscenza" |
|
|
|
|
|
#7 | |
|
Senior Member
Iscritto dal: Oct 2004
Messaggi: 1945
|
Quote:
Ho letto con attenzione e pensavo di cominciare con framework di persistenza e in contemporanea di logging. Hibernate l'ho sentito ma per quanto riguarda JPA davvero no. Sceglierò bene. log4j l'ho utilizzato in un progetto all'università ma dovrò usarlo seriamente ora. Come IDE ho sempre usato Netbeans e continuerò a farlo. Per quanto riguarda invece Springs, JFS, ecc, qual'è la loro funzione? E in fatto di libri? Qualche consiglio in particolare? Inviato da una supercazzola ed un Nexus 5 scappellato a sinistra.. con senso unico |
|
|
|
|
|
|
#8 |
|
Senior Member
Iscritto dal: May 2008
Città: Seattle (WA)
Messaggi: 306
|
Allora Hibernate è un ORM che implementa la specifica JPA (esattamente come Eclipselink, Toplink, Objectdb ecc..), mi pare che possa anche essere usato al di fuori della specifica JPA ma non penso ne valga la pena.
JavaEE, Spring, Struts ecc.. Sono framework per la creare applicazioni web (piu o meno) ognino con i suoi pregi e difetti (motivo per cui ti dovresti leggere la comparativa che ti ho postato). Non necessariamente sono mutualmente esclusivi, ad esempio adesso in un porgetto sto usando Vaadin + Spring. Ognuno di questi framwork ha vari componenti e plugin che permettono di gestire i vari aspetti della programmazione web, dall'interfaccia utente, alla sicurezza, alla persistenza all'integrazione con altri sistemi ecc... JSF è un componente di JavaEE che permette di creare interfacce utente in modo semplificato, ma non è obbligatorio usarlo, anzi ho notato che si predilige usare il classico HTML5 + JQuery in quanto più flessibile ma de gustibus. Inoltre JSF puro è un po bruttino e limitato ti conviene usare una libreria come PrimeFaces che (basata su JSF) mette a disposizione un sacco di componenti in più e semplifia notevolmente la vita. In quanto a lavoro forse ne trovi di più con Spring che con JavaEE. AH dimenticavo, poi ovviamente ti serve un WebServer, ne esistono innumerevoli con innumerevoli features: Tomcat, JBoss, GLassfish, Websphere ecc.. ti conviene iniziare con tomcat in quento gli altri servono a gestire applicazioni molto più complesse e di conseguenza sono più complessi da gestire/configurare. Per quanto riguarda le guide/libri non saprei cosa consigliare... Scegli cosa utilizzare e usa una guida del web.
__________________
"Considerate la vostra semenza fatti non foste a viver come bruti ma per seguir virtute e canoscenza" |
|
|
|
|
|
#9 | |
|
Senior Member
Iscritto dal: Oct 2004
Messaggi: 1945
|
Quote:
Inviato da una supercazzola ed un Nexus 5 scappellato a sinistra.. con senso unico |
|
|
|
|
|
|
#10 |
|
Senior Member
Iscritto dal: May 2008
Città: Seattle (WA)
Messaggi: 306
|
__________________
"Considerate la vostra semenza fatti non foste a viver come bruti ma per seguir virtute e canoscenza" |
|
|
|
|
|
#11 | |
|
Senior Member
Iscritto dal: Oct 2004
Messaggi: 1945
|
Quote:
Inviato da una supercazzola ed un Nexus 5 scappellato a sinistra.. con senso unico |
|
|
|
|
|
|
#12 | |
|
Senior Member
Iscritto dal: May 2008
Città: Seattle (WA)
Messaggi: 306
|
Quote:
__________________
"Considerate la vostra semenza fatti non foste a viver come bruti ma per seguir virtute e canoscenza" |
|
|
|
|
|
|
#13 | |
|
Senior Member
Iscritto dal: Jul 2001
Messaggi: 9947
|
Quote:
Struts mi pare non lo sviluppino più, quindi mi concentrerei su Spring MVC.
__________________
Aiuta la ricerca col tuo PC: >>Calcolo distribuito BOINC.Italy: unisciti anche tu<< Più largo è il sorriso, più affilato è il coltello. |
|
|
|
|
|
|
#14 | |
|
Senior Member
Iscritto dal: Jul 2001
Messaggi: 9947
|
Quote:
Tutto quello che è Enterprise Edition è basato sulle interfaccie, questo spiega le specifiche JPA. Ma spiega anche le specifiche EJB? Ho letto che specifiche (JPA) e prodotti (Hibernate) sono sempre in corsa tra loro e diventano uno il wrapper dell'altro. Ad esempio EJB2 faceva schifo ed era complesso, allora è nato Spring per wrapparlo ed adesso EJB3 wrappa Spring a sua volta; così anche tra H8 ed JPA2. Vi risulta? Per quanto riguarda la nomenclatura come funziona la storia? Java 6 significa Java 2 release 6 ovvero Java 2.6? .... e per JEE come funziona? Va pari passo con la versione di Java SE oppure sono disaccoppiati? Grazie a chi vuole collaborare a delucidare.
__________________
Aiuta la ricerca col tuo PC: >>Calcolo distribuito BOINC.Italy: unisciti anche tu<< Più largo è il sorriso, più affilato è il coltello. Ultima modifica di Matrixbob : 01-07-2014 alle 10:50. |
|
|
|
|
|
|
#15 |
|
Senior Member
Iscritto dal: Jul 2001
Messaggi: 9947
|
Inoltre ne approfitto per cercare qualche anima pia che si voglia sbilanciare su quella maledetta sintassi OGNL di Struts 2 qui:
[Struts] Avete chiare le differenze tra %{foo} e #bar['foo'] e %{#attr.foo.bar}?
__________________
Aiuta la ricerca col tuo PC: >>Calcolo distribuito BOINC.Italy: unisciti anche tu<< Più largo è il sorriso, più affilato è il coltello. |
|
|
|
|
|
#16 | |||||
|
Senior Member
Iscritto dal: May 2008
Città: Seattle (WA)
Messaggi: 306
|
Quote:
Quote:
Quote:
Ma cmq H8 e JPA non c'entrano nulla con il discorso. Almeno non che io sappia... Io ho inizato a interessarmi con gli EJB3 quindi potrei dir delle sciocchezze. Quote:
Quote:
Prego!
__________________
"Considerate la vostra semenza fatti non foste a viver come bruti ma per seguir virtute e canoscenza" |
|||||
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 18:07.




















