Quali sono considerati i riferimenti definitivi per l'avvio della propria esperienza lato client? [chiuso]

3

Sono un drogato lato server, e con ciò intendo che passo il tempo a scrivere codice che non è visibile a nessuno.

Sono interessato a completare il mio skillset e diventare più autosufficiente con la scrittura di applicazioni web a stack completo.

Ma trovo difficile lavorare con il tipo di "organicità" della tecnologia html lato client.

So che non c'è alcun sostituto per il tempo e l'esperienza, ma se un esperto del lato client stava ricominciando da capo, cosa avrebbe letto / fatto?

EDIT: un esempio di risposta che darei per il lato server:

Learn the best practices of the language you're working in, eg. for java, read 'effective java'. Learn fundamentals of algorithms, application design concepts that are useful in any language, two good sources are 'design patterns', 'SICP'.

Non sto cercando: "Impara CSS, HTML e Javascript."

Sto cercando qualcosa del tipo:

Intent, rationale, concepts of X are well-explained in Y. Framework Z is a good example and the source-code is enlightening and well-documented.

    
posta gtrak 13.06.2013 - 19:18
fonte

3 risposte

2

CSS e HTML sono banali da imparare. Un programmatore competente può raccogliere la sintassi in 15 minuti e apprendere le basi dell'HTML in altri 30.

È molto importante conoscere e comprendere il modello di scatola. Questo è il metodo utilizzato dal browser per rendere DOM . Detto questo, dovresti probabilmente leggere la pagina di wikipedia per DOM .

Successivamente, impara JavaScript. Vorrei iniziare con JavaScript: The Good Parts. Imparerei anche a usare e capire jQuery: è la libreria JavaScript più diffusa per una ragione. Dovrai anche capire le basi del modello del modulo e capire come funziona RequireJS e perché è così utile.

Una volta che conosci quelle nozioni di base, ti consigliamo di iniziare a imparare cose come i rifacimenti, forse il tag canvas, ecc.

    
risposta data 13.06.2013 - 20:32
fonte
2

Buona lettura per un'introduzione alla DOM generale: DOM Scripting - la roba di codice sarà un po 'di base per un programmatore esperto, ma vale la pena leggere l'IMO

Le best practice che vale la pena prendere molto sul serio:

Separazione di contenuto / struttura, presentazione e comportamento. Mantieni il tuo HTML, CSS e JS separati il più possibile tramite hook piuttosto che scaricare JS inline in tag di script, CSS in tag di stile e attributi di stile e gestori di eventi in linea nel codice HTML. Rende molto più facile pensare e lavorare.

HTML semantico - fondamentalmente usa l'HTML per descrivere il più possibile il contenuto. Evita wrapper e tag inutili usati semplicemente per spingere il layout. Non ti uccidere per questo, ma mantenere l'HTML minimo e appropriato rende più facile la lettura e il debug. Il vantaggio per l'accessibilità e il SEO sono solo effetti collaterali piacevoli rispetto alla facilità di sviluppo.

La vera padronanza dei CSS è in realtà piuttosto spaventosa e anche molti stilisti non si preoccupano di farlo. Probabilmente non vorrai perdere tempo a meno che i problemi di layout o l'interfaccia utente non ti interessino davvero profondamente. Ma prestate molta attenzione alla visualizzazione e alla posizione delle proprietà e al modo in cui il radicamento dei genitori assoluti varia a seconda di quali schemi di posizionamento sono impostati sugli antenati (molto utile). Imparare la schifezza dei CSS è un vantaggio competitivo importante nell'interfaccia utente. Anche quando si passa a più ruoli di tipo di progettazione dell'interfaccia utente e JavaScript sul lato client. Essere bravi elimina un sacco di JavaScript.

JS stesso è molto diverso dalle lingue più popolari. Il successo e la capacità di adattarsi a una vasta gamma di piattaforme è in gran parte dovuto a questo. Se sai qualcosa con la sintassi basata su c non aspettarti che si comporti allo stesso modo. Usare le funzioni di prima classe, le chiusure e imparare ad adattarsi a un linguaggio altamente mutevole sono abilità critiche, ma per fortuna è abbastanza facile armeggiare e fare in modo che le cose possano essere utilizzate in modo abbastanza rapido. jQuery può essere molto utile con tutte le cose del DOM, ma non lasciare che capisca come è fatto con vanilla JS e l'API DOM che è tutto ciò che jQuery usa sotto il cofano.

Ma se stai cercando "c'è solo un modo per farlo bene" non lo troverai mai sul lato client. I problemi sono troppo diversi e troppo complessi. Non puoi mai smettere di imparare neanche. Il giorno che fai, è l'inizio della settimana che le tue abilità sono diventate improvvisamente obsolete.

Penso che ci sia più valore nella guida definitiva di O'Reilly rispetto alle Good Parts personalmente. Sono sicuro che almeno 3 persone hanno raccomandato che ormai però. Non è una cattiva lettura. Viene semplicemente menzionato in una qualsiasi domanda simile a distanza e Crockford interpreta JS non con cui sono d'accordo al 100%.

    
risposta data 16.06.2013 - 07:40
fonte
1

Recentemente ho iniziato a lavorare con i linguaggi web sul lato client. Ho avuto alcune esperienze HTML4 e CSS2 di base, ma non molto oltre. Ho iniziato a lavorare con Javascript utilizzando il link . Knockout.JS è una libreria javascript che mi ha fornito un rapido corso accelerato in Javascript, programmazione orientata agli oggetti e il modello di progettazione Model-View-View-Model (che porta al pattern Model-View-Controller per un paio di .NET. progetti). I mini esempi del tutorial ti conducono in diretta sul loro sito web mi hanno dato idee su come espanderli aggiungendo altre librerie per funzionalità aggiuntive (jQuery) o altri linguaggi (C #).

    
risposta data 13.06.2013 - 20:25
fonte

Leggi altre domande sui tag