Vel, 2012 har kommet til slutt. En rekke gode opplæringsprogrammer og artikler ble publisert gjennom året, både her på Nettuts + og andre steder rundt på nettet. For å dokumentere året, samlet jeg en liste med seksti av de beste opplæringsprogrammene, måned for måned. Du vil sannsynligvis finne noen som du savnet underveis!
Noen ganger er det lett å bli overveldet av hvor mye det er å lære i denne bransjen. Hvis jQuery skjer for å være på din personlige "trenger å lære snart" liste, så sjekk ut Jeffrey Way kurs "Lær jQuery i 30 dager". Hvis du gir ham femten minutter om dagen i neste måned, hjelper han deg med å bli en jQuery-pro - og det er gratis!
.htaccess-filer brukes til å konfigurere Apache, samt en rekke andre webservere. Til tross for .htaccess filtype-utvidelsen, er de bare tekstfiler som kan redigeres ved hjelp av hvilken som helst tekstredigerer. I denne artikkelen vurderer vi hva de er, og hvordan du kan bruke dem i prosjektene dine.
Se opp HTML5, CSS3, etc-funksjoner, vet om de er klare til bruk, og hvis du finner ut hvordan du skal bruke dem - med polyfills, fallbacks eller som de er.
Før du utforsker JavaScript-rammer som hjelper til med å strukturere applikasjoner, kan det være nyttig å få en grunnleggende forståelse av arkitektoniske designmønstre. Designmønstre er dokumenterte løsninger på vanlige utviklingsproblemer og kan foreslå strukturelle paradigmer som hjelper oss med å legge til noen organisasjoner i vår søknad.
Steve Souders diskuterer effekten av nettsidenes hastighet på brukere som gir råd om å lage høykvalitets HTML5-applikasjoner.
Løfter er en spennende jQuery-funksjon som gjør det til en bris å administrere asynk-hendelser. De tillater deg å skrive klarere, kortere tilbakeringinger og holde applikasjonslogikk på høyt nivå atskilt fra lavt nivå atferd. Når du forstår løfter, vil du bruke dem til alt fra AJAX-samtaler til brukergrensesnitt. Det er et løfte!
Jeg har fått dette spørsmålet mye: "Hvordan fikk du terminalen din til å se på måten den gjør?" Hvis du har lagt merke til min terminal og er nysgjerrig på hvordan jeg setter det opp, er dette veiledningen for deg! Selvfølgelig vil det du lærer her være nok til å komme i gang med å skape din egen tilpassede ledetekst!
I denne artikkelen vurderer vi prosessen med å bruke JavaScript, fra et MVC-basert perspektiv, for å manipulere DOM. Nærmere bestemt vil vi konstruere våre JavaScript-objekter, deres egenskaper og metoder, og deres instanser parallelt med den hensiktlige oppførelsen av våre visninger (hva brukeren ser).
Jeg har brukt SASS for stort sett alt jeg gjør nylig. Her er noen musings på reisen. Fra hold-ups, til trip-ups, til turn-offs. Fra apper og lag til arbeidsflyt og syntaks.
getUserMedia
getUserMedia
er en API som gir en nettside tilgang til en brukers kamera og mikrofon via JavaScript. Den støttes i Opera 12 og Opera Mobile 12 for Android, og WebKit i Chrome Canary bygger (instruksjoner). Som mange andre APIer, er det ikke en del av den "ekte" HTML5-spesifikasjonen. Det startet livet som HTML5
I denne opplæringen skal vi se på å bygge en fullt funksjonell kontaktleder ved hjelp av Backbone.js, Underscore.js og jQuery. Vi tar en titt på de grunnleggende komponentene som gjør Backbone tick og noen av de bekvemmelighetsmetodene som er utsatt av Underscore. (Se hele sesjonen.)
I denne veiledningen vil jeg demonstrere hvordan du lager vintage (akkurat som Instagram gjør) bilder med PHP og ImageMagick. Vente? Hva? Ja, du kan gjøre dette veldig med PHP og ImageMagick, og det er bare å skrape overflaten!
ECMAScript 5 introduserte streng modus til JavaScript. Hensikten er å tillate utviklere å opt-in til en "bedre" versjon av JavaScript, der noen av de vanligste og egregious feilene håndteres annerledes. For en stund var jeg skeptisk, spesielt med bare en nettleser (Firefox) som i utgangspunktet støtter strenge modus. Helt frem til i dag støtter alle de store nettleserne strenge modus i sin nyeste versjon, inkludert Internet Explorer 10 og Opera 12. Det er på tide å begynne å bruke streng modus.
Her er gni: Når du laster inn JavaScript fra en tredjepart, bør du gjøre det asynkront. Du vil kanskje også laste inn dine egne skript asynkront, men for denne artikkelen la vi fokusere på tredjeparter.
Forutsetningene for prefikser gjør urealistiske krav til hvordan utviklere opprettholder nettsteder. Det er mye samtaler om at prefiks fungerer (ved å endre policy), men jeg tror at de allerede er i strid med utviklerens arbeidsflyt.
Lukker er ofte sett på som en arkanisk kunst i JavaScript-området. Når du har mestret, lar de deg skrive noen virkelig fantastisk JavaScript. Denne artikkelen vil gi deg fart på den magiske JavaScript-nedleggelsen.
Hvis du jobber med et stort prosjekt, vil du uten tvil ha et byggeskript eller en mengde oppgaveskript for å hjelpe deg med noen av de repeterende delene av prosessen. Du kan bruke Ant eller Rake, avhengig av hvilket språk prosjektet er skrevet inn. Men hva bruker du hvis prosjektet primært er JavaScript? Det er problemet Ben Alman satt opp for å løse da han opprettet Grunt.
Jeg er ganske sikker på at jeg ikke vil overraske noen her ved å si at CSS sprites har eksistert lenge siden, og oppdret sitt noe kontroversielle hode i webutviklingssfæren allerede i 2003.
Ettersom weblandskapet blir stadig mer komplekst, blir det ekstremt viktig å levere solide webopplevelser til et voksende antall sammenhenger. Heldigvis gir responsiv webdesign webdesignere noen verktøy for å lage layouter som svarer til hvilken som helst skjermstørrelse. Vi bruker fluidnettet, fleksible bilder og medieforespørsler for å få utformingen til å se bra ut, uansett størrelsen på enhetens skjermdimensjoner.
Jeg skrev en README om dagen for et prosjekt som jeg håper andre utviklere vil se på og lære av, og da jeg skrev det, innså jeg at det var en slags ting som kunne ha skremt helvete ut av meg en for noen år siden, hva med sine uformelle nevner av Node, npm, Homebrew, git, tester og utvikling og produksjon bygger.
Mange webutviklere bruker SSH ("Secure Shell") daglig for å administrere sine servere, sikkerhetskopiere filer, jobbe eksternt og et myriade av andre oppgaver. I dag skal jeg forklare hva SSH er, gjøre en kort historieoversikt, og til slutt lære deg hvordan du konfigurerer den på den eksterne serveren eller til og med ditt lokale nettverk. La oss komme i gang!
I åtte måneder hadde jeg muligheten til å praktisere med YUI-teamet på Yahoo, mens jeg fullførte ingeniørgraden min. I dag vil jeg gjerne dele de ti beste tingene jeg lærte av min erfaring med YUI.
Å bygge en perle pleide å være en kompleks oppgave som ville kreve enten en presis kunnskap om perleformatet, seg selv, eller noen dedikerte verktøy for å generere en passende boilerplate. I disse dager kan vi bruke den gode Bundler til å fjerne denne kompleksiteten og holde mengden generert kode til et minimum.
Vi har dekket PHP's PDO API noen ganger her på Nettuts +, men generelt fokuserte de artiklene mer på teorien, og mindre på applikasjonen. Denne artikkelen vil fikse det! For å si det klart, hvis du fortsatt bruker PHPs gamle mysql API for å koble til databasene dine, les videre!
Denne gangen lærer du om Adapter, Decorator og Factory mønstre.
JavaScript er et nysgjerrig språk. Det er lett å skrive, men vanskelig å mestre. Ved slutten av denne artikkelen vil du forhåpentligvis forvandle spaghetti-koden til et fem retters måltid, fullt av lesbar, vedlikeholdsbar yumminess!
I denne Nettuts + mini-serien bygger vi et webprogram fra grunnen, mens du dykker inn i et flott nytt PHP-rammeverk som raskt plukker opp damp, kalt Laravel - et enkelt og elegant PHP 5.3-rammeverk.
Fra tid til annen blir servere og databaser stjålet eller kompromittert. Med dette i bakhodet er det viktig å sikre at noen viktige brukerdata, for eksempel passord, ikke kan gjenopprettes. I dag skal vi lære det grunnleggende bak hashing og hva det tar å beskytte passordene i webapplikasjonene dine.
Klasser, klasser, klasser overalt. Hva om vi ikke trenger CSS klasser i det hele tatt? Hva om vi slutte å bekymre deg for hvor mange klasser vi bruker og hva vi skal kalle dem og bare ferdig med dem en gang for alle? Det ville ikke være noen åpenbaring for deg å si at HTML-elementer kan styles uten bruk av klassen attributtet, men har du vurdert de mange fordelene som kommer fra foregående klasser helt og holdent?
AngularJS er som den manglende Batarang på verktøyet belte av web utvikling awesomeness. Det gir deg toveisbinding som er både lett å bruke og raskt, et kraftig direktivsystem som lar deg bruke skape gjenbrukbare egendefinerte komponenter, pluss mye mer. Express er en utmerket webserver for Node.js som tilbyr ruting, mellomvare og økter. Forresten jobber de to ganske godt sammen!
Agile eller Agile Development - vi hører disse ordene oftere i disse dager. Men vet vi virkelig hva det handler om? Hvordan kan det hjelpe oss å bli mer effektive, mens vi har mye moro å utvikle programvare? Hvordan kan vi bruke den til å kommunisere med forretningsfolk og gjøre denne kommunikasjonen enkel og konstruktiv for begge sider?
En gang var det en fil. Det var på datamaskinen, og du ønsket å få det på en server. Noen gang lurt på hvorfor det er så mange måter å gjøre det på? Vi vil forklare noen av grunnleggende om distribusjon i denne artikkelen, slik at du forstår når du skal bruke hva. La oss komme i gang!
La oss innrømme det: PHP-fellesskapet har gått litt, når det gjelder å teste testdrevet utvikling. Vi vet at vi burde, men til og med i dag, gjør ikke en betydelig del av samfunnet det. I denne nye serien av videoer og opplæringsprogrammer, laget av Nettuts + -laget, håper vi å endre det. Stol på meg: det er ikke så tøft som du tror.
Lage spill i HTML5 Lerret er ikke så vanskelig når du lærer logikken til spillet du lager. I denne opplæringen lærer du hvordan du lager et ikke-så-grunnleggende ping-pong spill i lærred. Først av alt, la oss se på hovedkonseptet og noen grunnleggende logikk bak dette spillet.
I forrige uke var 7dfps utfordringen, en åpen utfordring hvor deltakerne måtte lage en FPS på bare en uke. Slike konkurranser er veldig veldig interessante for de som vil eksperimentere med ting. Utfordre deg selv er IMO den beste måten å lære nye ting på. Du kan også kjenne den kjente "Ludum Dare" -konkurransen. Jeg lærte å bruke Backbone.js og Three.js (et berømt bibliotek på toppen av WebGL) på bare en uke, så du har ingen unnskyldning for ikke å kunne gjøre det samme
Så du har akseptert utfordringen å gå tykk på klientsiden; bra gjort. Du har vurdert alle rammene der ute og er usikker på hvilken du skal velge? Du er ikke alene. Les videre.
Denne artikkelen vil hjelpe deg med å bruke Vagrant til å administrere de virtuelle maskininstansene dine, og forklare hvordan du kan dra nytte av marionetten for å tilby ulike ressurser, som PHP og PostgreSQL.
Eventdrevet programmering kan være overveldende for nybegynnere, noe som kan gjøre Node.js vanskelig å komme i gang med. Men ikke la det frata deg; I denne artikkelen vil jeg lære deg noen grunnleggende om Node.js og forklare hvorfor det har blitt så populært.
Det vanligste spørsmålet jeg får siden jeg postet min responsive navigasjonsmønster artikkel er: Hvordan håndterer jeg komplisert navigasjon for responsive design? "
I dag skal vi kombinere noen forskjellige verktøy og lage en enkel Nodepakke som lar en bruker søke i en katalog for filer. I denne opplæringen bruker vi Grunt til å gjøre mye av arbeidet for oss, se hvordan du kan lage et Nodeskript kjørbar på kommandolinjen, og endelig se hvordan vi publiserer den til Node Package Manager (npm) slik at alle kan installere den.
Organisasjonen kan gjøre eller ødelegge vedlikeholdet av et program. Med mindre applikasjoner er organisasjonen mer åpenbart tydelig; Men etter hvert som applikasjonen vokser, og etter hvert som antallet applikasjonsutviklere og frontend-ingeniører som produserer kode øker, kan den mer forvirrende organisasjonen bli. I dette innlegget vil vi gå over noen grunnleggende begreper for å holde applikasjoner organisert slik at det å finne relevant kode er en effektiv og systematisk prosess.
I denne skjermbildet bygger vi en relativt enkel klasse ved hjelp av TDD-teknikker. Underveis diskuterer vi ulike PHPUnit-metoder, hvordan du lager mock objekter og mer! Jeg oppfordrer deg til å jobbe sammen; det er den beste måten å lære på!
De fleste Backbone-veiledningene beskriver prosessen med å sende RESTful-forespørsler til serveren. Men hvordan fanger vi disse dataene med våre server-side rammer? Hvordan vet vi hva forespørselsadressene er? Hvordan overvåker vi disse forespørsler ved hjelp av Chrome Dev-verktøy? Jeg vil vise deg alt dette og mer i denne skjermbildet.
Når du tar den raske webdesignruten, er en del av avtalen flytende nett. Det vil si, beholderelementer angitt i prosentbredder. Bare ett eksempel: an
I denne to delserien skal vi se på Web Storage, en av de beste og mest interessante funksjonene som kommer ut av HTML5-spesifikasjonen. Vi ser på historien til både weblagring og informasjonskapsler.
JavaScript-testing er et følsomt emne. Noen utviklere er store fortaler for det (inkludert meg selv), mens andre ikke ser behovet eller nytte. En stor barriere er det enkle faktum at det noen ganger kan ta en betydelig mengde oppsett for å komme seg opp. Jo lengre det tar, desto mer sannsynlig er det at utvikleren bare ikke vil bry seg. Det er derfor Testem er så fantastisk; det gjør testing så uanstrengt som mulig, og enda viktigere, morsomt!
Et av de mange designmålene til JavaScript-språket var å holde det enkeltrådet og, i forlengelse, enkelt. Selv om jeg må innrømme at det er alt annet enn enkelt, med tanke på språkkonstruksjonens idiosyncrasjoner. Men hva vi mener med å være "single-threaded" er at det er bare én tråd av kontroll i JavaScript; Ja, dessverre, JavaScript-motoren din kan bare gjøre én ting om gangen. Nå høres det ikke for begrensende å gjøre bruk av multi-core prosessorer som ligger i tomgang på maskinen din? HTML5 lover å forandre alt dette.
Det har vært en ujevn tur, med hensyn til navneplassstøtte i PHP. Heldigvis ble det lagt til språket i PHP 5.3, og den aktuelle strukturen i PHP-koden har forbedret seg sterkt siden da. Men hvordan bruker vi dem akkurat?
Jeg har sett mange kamper når de først møter Backbone.js. I dette blogginnlegget vil jeg gradvis refactor litt kode fra hvordan jeg pleide å skrive JavaScript før, inn i riktig Backbone.js-kode ved hjelp av modeller, samlinger, visninger og hendelser. Forhåpentligvis vil denne prosessen gi deg en solid forståelse av kjernen abstraksjoner i Backbone.js.
Validerende skjemaer har notorisk vært en smertefull utviklingserfaring. Implementering av klientsiden validering på en brukervennlig, utvikler vennlig og tilgjengelig måte er vanskelig. Før HTML5 var det ingen måte å implementere validering innfødt på; Derfor har utviklere tatt seg til en rekke JavaScript-baserte løsninger.
Uavhengig av vårt nåværende ferdighetsnivå, var vi alle nybegynnere på et tidspunkt. Å gjøre klassiske nybegynnerfeil kommer med territoriet. I dag har vi bedt om en rekke Nettuts + -personellforfattere til å chime inn med sin liste over fallgruver og løsninger - på en rekke språk. Lær av våre feil; ikke gjør disse tingene!
Å være et rent funksjonelt språk begrenser Haskell deg fra mange av de konvensjonelle metodene for programmering i et objektorientert språk. Men tilbyr begrensende programmeringsalternativer oss virkelig noen fordeler over andre språk? I denne opplæringen tar vi en titt på Haskell, og forsøker å avklare hva det er, og hvorfor det bare kan være verdt å bruke i fremtidige prosjekter.
Jeg tror ikke jeg må overbevise deg om at det å teste JavaScript-koden din er en god ide. Men det kan noen ganger være kjedelig å teste JavaScript-kode som krever et DOM. Dette betyr at du må teste koden din i nettleseren og ikke kan bruke terminalen, ikke sant? Feil, faktisk: skriv inn PhantomJS.
Denne uken var jeg planlagt å gi en helt ny samtale på YUIConf, JavaScript APIer du aldri har hørt om (og noen du har). Dessverre betyr en planleggingskonflikt at jeg ikke vil kunne delta. Så i stedet for å la arbeidet med å sette sammen et merke- = nytt samtal gå til spill (eller på annen måte bli forsinket) bestemte jeg meg for å sette sammen en skjermbilde av samtalen.
Mitt daglige liv blir brukt til å jobbe internt hos BSkyB ... Jeg jobber på store nettsteder, hvorav sist tok meg over et år for å bygge frontendens for (og det er fortsatt i gang). For meg, i min verden er dårlig CSS en veldig spesifikk og plagsom ting; når du jobber på ett nettsted i flere måneder, har du ikke råd til dårlig kode, det være seg CSS eller på annen måte, og noen dårlig kode trenger rettet.
Det er vanlig at en klient sender en forespørsel om en fil som enten ikke finnes på serveren, eller eksisterer på en annen plassering. Dette kan oppstå av flere årsaker. Du kan flytte filene dine rundt serveren (eller til en helt annen server), eller du vil kanskje presentere en logisk filsystemstruktur for å koble kunder.
Verktøy kan gjøre arbeidsflytene våre sømløse, slik at vi kan fokusere på det vi bygger, og ikke bekymre deg for prosessen. De fleste webutviklere, på alle deler av stabelen, arbeider fra kommandolinjen. Det finnes utallige verktøy som kan gjøre deg mer produktive. Dette er ikke fullblåste kommandolinjeprogrammer, for eksempel Git, men ganske enkle og kompositte verktøy, som kan forbedre arbeidsflyten din som en webutvikler.
Dependensinjeksjon har vært en hyppig gjenstand for diskusjon blant mange bedriftsutviklere de siste årene. Mange fryktet at de kanskje ofrer for mye tid på å bygge deres applikasjonsarkitektur uten å gjøre noe virkelig arbeid. I denne artikkelen skal jeg forklare hvorfor PHP-utviklere bør vurdere å utnytte avhengighetsinjeksjon, når de bygger store, skalerbare prosjekter.
Programmerer som meg er ofte skremt av design - men en liten innsats kan gi en stor avkastning på investeringen. Her er en kodes tips for at et hvilket som helst nettsted raskt ser mer profesjonelt ut. Jeg er en programmerer. Jeg er ikke en designer. Jeg har en grad i datavitenskap, og jeg har ikke noe imot Comic Sans. (Det ser glad ut.) Fortsett.)
Har du noen gang hatt en ekstern terminal økt kjøring, bare for å få forbindelsen din slippe halvveis gjennom en stor oppgave? Deretter kobler du igjen, vet ikke noe om fremdriften (hvis noen er) og nåværende status. Skjermen er løsningen på dette problemet. Skjermen lar deg starte terminal økter som du kan koble fra og fortsette når som helst.
Vel, det er min liste over 60 gode tips og opplæringsprogrammer fra 2012. Du har sannsynligvis noen favoritter av dine egne; la oss høre dem i kommentarene!