Devo imparare html e javascript per creare applicazioni web? [chiuso]

9

Sono un programmatore Java esperto e voglio creare un'applicazione Web complessa che richiede pagine dinamiche, disegni, ecc. (prendi come esempio SO). Devo imparare javascript / html per creare un'applicazione del genere?

Non è che non voglia imparare un'altra lingua (l'ho già fatto prima), ma la tecnologia nell'ambiente javascript sembra cambiare così velocemente che quando finisci di imparare un framework è già obsoleto. Ho controllato un numero di framework java per lo sviluppo web (spring, play), ma non profondamente. Quindi questi framework (o altri possibili framework java di cui non sono a conoscenza) possono essere utilizzati senza l'apprendimento di html / javascript? Ho anche qualche esperienza in Python. Quindi se posso fare l'app in python è anche un'opzione.

    
posta vainolo 19.12.2012 - 20:01
fonte

11 risposte

34

Non devi imparare JavaScript e HTML per creare applicazioni web.

Ma tu lo farai.

Se vuoi veramente scrivere webapps principalmente in Java, dai un'occhiata al Google Web Toolkit , che fa grandi quantità di Java in JS e possono soddisfare una buona parte del codice necessario per una webapp. Django è un framework simile per Python.

E se vuoi davvero evitare di scrivere HTML, ci sono una grande quantità di modelli e editor di What-you-see-is-what-you-get.

Ma vedi, a prescindere dal framework di astrazione e dai modelli HMTL con cui inizi, a un certo punto non sarai soddisfatto della presentazione. E così avrai abbastanza HTML / JS tra le mani per cambiare la piccola cosa che vuoi. E un'altra cosa. E un altro.

E poi un giorno ti sveglierai sudato freddo.

Ed è così che impari. È così che molti di noi hanno imparato, nell'era dei creatori di siti web point-and-click come Geocities. Dopo un po ', se sei serio sul Web, imparerai le lingue del Web, intenzionalmente o meno.

Quindi non devi imparare HTML e JavaScript per creare un sito come StackOverflow. Ma se davvero provi a creare un sito come StackOverflow, non sarai in grado di impedirti di apprenderli.

    
risposta data 19.12.2012 - 20:18
fonte
15

Consideriamo alcune possibili soluzioni allo scenario "Devo fare alcune cose sul web":

  1. Assumi qualcun altro per farlo
  2. Utilizza un framework elaborato che trasforma magicamente materiale non front-end in elementi front-end (html, css, js)
  3. Fai da te

Ignoreremo il numero 1 perché siamo fantastici in questo modo. Ci restano due scelte. Quale scegliere, quale scegliere ...

# 2 è allettante. Significa che puoi stare nella tua zona di comfort, il che è abbastanza comodo, specialmente se hai aggiunto una macchina fangosa e alcuni divani. Ma consideriamo cosa succede al framework che stai utilizzando:

  1. Scompare
  2. Diventa obsoleto
  3. Non corrisponde pienamente alle tue aspettative
  4. Qualsiasi altro problema relativo al software.

Sei un dev, quindi non deve essere difficile considerare tutti i possibili modi in cui un prodotto (specialmente una libreria) può rompere in molti modi spettacolari, strappando i tuoi divani e facendo cadere la macchina fangosa, dipingendo tutto in magenta brillante .

In ognuno di questi scenari, dovrai tornare a riconsiderare le opzioni discusse all'inizio della risposta (solo questa volta sostituendo il framework in # 2), con una quarta opzione aggiunta: prova e risolvila su un micro livello. In altre parole, impara il web-stack in modo superficiale, necessario solo per violare una soluzione a quel problema specifico.

Ne vale la pena? Dipende. Potresti credere che la struttura non ti mancherà mai e potresti avere ragione. E potresti sbagliarti.

Propongo una soluzione ibrida: in primo luogo, impara lo stack web. Non devi spendere molto tempo su di esso, non devi essere l33t h4x0rz come quel quattordicenne di strada che può aggiungere glitter alle pagine di MySpace, devi solo avere una conoscenza di base di ciò che è andando avanti. Quindi, se vedi che è lo scenario migliore per te, scegli un framework.

Ora la tua zona di comfort è un po 'più grande. Potrebbe anche avere una TV o un album di ABBA: Greatest Hits in mostra con orgoglio. Ora se qualcosa si rompe, saprai come risolverlo. Ora hai una scelta . E avere una scelta è sempre meglio che non avere una scelta.

    
risposta data 19.12.2012 - 20:24
fonte
2

Hai assolutamente positivo ?

No.

Ma se vuoi un'applicazione web moderatamente moderna, probabilmente dovresti. Ci sono modi per aggirarlo, ma sono astrazioni di ciò che sta realmente accadendo. Se stai bene con quello, allora fallo. Se non lo sei, dovrai imparare la lingua.

    
risposta data 19.12.2012 - 20:13
fonte
1

una web-app grande e complessa è molto difficile e noiosa da sviluppare da sola, anche se hai già padronanza di html e javascript.

il mio consiglio sarebbe di cercare la possibilità di sviluppare l'app web con un team o almeno uno sviluppatore front-end.

come questo ti concentri su ciò che già conosci bene e lascia che uno specialista faccia il front-end.
lo sviluppo del front-end è molto più difficile di quanto non sembri inizialmente, ad esempio perché il front-end deve funzionare su molti browser diversi su diversi sistemi operativi.

    
risposta data 19.12.2012 - 20:29
fonte
1

