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


10

Sono un programmatore Java esperto e voglio creare un'applicazione Web complessa che richieda pagine dinamiche, disegni, ecc. (Prendi SO come esempio). Devo imparare javascript / html per creare una tale applicazione?

Non è che non voglio 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 certo numero di framework Java per lo sviluppo web (primavera, gioco), ma non in modo approfondito. Quindi questi framework (o altri possibili framework java di cui non sono a conoscenza) possono essere usati senza imparare html / javascript? Ho anche qualche esperienza con Python. Quindi, se posso fare l'app in Python, è anche un'opzione.


22
risposta breve: SÌ! ...... risposta lunga: SÌ !!!!!!!!!!!
rlemon,

1
Ulteriori punti: non hai bisogno di un framework, infatti, dovresti stare lontano da loro e librerie di astrazione mentre impari Javascript. Le librerie di astrazione (per definizione) non ti aiuteranno a imparare la lingua o le API. Entra nella stanza Javascript e fai ad alcuni dei proprietari / clienti abituali questa domanda.
rlemon,

1
Non al 100% la stessa domanda, ma trovo sempre questa risposta utile quando le persone chiedono "scorciatoie". programmers.stackexchange.com/questions/122191/…
rlemon

3
no, puoi pagare gli altri per farlo
Jason Sebring,

1
È come chiedere "devo sapere Java per scrivere app Android" o "devo imparare Objective-C per scrivere app iOS" - puoi evitarlo, ma non scrivere codice nativo ti farà male.
TehShrike,

Risposte:


35

Non è necessario imparare JavaScript e HTML per creare applicazioni Web.

Ma lo farai.

Se vuoi davvero scrivere webapp per lo più in Java, dai un'occhiata al Google Web Toolkit , che fornisce enormi quantità di Java a JS e può 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 enormi quantità di modelli e editor di What-you-see-is-what-you-get.

Ma vedi, indipendentemente 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 nelle tue mani per cambiare l'unica piccola cosa che vuoi. E un'altra cosa. E un altro.

E poi un giorno ti sveglierai con un sudore freddo.

inserisci qui la descrizione dell'immagine

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

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 impararli.


1
Quando ho letto la domanda per la prima volta, i miei pensieri erano esattamente gli stessi di questa risposta. Ma poiché ogni tecnologia ha i suoi pro e contro, potresti dare un'occhiata a programmers.stackexchange.com/questions/38441/… prima di decidere. Buona fortuna!

Se non sei in grado di creare una presentazione accattivante solo con html / css, ti sei semplicemente perso il bus.
ott--

È molto più difficile utilizzare tutto ciò che apprendi dopo aver introdotto un disastro nel tuo front-end tramite un CMS o una libreria dominante davvero scadente come EXTJS.
Erik Reppen,

+1 Non hai bisogno di conoscere JS e anche se resisti all'improvviso, un giorno lo saprai .
Spoike,

16

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

  1. Assumi qualcun altro per farlo
  2. Utilizzare un framework elaborato che trasforma magicamente roba non front-end in roba front-end (html, css, js)
  3. Fallo da solo

Ignoreremo il n. 1 perché siamo fantastici così. Ci rimangono due scelte. Quale scegliere, quale scegliere ...

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

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

Sei uno sviluppatore, quindi non deve essere difficile considerare tutti i possibili modi in cui un prodotto (in particolare una libreria) può rompersi in molti modi spettacolari, strappando i tuoi divani e rovesciando la macchina fangosa, dipingendo tutto con un magenta brillante.

In uno 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 a risolverlo a livello micro . In altre parole, impara il web-stack in modo superficiale, necessario solo per hackerare insieme una soluzione a quel problema specifico.

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

Propongo una soluzione ibrida: in primo luogo, impara il web-stack. Non devi passare molto tempo su di esso, non devi essere come h4x0rz come quel quattordicenne di strada che può aggiungere glitter alle pagine di MySpace, devi solo avere una conoscenza di base di ciò che è sta succedendo. 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 ABBA: Greatest Hits in mostra con orgoglio. Ora se qualcosa si rompe, saprai come risolverlo. Adesso hai una scelta . E avere una scelta è sempre meglio che non avere una scelta.


