Come si fa a frenare le complessità dello sviluppo web? [chiuso]


17

Sono stato un programmatore lato server per la maggior parte della mia carriera e solo di recente ho iniziato a dedicare più tempo allo sviluppo web. Sono sorpreso dal numero di cose che devo padroneggiare per scrivere un'applicazione web decente. Solo per elencare alcuni strumenti / tecnologie che devo imparare,

  • Linguaggio di programmazione lato server (Java / JSP, ASP, PHP, Ruby o qualcos'altro)

  • Un framework Web decente (per qualsiasi applicazione di medie e grandi dimensioni).

  • HTML e CSS

  • Javascript

  • Libreria Javascript (JQuery / ExtJS ecc. Principalmente per AJAX). Buono a sapersi anche se non necessario.

  • Almeno una conoscenza di base del web design - layout, colori, caratteri ecc.

  • Una buona conoscenza della sicurezza web.

  • Una buona conoscenza dei problemi di prestazioni / scalabilità.

  • Test, problemi di compatibilità del browser ecc.

L'elenco continua.

Quindi, la mia domanda agli sviluppatori web esperti è: come riuscite ragazzi ad imparare e tenervi aggiornati su così tante cose? Durante lo sviluppo di un'applicazione Web, come gestite le complessità coinvolte in queste aree e riuscite a scrivere un'applicazione ben progettata, intuitiva, sicura, performante e scalabile.

Come sviluppatore web, uno deve essere un tuttofare o dovrebbe specializzarsi in una o due aree e lasciare il resto agli altri membri del team?


All'inizio le cose nuove sono difficili. Non lasciarti deridere. renditi conto che non sarai in grado di competere con sviluppatori esperti ed esperti e fai solo del tuo meglio. Espandi le tue abilità nel tempo, se necessario. Tutti questi strumenti cambiano così velocemente che devi essere uno studente per tutta la vita per sopravvivere in sviluppo. Quello, o ottenere la programmazione "fortunata" in assem. per 20 anni.
P.Brian.Mackey,

Risposte:


9

Linguaggio di programmazione lato server (Java / JSP, ASP, PHP, Ruby o qualcos'altro)

Usa un framework. Django, per esempio.

Un framework Web decente (per qualsiasi applicazione di medie e grandi dimensioni).

Non "medio-grande". Usa un framework per tutto .

HTML e CSS

È quello che è. Imparalo.

Javascript

Utilizzare le librerie e i framework il più possibile. Scrivi di meno, riutilizza di più.

Libreria Javascript (JQuery / ExtJS ecc. Principalmente per AJAX). Buono a sapersi anche se non necessario.

Corretta. Usa una biblioteca.

O.

Usa FLEX.

Almeno una conoscenza di base del web design - layout, colori, caratteri ecc.

Copia siti esistenti.

Una buona conoscenza della sicurezza web.

Leggi www.owasp.org con attenzione. E. Utilizzare un framework che faccia questo.

Una buona conoscenza dei problemi di prestazioni / scalabilità.

Usa Apache. Utilizzare un framework che gestisce questo. Leggi le architetture scalabili di Internet di Schlossnagle.

Test, problemi di compatibilità del browser ecc.

Framework. Biblioteche.

C'è un trucco per questo. Usa quante più librerie e framework puoi. Il web esiste da anni.

Stare sulle spalle dei giganti. Per favore. Non è necessario reinventare tutto questo.


È vero, non dovresti reinventarlo tutto come uno sviluppatore esperto che abbia familiarità con tutti i framework e gli strumenti. Ma sballare tutti questi strumenti come un nuovo ragazzo aumenta solo la barriera all'ingresso. Dovrebbe fare javascript di base e come un principiante per ridurre questa barriera. Ma, dal momento che l'OP ha chiesto come fa un "dev esperto" a fare le cose, non posso fare un ping a -1 per questo.
P.Brian.Mackey,

5

In che modo riuscite a imparare e a tenervi aggiornati su così tante cose?

Suggerimento 1 . Tieni gli occhi aperti su tutte le cose che stanno accadendo là fuori. Ascolta ciò di cui la gente parla, controlla le cose, leggi articoli e blog, aggiungi ai segnalibri ciò che è importante, impara, sperimenta, resta naturalmente curioso di tutto.

Suggerimento 2 . Assolutamente divertiti nel processo.

Suggerimento 3 . Come qualcuno ha sottolineato su SO una volta, le cose che hai elencato si riferiscono alla conoscenza collettiva di molti sviluppatori. Non aspettarti di sapere tutto alla perfezione, è troppo da gestire per una sola mente. Prendi ciò di cui hai bisogno e sappi dove trovare il resto.

Come sviluppatore web, uno deve essere un tuttofare o dovrebbe specializzarsi

È meglio essere esperti in diverse aree. La particolarità dello sviluppo web è che improvvisamente unisce tutti gli aspetti dello sviluppo del prodotto in un unico posto in una sola mano. Devi inevitabilmente essere consapevole di molte cose per farle spuntare. Ma seriamente, è tanta gioia avere le dita ovunque!


2

Non hai sempre una squadra, almeno nel mio caso. Quindi essere un "tuttofare" è utile.

Ma non devi / non saprai tutto, quindi sii bravo a cercare su Google.

Svilupperai le abilità di cui hai bisogno.


Sì, all'inizio sembrava così difficile.
Biscotti di farina di riso,

1

Ci sono nozioni di base che devi conoscere: HTML, CSS, markup semantico, cosa fa HTTP e come sfruttarlo al meglio.

Quindi guardi ciò di cui hai bisogno per questo progetto, qualunque sia il progetto attuale. Probabilmente ciò comporterà l'avvio con una piattaforma o un CMS esistente e la sua personalizzazione, a volte del tutto su misura, ma più spesso no. A volte ci saranno requisiti relativi a dove e come è ospitato che ti guideranno sulla piattaforma giusta, altre volte la funzionalità che desideri guiderà l'hosting che puoi usare. Impara ciò di cui hai bisogno quando ne hai bisogno. È un po 'lento come modo di lavorare, ma finisce per essere il modo in cui la maggior parte di noi è diventata brava in ciò che facciamo - progetto per apprendimento del progetto, ciò che avevamo bisogno di sapere.

Ovviamente, più lavori in compagnia di sviluppatori web più esperti, più velocemente puoi imparare da loro, ma nel complesso la maggior parte di noi ha acquisito queste abilità a pezzi nel tempo.


1

Cerco di conoscere abbastanza tutte le tecnologie attuali in modo da poter sapere quando dovrebbero essere applicate. Ad esempio, sono principalmente uno sviluppatore ASP.NET, ma so abbastanza per Ruby su Rails per capire se è più adatto per un problema particolare.

Le tecnologie che sto effettivamente usando cerco di conoscere dentro e fuori. Se esiste una caratteristica particolare in ASP.NET, voglio conoscerla in dettaglio e sapere quando dovrei e quando non dovrei applicarla. Lo stesso vale per JQuery, CSS e tutto il resto che uso.

Per tenermi aggiornato ascolto i podcast, mi iscrivo ai feed RSS, sfoglio StackOverflow e partecipo agli eventi degli sviluppatori.


1

Inizia in modo semplice con .NET o JEE / JSF. Non è necessario eseguire il primo progetto nel modo più duro. Salva quella complessità per quando ne hai davvero bisogno.

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.