View Full Version : [Programmazone Web - Java] iniziare
mone.java
08-03-2011, 12:12
Ciao a tutti, volevo iniziare a cimentarmi nello sviluppo di applicazioni web... Il problema è che non so da dove iniziare.... Conosco discretamente Java e quindi pensavo di orientarmi su quello... Alcuni però mi dicono che javaEE "è passato di moda" e mi consigliano di orientarmi su dei Framework tipo spring ecc... altri di iniziare direttamente da PHP altri ancora invece mi dicono javaEE (poi ci sono quelli che dicono cambia mestiere ma è un'altro paio di maniche...). Cmq volevo chiedere vostre opinioni al riguardo... Ovvero quale sia la scelta migliore per iniziare considerando che preferirei rimanere in ambito Java.... È una perdita di tempo guardare javaEE e bisognerebbe iniziare con i Framework e poi magari tornare a vedere javaEE oppure il contrario... consigli??? Libri?? Guide?? esperienze??
Vi ringrazio tutti ciao!!!
JavaEE è la piattaforma (a rigore è un'estensione della piattaforma Java SE ma diciamo che ha una sua dignitià autonoma).
Quindi quello te lo cucchi di certo. Dopodichè ci sono i mitici framework, che sono un mix di librerie e convenzioni da applicare alla piattaforma. Cioè parti da JavaEE e poi gli aggiungi qualcos'altro.
Il fatto che JavaEE passi in secondo piano è poi dovuto agli IDE. Se vuoi creare un'applicazione JavaEE apri Netbeans, pigi "New Enterprise Application" e la parte EE è bell'e che finita perchè da lì in poi hai mano libera.
Se invece la fai con Emacs o Vi puoi pure chiamare casa e salutare tutti perchè non ne salti più fuori.
Circa l'anternativa "php", va detto che il noto "lamp" (in cui la p sta per php) propone un'offerta più ampia sul versante "aggratis" - anche perchè a parte un paio di mosche bianche non credo che ci siano servizi di hosting gratuito che offrano supporto a JavaEE.
Rispetto a questo, la piattaforma EE ti da un attimino di libertà in più. Ad esempio sul versante dei linguaggi.
mone.java
08-03-2011, 12:45
Grazie per la risposta.... Cmq penso di concentrarmi su Java e php magari guardarmelo piu avanti... Ovviamente uso un IDE (netbeans)... Ma mi consiglieresti una qualche manuale, possibilmente in italiano, che faccia al caso mio... Ovvero che parta dal presupposto che io di web non sappia nulla... L'hosting per ora non è un problema... Volevo solo sapere se mi conveniva... O se andavo a perdere tempo per nulla...
Per i manuali attendiamo un saggio (c'è anche un "certificato" che bazzica il forum), io e la parte EE non andiamo molto d'accordo - troppo poche cose che luccinano.
Ciao a tutti, volevo iniziare a cimentarmi nello sviluppo di applicazioni web... Il problema è che non so da dove iniziare.... Conosco discretamente Java e quindi pensavo di orientarmi su quello... Alcuni però mi dicono che javaEE "è passato di moda" e mi consigliano di orientarmi su dei Framework tipo spring ecc... altri di iniziare direttamente da PHP altri ancora invece mi dicono javaEE (poi ci sono quelli che dicono cambia mestiere ma è un'altro paio di maniche...). Cmq volevo chiedere vostre opinioni al riguardo... Ovvero quale sia la scelta migliore per iniziare considerando che preferirei rimanere in ambito Java.... È una perdita di tempo guardare javaEE e bisognerebbe iniziare con i Framework e poi magari tornare a vedere javaEE oppure il contrario... consigli??? Libri?? Guide?? esperienze??
Vi ringrazio tutti ciao!!!
Ciao, se vuoi un inizio soft e capire cosa ci sia dietro una web application ti consiglio il testo Head First Servlets & JSP, Second Edition (http://headfirstlabs.com/books/hfsvlt/). Il primo impatto con questo testo è strano (immaginette e dialoghi), però è davvero eccezionale.
Se tu conosci solo java e vuoi capire come si faccia un applicazione web semplice con Tomcat + servlet + jsp è l'ideale. E' in inglese, ma davvero semplice è ottimo.
Dopo aver studiato il libro sopracitato, conosci la parte prettamente web della piattaforma JEE.
Il passo successivo potrebbe essere quello di approfondire la parte "business" della piattaforma; essa comprande gli Enterprise Java Bean (EJB) e la Java Persistence Api (JPA). In pratica quegli oggetti che contengono la logica di business della tua applicazione e che ti aiutano a gestire la persistenza dei tuoi oggetti del modello (e qui entrano in gioco anche i database).
Per aggiungere quindi questo tassello non è più sufficiente il web container (come ad esempio ti avevo detto Tomcat), ma si rende necessario l'utilizzo di un application server (esso oltre ad avere un web container, ti mette a disposizione, in maniera trasparente anche un ejb container).
Ad esempio, potresti quindi utilizzare JBoss, oppure Websphere o altre alternative ( a questo punto potresti anche interessarti a JSF sempre per la parte web, è un framework sempre Sun/Oracle integrato nella piattaforma).
Per la parte degli EJB + JPA consiglio caldamente il testo "EJB 3 In action", veramente chiaro.
La JEE non termina certo con la componente "business" e "web", ma contiene altre cose che possono essere utili in taluni casi.
Tutto quello che ti ho scritto fa riferimento alla JEE 5, ma considera che le differenze con la 6 non sono enormi.
Scusa se mi sono dilungato un pò troppo.
mone.java
08-03-2011, 21:21
La tua è stata esattamente il tipo di risposta che intendevo ricevere!!! Grazie mille!!! Era da un po di tempo che aspettavo che qualcuno mi desse delle risposte del genere!!! Volevo chiederti per quanto riguarda la manualistica in ita esiste qualcosa di valido o è meglio spremersi con l'inglese... anche perchè non è solo questione mia!
Grazie ancora!!!
Ciao, in italiano non conosco alcun testo..puoi affidarti a qualche tutorial che magari trovi in rete (ad esempio su mokabyte) però di libri non credo che ne esistano..guarda che non sono complessi i testi tecnici in inglese!!
e-commerce84
16-05-2011, 10:31
Concordo anche io, l'uso di framework oggi giorno è indispensabile...ma un framework è qualcosa che ti dà delle componenti "prefatte" e sopratutto ti vincola ad una specifica logica e ad un'insieme di convenzioni...non si và a sostituire a Java EE...diciamo che và a strutturare JAVA EE
Un framework infatti a grandissime linee è un insieme di classi (concrete ed astratte) e di interfacce. Tu usi le classi che ti vengono fornite prefatte ed implementi le interfacce fornite dal framework in modo tale che la tua applicazione aderisca alla logica del framework (per esempio in Spring non creerai più gli oggetti ma sarai costretto ad iniettarli da una factory implementando un pattern chiamato inversione del controllo...la logica di base è che tu hai una factory che ti crea tutti gli oggetti di cui hai bisogno. Poi nelle varie classi inceve di fare new, chiami la factory e ti fai iniettare un certo tipo di oggetto...molto a grandi linee....conosco poco Spring...solo per rendere l'idea di cosa significa che un framework ti vincola ad una sua logica...ma sempre Java EE rimane...)
Comunque...Spring è moltooooo complesso (e tratta un po' tutti gli argomenti: applicazioni nella shell, applicazioni desktop, applicazioni web). Io ti consiglierei di iniziare a vedere in modo sensato Java EE (ma senza perderci troppo tempo, difficilmente lavorerai senza framework) e poi ti consiglierei di iniziare con IceFaces che invece è molto richiesto. Magari vediti decentemente il concetto di MVC (Model View Controll)
IceFaces è un framework JAVA EE di presentazione (quindi esula da tutto ciò che riguarda la logica di businness e si concentra solo sulla presentazione "grafica"). In pratica serve a realizzare applicazioni RIA (Rich Internet Application) che sono applicazioni web con un'interfaccia grafica simile alle applicazioni desktop (in pratica applicazioni che senza fare il refresh della pagina aggiornano i loro contenuti...di fatto viene fatto implementando Ajax in modo trasparente, senza che ti devi studiare Javascript e dandoti tante cose interessanti...tipo: gli passi una collezione contenente dei dati...e lui in base alla collection ti crea una tabella da visualizzare nella pagina)...comunque fai prima a capire di cosa si tratta guardando gli esempi dello showcase che ti mostra i vari componenti messi a disposizione dal fremework con descrizione e codice: http://component-showcase.icefaces.org/component-showcase/showcase.iface
Su IceFaces ci sono molti manuali e documentazione...è molto usato e richiesto...noi ad esempio lo stiamo usando per creare portlet RIA da inserire dentro un portale LifeRay
Poi magari dopo aver imparato bene IceFaces passerei a vedermi o un framework tipo Spring o un portale tipo LifeRay (ma secondo me quelli ti conviene vederli in azienda con qualcuno accanto che già li sà usare perchè se no può essere frustrante)
Secondo me se ad un'azienda ti proponi che già conosci di tuo Java EE + IceFaces già ti guardano bene...
Spero di esserti stato utile
Ciao
Andrea
mone.java
16-05-2011, 11:48
Non mi sei stato utile DI PIÙ!!!! Grazie mille per la risposta esaustiva! Un po java EE l'ho già guardato.... adesso mimetterò a studiare IceFaces.... D'altronde in diversi mi hanno detto che usare direttamente JavaEE ormai non è piu di pratica.... Grazie mille ancora!
Ciao, Simone.
e-commerce84
16-05-2011, 13:18
Non mi sei stato utile DI PIÙ!!!! Grazie mille per la risposta esaustiva! Un po java EE l'ho già guardato.... adesso mimetterò a studiare IceFaces.... D'altronde in diversi mi hanno detto che usare direttamente JavaEE ormai non è piu di pratica.... Grazie mille ancora!
Ciao, Simone.
De nada...ah dimenticavo di dirti...evita di usare Strut (un altro noto framework Java), è stato usato moltissimo fino ad un po' di tempo fà ma stà perdendo rapidamente piede in favore di altri strumenti come IceFaces, sarebbe tempo perso in fase di studio...se poi un giorno ti toccherà mettere le mani su un progetto che lo usa...vabbè te lo imparerai sul momento ma non ci perderei tempo ora
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.