1
È stato votato solo per avermi fatto ridere. È anche un buon consiglio.
Ed Hastings,

1
Ha votato per un buon consiglio. Mi ha anche fatto ridere.
rlemon,

2

Devi assolutamente positivamente ?

No.

Ma se vuoi un'app Web moderatamente moderna, probabilmente dovresti. Ci sono modi per aggirarlo, ma sono astrazioni di ciò che sta realmente accadendo. Se stai bene, allora provaci. In caso contrario, dovrai imparare la lingua.


1

un'app Web 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.

in questo modo ti concentri su ciò che già conosci bene e lasci che uno specialista faccia il front-end.
lo sviluppo del front-end è molto più difficile di quanto sembri inizialmente, ad esempio a causa del fatto che il front-end deve funzionare in molti browser diversi su diversi sistemi operativi.


1

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

Tuttavia, sembra che tu stia chiedendo framework che non invadano la scrittura di codice front-end. Posso riferirmi a quel sentimento. Sfortunatamente, ci sono pochissime tecnologie mature che astraggono quella roba (per una serie di buoni motivi).

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

In poche parole, quel framework tenta di rendere le app web incentrate sui widget in modo che, anziché scrivere modelli HTML, codifichi l'interfaccia utente come se fosse un'applicazione desktop. Utilizza alcune nuove tecnologie come i socket Web, migliora progressivamente e generalmente ti impedisce di dover fare molto front-end.


0

Frame come Spring e Play saranno perfetti per gestire la logica della tua applicazione, ma anche non eliminano la necessità di creare 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 lo stesso, tranne per il fatto che devi vestire i tuoi dati con HTML e CSS anziché con elementi della GUI desktop. Puoi imparare 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 l'origine HTML: avrai un'idea del modo in cui tali siti scorrono in termini di progettazione HTML.


0

Sì, per creare qualsiasi tipo di applicazione Web moderna è necessaria almeno una conoscenza di base dell'HTML e la competenza in JavaScript. L'uso di framework per un linguaggio come Python o Java è possibile e puoi costruire la maggior parte delle funzionalità del tuo sito usando loro, ma anche per un sito di base hai bisogno di un po 'di HTML perché è l'unica cosa che un browser in realtà comprende per visualizzare il contenuto. Puoi scappare senza conoscere JavaScript, ma ciò renderebbe il tuo sito molto meno intuitivo perché dovrai ricaricare le pagine ogni volta che desideri aggiornare qualcosa, inoltre perderai 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 quanto cambiano le cose nello sviluppo web, JavaScript non è cambiato da quando è stato implementato, inoltre c'è davvero solo uno che deve conoscere il framework JQuery che rende JavaScript molto più piacevole con cui lavorare. La maggior parte delle altre cose in rapida evoluzione è davvero il sapore del mese e non è necessario che sia conosciuta


0

Esistono framework di applicazioni Web che astraggono HTML e JavaScript, ma onestamente la cura è spesso peggiore della malattia. (ad es. Google Web Toolkit).

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


-2

L'HTML è la lingua del Web, quindi dovrai conoscerlo un po '.

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

Se stai costruendo un sito Web, consiglierei sicuramente 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 vale molto meno che se stai creando un sito web.


-2

Conoscere Javascript è un vantaggio in quanto ti aiuta a creare app Web. Penso che HTML sia il migliore per avere una buona conoscenza solida 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 tutti condotti gratuitamente ed esperti. Ho beneficiato personalmente del loro corso di formazione sullo sviluppo di app con HTML5. In bocca al lupo!


-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 lo hai sentito molto, ma è molto importante saperlo. Alcuni framework ti permetteranno di non usare (o non usare molto) HTML e JS, ma sono le basi del web. Se non vuoi imparare il codice, assumi qualcuno. E so anche che questo non era nella tua domanda, ma ho fatto molto questo errore cercando di creare Twitter e Gmail a cui ho pensato senza conoscere alcun codice e cercare su Google un tutorial.

Beh buona fortuna!


1
Questa domanda ha già 10 risposte, non ne ha avuto bisogno l'undicesima affermando le stesse cose con parole diverse. Per favore non aggiungere risposte a domande a cui è già stata data una risposta completa a meno che tu non abbia qualcosa di completamente nuovo da dire.
Martijn Pieters,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.