Mi unirò al coro dicendo che molto probabilmente dovrai imparare HTML / CSS / Javascript ad un certo punto.

Tuttavia, sembra che tu stia chiedendo dei framework che non invadono la scrittura del codice front-end. Posso riferire a questo sentimento. Sfortunatamente, ci sono pochissime tecnologie mature che astraggono quella roba (per una serie di buone ragioni).

Dai un'occhiata a Wt e alla versione Java JWT . Potrebbe essere quello che stai cercando.

In poche parole, tale framework tenta di rendere le app web-centriche in modo tale che invece di scrivere modelli HTML si codifichi nell'interfaccia utente come se fosse un'applicazione desktop. Usa alcune nuove tecnologie come socket web, migliora progressivamente e in generale ti astrae dal dover fare molto front-end.

    
risposta data 20.12.2012 - 22:32
fonte
0

Framework come Spring e Play saranno grandi per gestire la logica della tua applicazione, ma anche loro non astraggono la necessità di dover costruire un front-end per la tua applicazione web. Non è fondamentalmente diverso dal dover creare un front-end per l'applicazione desktop, solo un'esecuzione diversa.

Questo non è qualcosa che dovrebbe spaventarti troppo. Il tuo processo di sviluppo sarà in gran parte sempre lo stesso, tranne per il fatto che devi adattare i tuoi dati con HTML e CSS invece che con gli elementi della GUI desktop. Puoi apprendere le basi di HTML e CSS in un pomeriggio e puoi rendere la tua interfaccia complicata o semplice come vuoi.

Il mio consiglio è di visitare siti simili a quello che intendi costruire e quindi visualizzare il codice sorgente HTML: avrai un'idea di come i siti scorrono in termini di design HTML.

    
risposta data 19.12.2012 - 20:13
fonte
0

Sì, per realizzare qualsiasi tipo di applicazione web moderna è necessaria almeno una conoscenza di base dell'HTML e competenze in JavaScript. Usare framework per un linguaggio come Python o Java è possibile e puoi costruire la maggior parte delle funzionalità del tuo sito usando questi, ma anche per un sito di base hai bisogno di un po 'di HTML perché è l'unica cosa che un browser effettivamente capisce per la visualizzazione di contenuti. Puoi evitare di conoscere JavaScript, ma questo renderebbe il tuo sito molto meno user-friendly perché dovresti ricaricare le pagine ogni volta che vuoi aggiornare qualcosa, inoltre potresti perdere uno strumento molto utile per hackerare un sito insieme e affrontare i problemi di compatibilità del browser e le carenze CSS.

Sei un po 'preoccupato di quante cose cambiano nello sviluppo web, JavaScript non è cambiato da quando è stato implementato, inoltre c'è davvero solo un framework JQuery noto che rende davvero molto più bello lavorare con JavaScript. La maggior parte delle altre cose che cambiano rapidamente è davvero il sapore del mese e non è davvero necessario essere conosciuti

    
risposta data 19.12.2012 - 20:16
fonte
0

Ci sono framework per applicazioni web che astraggono HTML e JavaScript, ma onestamente la cura è spesso peggiore della malattia. (ad esempio, Google Web Toolkit).

Fatti un favore, e impara jQuery, CoffeeScript e / o altri framework javascript per risparmiare alcuni dei più noiosi dettagli. Allo stesso modo, considera l'utilizzo di qualcosa come Haml o HamlPy per lavorare con una versione migliore di HTML.

    
risposta data 03.06.2013 - 10:22
fonte
-2

L'HTML è la lingua del Web, quindi dovrai saperlo in qualche modo.

Javascript non così tanto ... puoi usare anche PHP, ecc. Javascript non è necessario al 100%.

Se stai costruendo un sito interamente, ti consiglio Javascript, poiché è supportato praticamente da tutti i browser e manterrà la compatibilità tra i diversi programmi di navigazione.

Ma se stai solo creando applicazioni web, questo si applica molto meno che se stai creando un sito web.

    
risposta data 20.12.2012 - 22:43
fonte
-2

Conoscere Javascript è un vantaggio in quanto aiuta a creare applicazioni web. Penso che HTML sia il migliore per avere una buona conoscenza e HTML5 è bello perché si integra bene con CSS3 e JavaScript. Consiglierei di navigare tra i corsi di Microsoft Virtual Academy.

Hanno oltre 200 diverse opzioni di corso e sono tutte gratuite e guidate da esperti. Ho beneficiato personalmente del corso di formazione sullo sviluppo di app con HTML5. In bocca al lupo!

    
risposta data 03.06.2013 - 10:08
fonte
-3

In una risposta breve SÌ. Ma ecco perché HTML è la struttura di tutto il web e JS è l'interazione del web. So che probabilmente ne hai sentito parlare molto ma, è molto importante saperlo. Alcuni framework ti permetteranno di non usare (o non usare molto) di HTML e JS ma sono le basi del web. Se non vuoi imparare il codice, assumi qualcuno. E so anche che non era nella tua domanda, ma ho commesso questo errore cercando di fare in modo che Twitter e Gmail pensassero senza conoscere alcun codice e semplicemente googling un tutorial.

Bene, buona fortuna!

    
risposta data 21.02.2015 - 13:55
fonte

Leggi altre domande sui tag