Programmering for nybegynnere - hvor skal du ta det første steget. Hvordan begynne å tjene penger som webprogrammerer i et svært konkurranseutsatt miljø

God dag, kjære leser! Hvis du er interessert i hvordan nettsider fungerer, hvis du er ivrig etter å lære å lage moderne internettprosjekter selv, så trenger du kunnskap om hvordan de samme nettsidene lages. Selvfølgelig kan du klare deg med ferdige alternativer (ucoz-systemet eller cms-systemer som joomla eller wordpress). Det er imidlertid alltid mer interessant å skrive nettsidekoden selv, fordi dette er den eneste måten store prosjekter som Facebook blir levendegjort på. Derfor vil du ikke kunne klare deg uten en webprogrammeringsveiledning.

Ingen mengde forberedelser vil hjelpe her, fordi... For å lage et virkelig originalt verk, må du skrive koden selv. Derfor bestemte vi oss for at det ville være interessant for deg å finne ut hvem det er verdt å lære detaljene med webprogrammering av, slik at så snart som mulig mestre denne fantastiske teknologien - lage moderne nettsteder.

Mest sannsynlig hvis du er interessert denne artikkelen, da er du allerede kjent med html-teknologier og css. Dette er to grunnleggende ting, uten å vite hvilke vil du rett og slett ikke ha noe å gjøre i webprogrammering. Det er på grunnlag av disse sammenkoblede tingene at alle nettsider i verden er bygget.

Hva, vet du ikke hva det er? Er dette første gang du hører om dette? Men du har et stort ønske om å lære å lage moderne nettsider, da er ikke dette et problem! Finnes nå på Internett stor mengde tematiske sider, ulike videokurs m.m. med html og css.

Hvis du vil lære disse teknologiene, så ta en nærmere titt på Evgeniy Popovs kurs. Våre faste lesere er allerede kjent med det fra artikkelen: Å lære gjennom videokurs er den beste måten å lære nye ting på! Dette er en mann som skapte seg selv og sin nettvirksomhet fra bunnen av. Vi respekterer slike mennesker veldig mye. Evgeniy er virkelig flott!

La oss imidlertid gå tilbake til temaet webprogrammering. Etter at du har fullført kursene i html og css, så kan du trygt legge ny kunnskap til bagasjen - kunnskap om webprogrammering.

For de som ennå ikke har forstått, er html- og css-teknologier langt fra programmering. Dette er enkle arbeidere, i menneskelige termer. Men de (den teknologien) som får disse arbeiderne til å bevege seg i riktig retning, er allerede webprogrammering.

Finnes stort antall forskjellige språk akkurat denne webprogrammeringen, men vi anbefaler deg å begynne med PHP språk(Hypertekstforbehandler).

PHP er moderat enkelt, og viktigst av alt, det er tilgjengelig for enhver nybegynner som aldri har gjort programmering før. Du er en sånn person, er du ikke? Alle som allerede har erfaring med webutvikling ville sannsynligvis ikke lest denne artikkelen.

Selv fra navnet på språket ser det ut som om det er "forbehandler" (forut for handlinger), dvs. i hovedsak er PHP en leder som kommanderer sine underordnede (html og css) slik at de gjør akkurat det som trengs for at nettstedet skal fungere fullt ut.

Nå kommer vi til det mest spennende øyeblikket i denne artikkelen: hvor kan man få ny kunnskap for å lære denne PHP? Som vi gjentatte ganger har skrevet på sidene på dette nettstedet, er det mest grunnleggende kunnskap En bok kan gi deg informasjon om absolutt alle emner. Imidlertid er det mange bøker, hvilken å velge, jeg er helt ny i verden av nettstedbygging, ikke sant? Dette forstår vi veldig godt.

Hvordan velger vi vanligvis bøker for våre lesere? Først av alt ser vi på forfatteren. Hvis forfatteren er en person som har nådd visse høyder innen sitt felt, anbefaler vi våre lesere å lese manuskriptet hans. Tross alt, bare ved å lære av de beste kan du bli en virkelig profesjonell innen ditt valgte felt!

Derfor har vi valgt boken av Koterov, Kostarev - PHP 5 i originalen for deg. Dette er virkelig et mesterverk, spesielt for nybegynnere.

Forfatterne skrev boken i et slikt format at enhver leser, uavhengig av kunnskap om nettteknologi, kunne forstå hva som står i boken, og viktigst av alt, anvende den ervervede kunnskapen i praksis.

Selv om du ikke er en programmeringsfanatiker, anbefaler vi deg likevel å lese noen kapitler fra denne boken. Hvorfor? Ja, for snart vil Internett rett og slett være overalt. Uten å vite hvordan hele denne greia fungerer moderne verden du kommer ikke langt. Foreldrene dine kan ganske enkelt rote rundt på sidene på nettstedet, uten å vite hvordan alt fungerer der. Du er en moderne person som fortsatt har tid til å leve i en tidsalder med høy informasjonsteknologi.

[ Å lære webprogrammering er en morsom aktivitet som bare fengsler noen få utvalgte! ]

Tross alt, forstår du, dette er bare begynnelsen. Steve Jobs og Bill Gates ble rik på datamaskiner fordi... i sin tid utviklet dataindustrien seg veldig raskt. Nå har internettbransjen tatt stafettpinnen fra henne. Derfor er vi ikke i tvil om at hvis du begynner å lære detaljene med nettteknologi i dag, vil du lage et produkt som vil gi deg penger i en endeløs strøm.

La oss nå ta en titt inne i boken. Hva er der. Det er 1200 sider (dette er fortsatt ikke nok) med god tekst med vitser som ikke lar deg kjede deg mens du leser dette veiledning for nettprogrammering. De aller første kapitlene forteller om grunnlaget for Internett, hvordan det fungerer (det er dette vi anbefaler å lese om for de som ikke ønsker å koble livet med nettprogrammering, men ønsker å være bevisst på hvordan hele denne greia fungerer).

Så er det mer utdypende ting som innledende deler om PHP, ca PHP-interaksjon med databaser osv. På slutten av boken mest Hi-tech nettstedsbygging som harmonisk fullfører opplæringen din i vitenskapen om webprogrammering.

Du bør imidlertid ikke tro at denne opplæringen vil gi deg svar på alle spørsmålene dine. Nei, selvfølgelig, dette er bare et introduksjonssteg inn i en verden av nettstedbygging, som er fascinerende og ukjent for mange mennesker. Men hvis du mestrer denne boken fullt ut, vil du ikke ha noen problemer med å lære andre nettteknologier. Boken av Koterov og Kostarev "PHP 5 i originalen" er en utmerket base som du allerede kan lage et godt nettsted med. Stopp imidlertid aldri der! Forbedre deg selv hver dag.

Så en dag vil du være i stand til å skape noe som vil bli kjent for hele verden. Valget er ditt. Du kan studere PHP og andre lignende teknologier, eller du kan ligge på sofaen. Det er opp til deg å bestemme!

Til slutt ønsker vi å henvende oss til mer avanserte lesere, hvis det er noen blant publikummet vårt, med et spørsmål: hvilken veiledning vil du anbefale? Kanskje du lærte av verkene til en annen forfatter. Vi tror leserne våre vil være veldig, veldig interessert i å lære om alternative kilder grunnleggende informasjon om webprogrammering.

Studer i det minste noe, bare ikke ligg på sofaen!

Fra forfatteren: det meste populær forespørsel for nybegynnere utviklere er "nettutvikling hvor du skal begynne." Faktisk er det nesten umulig å uavhengig bestemme utgangspunktet for læring. Kulen er fylt stort beløp forskjellige verktøy, noe som betyr at det krever et helt sett med ferdigheter. Vi hjelper deg med å finne ut i hvilken rekkefølge du skal mestre å jobbe med programvare og språk for nettet, slik at du på kortest mulig tid kan kalle deg utvikler.

Det er verdt å starte!

Hvis du hadde spurt en erfaren programmerer på begynnelsen av 2000-tallet om hva som var det mest interessante å studere, ville han uten å slå et øyelokk ha sagt: «programvareutvikling». På den tiden var mengden arbeid i denne retningen virkelig stor: det var nødvendig å lage hoveddelen OS, antivirus, nettlesere og spillmotorer. I dag fortsetter alt dette sin utvikling, men i sentrum oppmerksomhetsnett.

Å lage nettprodukter er interessant for nybegynnere. Dette er hva de ser hver dag: sider og applikasjoner. Bruken deres er aktiv, noe som betyr at slike spesialister er påkrevd av markedet. I tillegg er læring nå tilgjengelig for alle som har Internett - det er ikke lenger behov for å jobbe med matriser av informasjon i biblioteket.

Nettutvikling tiltrekker mennesker med et kreativt sinn. Det er både programmerere og artister her. Et produkt trenger en kvalitetskjerne - samt et attraktivt utseende. Det er fortsatt aktiv debatt om hva som er viktigere for et nettprodukt: utseende eller ytelse. Og hvis noen (Telegram, Facebook) viser at selv en enkel visuell del blir godt oppfattet av brukeren, så viser andre (Instagram) at noen ganger er brukeren villig til å betale hastighet for en vakkert designet applikasjon.

Du må også bli nettutvikler fordi hver tilnærming har sin egen applikasjon. Dette er en verden med konstant utvikling og søk. Alt her er fokusert på kunden og hans behov. Dessuten etter å ha fått erfaring i nettmiljø, kan du også engasjere deg i programvareutvikling: språk og verktøy har blitt vanlige for denne typen utvikling.
Frontend eller backend?

Selv de som begynner å studere feltet fra bunnen av vet at det er disse to hovedretningene i utviklingen. Men få mennesker vet hva hver av dem betyr. Og hvis alt er mer eller mindre klart på "fronten", så er serverdelen, backend, innhyllet i mørke for dummies. Uten en grundig forståelse av hver av utviklingsvektorene, er det umulig å bestemme hvilken av dem du vil være mest komfortabel med. Detaljert gjennomgang kan avklare for nybegynnere.

Slik kan vi generelt karakterisere hva det vil si å lage et produkt for nettet. Nei, vi insisterer ikke på at en nybegynner må velge ryggen, det er bare at dette er en mer mystisk side.

Faktisk er måten de fleste elementene er konstruert i deres visuelle del generelt klart for alle. Men hva slags magi som får den til å laste funksjonelle elementer som trengs i et bestemt øyeblikk, er ikke klart for alle. Denne magien på nettverket styres av serversiden: informasjon som behandles på serveren, ikke på brukerens maskin.

En utviklet backend er typisk for dynamiske nettsteder. For eksempel, sosiale medier- dynamisk. De oppdaterer siden din uten at du merker det og genererer HTML-kode for nettleseren basert på ulike faktorer: fra bevegelsen av markøren til begynnelsen av en bestemt tidsperiode.

Ved registrering velger du et kallenavn. Og hvis det er opptatt, varsler systemet deg om dette: backend har begynt å fungere. I henhold til den foreskrevne algoritmen ble dataene du skrev inn i feltet til nettsiden sendt til serveren. Der sjekker programmet alle registrerte brukere mot databasen og sender, dersom navnet er tatt, informasjon om dette til brukeren på skjermen. I en mer sofistikert versjon tilbyr et spesialskrevet program brukeren ulike varianter av kallenavnet som kan brukes.

Og dette er bare et eksempel: det er mest forståelig for nybegynnere. Generelt kan serversiden utføre et ubegrenset antall funksjoner. Utvikleren, som lager et produkt fra bunnen av, bestemmer hvilke funksjoner som skal utføres av serverens kraft og hvilke som vil falle på skuldrene til brukermaskinen. Mye avhenger av tjenesten som webmaster lager.

For eksempel mest populær app for samkjøring er BlaBlaCar avhengig av backend mer enn alle visittkortsidene til sammen. Et stort team av utviklere samhandler med serversiden, mens grensesnittet er forståelig, selv for nettdukker. Det er ikke bare nødvendig å formalisere hele forespørsel-svar-prosessen. Men lag også mobil- og skrivebordsapplikasjoner for hver plattform.

De som er mer tilbøyelige til programmering velger vanligvis "tilbake". Det kan være kjedelig for nybegynnere som drømte om å lage gode bilder og sideoverganger. Men spesialister på denne siden av utviklingen har sin egen fordel: stabilitet. Etter å ha lært en viss teknologi kan de bevæpne seg med den i mange år, mens fronten er et konstant kappløp med tiden.

Språk som brukes til dette nettsider, kalles vanligvis serverside-språk. Noen av dem brukes generelt i programmering, men på grunn av deres popularitet blant webutviklere har de blitt assosiert spesifikt med vedlikehold av webprodukter. Blant dem:

PHP, som fikk sin popularitet på grunn av sin enkle læring. Til tross for kritikk fra utenforstående, er den fortsatt den mest brukte;

Javascript og dets modifikasjoner;

Ruby, som fødte et av de mest kjente rammeverkene - Ruby on Rails;

I virkeligheten er ikke språket du velger å lære så viktig. Tross alt er hver av dem godt egnet for samhandling med serveren. I tillegg til dem vil det være nyttig å lære søkespråket. Den mest kjente og brukte er SEQUEL, eller SQL. Likhetene mellom disse språkene er sterke. Så etter å ha lært en, vil det ikke være vanskelig å tilpasse seg operasjoner med den andre.

Moderne tendenser og tilnærminger innen webutvikling

Lær algoritmen for rask vekst fra bunnen av i nettstedbygging

Dette språket er nødvendig for å kommunisere med databaser - det er akkurat det som kan gjøres rask app, som bruker store mengder data. Det meste populære systemer databasebehandling er MySQL, MSSQL, MariaDB og andre. Det er vanskelig å si hvilken som er best, men MySQL har fått mest popularitet. Evnen til å samhandle med databaser er avgjørende for en webapplikasjonsutvikler; dette gjelder både front-end og back-end spesialister. Herre viktige punkter ikke vanskelig, men faglig kunnskap krever erfaring med å løse spesifikke oppgaver.

Ikke av design alene

...kan beskrives som frontend, til tross for at det er slik nybegynnere forstår klientsiden. Til en viss grad har de rett, fordi de fleste av front-end-utviklerens aktiviteter har det synlig for brukeren grensesnitt. Han er imidlertid ikke bare ansvarlig for design, men også for interaktiv brukeropplevelse.

Tegn - ikke kode

Fronten har to hovedvekter for utvikling: designere og layoutdesignere. Hvis du liker kreativitet og oppsett, kan du begynne å lære det grunnleggende om webdesign. Først av alt, installer grafikk editor, For eksempel, Adobe Photoshop. Det finnes mye undervisningsmateriell på dette området, og det er av høy kvalitet. Brorparten er rettet spesielt mot dummies.

Umiddelbart etter installasjon av PS vil funksjonaliteten og grensesnittet virke uvennlig for deg, og verktøyene vil være vanskelige å bruke. Å jobbe med programmet krever faktisk visse ferdigheter. Men for det første er det ikke så vanskelig som det ser ut til, og for det andre det fulle potensialet Photoshop-funksjoner du trenger det ikke. Det finnes kurs på YouTube som spesialiserer seg på webproduktmodeller. Velg dem for trening!

Hvis vi snakker om kasten til layoutdesignere, er deres oppgave å gjøre layouter til kode som nettleseren forstår - HTML. Men det vil ikke være nok for deg. Det vil ikke ta deg mer enn to dager å mestre hypertekstspråket hvis du studerer hardt, og like mye mer til Grunnleggende om CSS, som gjør nettstedet fargerikt. Det er ikke som programmeringsspråk - det er som om det er laget for en nybegynner.

Hvis vi snakker om programmeringsspråket, er det Javascript for front-end-utvikleren. Og det ville vært flott hvis det ikke var for kappløpet med tiden som vi nevnte ovenfor. Takket være det må en moderne webutvikler jobbe med to standarder samtidig: den femte og sjette ECMAScript. Nye produkter er skrevet i bind 6, men en rekke produkter bruker fortsatt bind 5. Du må forholde deg til hver enkelt.

For noen år siden var en viktig ferdighet evnen til å skrive kode på tvers av nettlesere. Kort fortalt betyr dette å skrive et Javascript-program som vil kjøre godt på store nettlesere. Tidligere har produsenter av programvare for å surfe på nettet konkurrert om hvem sin teknologi som ville bli allment akseptert. Men i dag er nesten alle nettlesere standardiserte, og forskjellene deres er konsentrert i brukergrensesnitt. Inntil nylig betydde kompatibilitet på tvers av nettlesere at Javascript-kode ville være egnet for moderne nettlesere Og Internet Explorer. Men samfunnet anerkjente IE som ubrukelig og forlot bruken litt mindre enn fullstendig.

I I det siste, må front-end utviklere møte flere høy orden. Hvis en slik utvikler tidligere var mer som en layoutdesigner som er opplært i vanskelighetene med JS på klientsiden og "skruer på" skript fra biblioteket, nå er han en person med et omfattende sett med ferdigheter. Moderne markedønsker å se en front-end-utvikler noe sånt som dette:

kjenner HTML/CSS med sine spesifikasjoner;

bruker forprosessorer for optimalisering;

føler seg trygg med JavaScript;

fungerer med js-rammeverk som Angular og React;

skaper design ved hjelp av BEM-metodikk;

forstår populær CMS (slik at funksjonaliteten senere er forståelig selv for dummies);

forstår det grunnleggende i backend og er ikke redd for å sette seg inn i det om nødvendig;

fungerer med versjonskontrollsystemer som Git;

Dette ligner allerede en full stack, men mer om det nedenfor. Denne tilnærmingen blir kritisert av programmerere fordi den tvinger dem til å kaste bort tid på problemer som de ikke tidligere har løst.

Eller kanskje en full stack?

Uansett om du er en lege, en ingeniør, en matematiker eller en webutvikler, må du strebe etter å mestre et komplett sett med ferdigheter. Og det faktum at frontend-utviklere i dag er pålagt å kunne det grunnleggende om backend, er et naturlig fenomen.

Men det ser ut til at i en tid med slik utvikling som vi opplever nå, vil det ikke være mulig å mestre alle ferdighetene innen nettutvikling umiddelbart fra bunnen av. Faktum er at mens du mestrer én ting, vil noe nytt bli oppfunnet, og tiden som ble brukt kunne vært brukt på "polering" og den praktiske delen. Store selskaper forstår at det er lettere å ansette to spesialister enn å håpe at noen kan dekke to slagmarker samtidig.

En full stack var mulig for flere år siden, da mengden teknologi som trengs for å lage et kvalitetsprodukt ikke var så omfattende. Men til og med språkene selv programvare er ikke de viktigste snublesteinene. I hovedsak må en full stack utvikle både selve produktet og dets adaptive versjoner for ulike plattformer, inkludert mobil. Vanskelig å implementere, enda vanskeligere å teste: det viser seg at utvikleren må omgi seg med enhetene han lager applikasjonen for.

Men hvis du nettopp har startet treningen, beveg deg i begge retninger. Dette betyr ikke at du definitivt vil bli en full stack. Men på denne måten kan du finne ut hvilken utviklingsvektor du liker, og hvilken du ganske enkelt vil navigere.

Forresten, selve linjen mellom foran og bak er veldig vilkårlig i moderne forhold. Noen ganger bygger utviklere fullstendige søknader, som nesten utelukkende er klientsidebasert, mens andre overfører alle prosesser til serveren og kun gir brukeren resultatet av programmet.

Og til slutt, hovedregelen: aldri slutt å forbedre deg, uansett hvilken side av utviklingen du velger.

Moderne trender og tilnærminger innen webutvikling

Lær algoritmen for rask vekst fra bunnen av i nettstedbygging

Baksiden

Backend er serverdelen av applikasjonen, som ikke er synlig for brukere. Dette inkluderer: autorisasjon, lagring og behandling av data, nyhetsbrev på e-post etc. La oss bare si at backend er det som er under panseret.

Det er mange programmeringsspråk her, her er de vanligste:

Php
Asp nett
Java
Python
Rubin
Node js

Jeg anbefaler deg å velge bare en, for med de gjeldende kravene til programmerere vil det ta minst flere år å nå mellomnivået. Når du velger, kan du gjøre deg kjent med de ledige stillingene i byen din, se hvilke som passer best, hvor de betaler mer og avhengig av hvilket språk de trenger, og velge det.

Serveren brukes i stor grad til arbeid med data. Derfor må du lære minst én av relasjonsdatabaser data:

Oracle
MSSQL
MYSQL
Postgres

Når det gjelder kompleksitet, er dette omtrent det samme som å mestre et programmeringsspråk. I alle de listede databasene er det en del som er lik overalt - det såkalte sql (query language), samt prosedyrespråk som er forskjellig i hver database. Siden sql fortsatt er det samme, og det er grunnlaget for alt som har med databehandling å gjøre, er det ikke noe problem å bytte til en annen database. Derfor kan du velge hvilken som helst til å begynne med, men selv her vil jeg gå etter prinsippet om å analysere ledige stillinger.

Personlig gir jeg et pluss til å studere backend, siden ferdighetene her er mer statiske og når du først studerer noe, kan du jobbe med det lang tid.

Frontend

Frontend er delen som kjører i nettleseren som brukeren samhandler direkte med. Dette er dynamiske grensesnitt, menyer, hendelser basert på brukerhandling, datautveksling med serverdelen, generelt, hva som skjer på klienten.

Programmeringsspråket her er javascript. På den ene siden er dette et klart pluss, siden etter å ha studert det, vil alle selskapene i byen din som driver med webutvikling være åpne for deg, og nå gjør mange dette. På den annen side er det nyanser.

JavaScript har for tiden to standarder som er mye brukt: ECMAScript 5 og ECMAScript 6. Forskjellen mellom dem er at ECMAScript 5 ikke har en fullverdig OPP. ECMAScript 6 har det, men siden denne standarden dukket opp relativt nylig, er de fleste applikasjoner allerede skrevet i ECMAScript 5, som et resultat av at det vil være nødvendig å mestre begge standarder og som et resultat to forskjellige tilnærminger til utvikling.

Et annet poeng som må tas i betraktning er at den samme koden skrevet i javascript kan annerledes trene i forskjellige nettlesere og på forskjellige OS. Med dagens krav til applikasjoner vil det være nødvendig å skrive såkalt cross-browser-kode, det vil si kode hvis utførelse vil gi samme resultat overalt. Det er ingen spesifikk manual for å skrive slik kode; i dette tilfellet kan fora og ok Google hjelpe deg.

De problematiske problemene jeg beskrev har blitt løst i moderne js-rammeverk (for eksempel Angular og React). Men i prosjekter som er skrevet uten å bruke rammer, gjenstår disse problemstillingene.

For meg personlig er en enda større ulempe at det er veldig rask utvikling trender. Versjoner av rammeverk oppdateres kontinuerlig, nye biblioteker slippes, og alle vil umiddelbart begynne å bruke dem. Generelt kan du ikke holde tritt med fellesskapet.

Fullstack

Allerede fra navnet skulle det være klart at denne typen utviklere utvikler begge deler. Jeg anbefaler ikke å prøve å bli en slik utvikler, siden det ikke er nok å lære alle hjernene i alle fall, og de fleste selskaper har allerede tatt veien til arbeidsdeling. Imidlertid er full stabel der du må starte for å ta et skritt mot backend eller frontend. Etter å ha utviklet et par små applikasjoner, vil du forstå forskjellen mellom dem (og det er virkelig en), og du vil kunne bestemme hvilken side som er nærmere deg.

En gang, for å bestemme meg, leste jeg boken "Creating Dynamic Websites", forfatteren "Robin Nixon". Boken er liten, bare 500 sider, men takket være den fikk jeg ideen generell idé om nettutvikling, og jeg tok dristig et valg mot backend, som jeg fortsatt ikke angrer på. Jeg ga denne boken som et eksempel, du kan ta hvilken som helst annen bok, det spiller ingen rolle.

Fra forfatteren: ingen har lenge vært i tvil om at yrket som webprogrammerer er prestisjefylt og godt betalt. Dette er bevist av den enorme etterspørselen etter webprogrammeringsspesialister fra eiere av webstudioer, programvareselskaper og andre forretningsområder. Derfor kan opplæring av nettprogrammerere oppfattes som et solid og selvsikkert skritt mot anerkjennelse, suksess, velvære og tilstrekkelig betalt arbeid. Hvor skal du starte din strålende karriere i IT-verdenen? Vi vil snakke om dette i vår artikkel i dag.

Rollen til webprogrammerere i den moderne verden

Behovet for å lage nettsider for ulike bedrifter og organisasjoner er direkte proporsjonal med utviklingsnivået til nettteknologi. Vi lever i en digital tidsalder, og noen av oss bruker nesten all tiden vår i virtuell virkelighet. På Internett jobber vi, studerer, finner kjøpere, partnere, kunder.

Gjeldende trender innen forretningsutvikling er som følger:

noen selskaper vokser på Internett til enorme portaler, og bringer milliarder i fortjeneste til sine eiere;

mange butikker anskaffer seg online salgsplattformer eller til og med fullstendig "flytter" fra offline til online;

Alle flere mennesker foretrekker å "gå" til nettbutikker, og sparer tid og penger.

Dette er grunnen til at behovet for spesialister for nettstedutvikling har økt så dramatisk (og fortsetter å vokse). Det er derfor du hadde et naturlig ønske om å "bli med" i denne prosessen og bli en nettprogrammerer fra bunnen av.

God spesialist i webprogrammering skal kunne lage en nettstedsarkitektur på riktig måte, automatisere arbeidet med å legge til, slette og oppdatere innhold, samle inn informasjon fra besøkende m.m.

Hva er webprogrammering?

Noen sier at webprogrammering er et genetisk talent, andre sier at det er en kunst. Og Wikipedia sier at dette er en del av nettutvikling som fokuserer på å lage webapplikasjoner (programmer som muliggjør dynamiske nettsteder på Internett). Jeg skal forklare nå.

Et nettsted er ikke en samling statiske nettsider. Ja, de kan være utrolig vakre, ha interessant, perfekt organisert innhold, men det er ikke alt. Nettstedet må være interaktivt, det vil si i stand til å svare på besøkendes handlinger, samle inn og behandle visse data mottatt fra brukere.

På en moderne nettside er det umulig å klare seg uten spesielle programmer- manus. Med deres hjelp kan du legge til et skjema på nettstedet tilbakemelding, Personlig område, stemmegivning, søk, filtrere osv. Derfor er oppgaven til en nettprogrammerer å "puste" liv i nettsider slik at brukeren ikke bare kan beundre dem, men også samhandle med dem interaktivt.

Komponenter i webprogrammering

Webdesign.

Denne underseksjonen er ansvarlig for å utvikle det grafiske og funksjonelle innholdet til en tilpasset nettapplikasjon, som er opprettet ved hjelp av HTML- og XHTML-hypertekstmarkeringsstandarder, samt CSS (Cascading Style Sheets). For de som ikke vet hva det er, anbefaler jeg deg å eliminere analfabetisme om dette problemet og gå gjennom. XHTML er en ny generasjon språk hypertekstmarkering.

Programmering på klientsiden (front-end).

Klientprogrammering er opprettelsen av logikk på nettlesersiden (lagring og behandling av brukerdata, dynamisk endring nettsider uten å laste på nytt, sender Ajax-forespørsler til serveren). Den støttes av følgende teknologier:

JavaScript. Det er det mest populære programmeringsspråket og støttes av alle enheter og nettlesere. For å lære det grunnleggende om JavaScript, kan du bruke det, som forklarer i detalj hovedpunktene i språket. Hvis du bestemmer deg for å gjøre alvor av front-end webprogrammering, anbefaler jeg å gå gjennom JavaScript kurs& jQuery for nybegynnere fra scratch til proff;

PHP. Dette webprogrammeringsspråket er det enkleste og mest brukte. Det støttes av de fleste hostingleverandører; Mange nettstedmotorer er skrevet på den. For å lære det grunnleggende om PHP kan jeg anbefale;

ASP.NET. Dette er teknologi fra Microsoft. Omgivelsene lar deg enkelt og raskt lage ulike webapplikasjoner. ASP.NET-infrastrukturen tar seg av asynkron sideoppdatering ved hjelp av AJAX, pakking eksterne samtaler til andre webtjenester til SOAP-meldinger, generere proxy-klasser basert på WSDL-beskrivelser, konvertere kontroller til JavaScript-kode og HTML;

Python, Ruby, Perl og andre backend-programmeringsspråk.

Hvor og hvordan lære webprogrammering?

Mange nybegynnere håper å ta kurs som lærer dem å bygge nettsider og bli nettprogrammerere, og deretter umiddelbart finne en godt betalt jobb. De sender CV til ulike selskaper, men mottar ikke svar.

Faktum er at for å bli en nettprogrammerer fra bunnen av, må du banke på mange dører samtidig. Her er noen av dem:

Hvis du bestemmer deg for å oppgradere fra universitetet, anbefaler jeg deg å velge en av følgende spesialiteter, som hver vil lære deg grunnleggende programmeringsspråk:

Informasjonssystemer og teknologi;

programvare og administrasjon av IT-systemer;

IT-sikkerhet;

informatikk og engelske språk / Datateknikk.

Universitetskunnskap vil imidlertid ikke være nok for at du skal kunne jobbe som webprogrammerer. Du må se mange treningsvideoer, lese et berg av litteratur på forskjellige språk, kommuniser med en mengde profesjonelle (og noen ganger ganske arrogante) programmerere, tråkk på et dusin rake og bruk mange søvnløse netter på å skrive kode før du blir en webprogrammerer og kan lage gode og utmerkede nettsider.

I mellomtiden vil du komme nærmere og nærmere ditt kjære mål. Profesjonaliteten din vil vokse, og med det inntjeningen din. Så lær nye ting hele tiden, utvik og fyll Internett med verdige sider! Det er alt. Abonner på bloggoppdateringene våre og vær den første til å vite alt det mest interessante. Ser deg igjen!

Moderne trender og tilnærminger innen webutvikling

Lær algoritmen for rask vekst fra bunnen av i nettstedbygging

  • Oversettelse
  • Opplæringen

Veien er lang og vanskelig, men interessant og nyttig!

Artikkelen var ment som praktisk veiledning for de som ønsker å bli en profesjonell webutvikler. Jeg har skrevet webkode i over 20 år. Jeg jobber med og hjelper webutviklere hver dag. I denne artikkelen vil jeg beskrive hva du trenger å lære, når du trenger å lære det, og hvor du kan få informasjonen (vanligvis gratis). Da vil jeg gi råd om hvordan du kan få ekte opplevelse, og viktigst av alt, få penger for å skrive kode.

Det er mange lenker til gratis og viktige ressurser. For enkelhets skyld har jeg samlet dem i PDF og delt dem inn i kategorier. Jeg får ikke betalt for å nevne nettsteder som jeg har gitt linker til - jeg vil bare anbefale deg beste ressurser for å hjelpe deg å nå målet ditt.

Ting å huske:

1. Du har lov til å bla gjennom artikkelen

Guiden kan hjelpe deg uansett hvor du er på veien mot faglig utvikling. Bla til tittelen som best beskriver din nåværende situasjon og les derfra. Hvis du nettopp har startet denne veien, eller fortsatt tenker på den, følg rådene fra Kongen fra "Alice i Eventyrland":

Start på begynnelsen, og fortsett til du kommer til slutten; og stopp der allerede.

2. Prøv litt av hvert og velg deretter en spesialisering.

Penger er ikke det viktigste. Du må ELSKE det du gjør! Men du vet ikke hva du liker før du prøver det.


Finn lidenskapen din, og tjen penger på den

Veiledningen vil hjelpe deg å bli kjent med så mange områder innen webutvikling så raskt som mulig. Og så vil han hjelpe deg med å velge en spesialisering innen området du liker. Du vil ikke oppnå perfeksjon i noe med det første - du vil lære det grunnleggende og deretter fortsette å studere. Finn lidenskapen din og jeg skal vise deg hvordan du kan gå videre.

Jeg bestemte meg for å skrive kode. Jeg liker nettet. Jeg vet ikke hvor jeg skal begynne


Du vil lykkes!

Gratulerer! Dette er et stort første skritt og starten på noe veldig spennende. Men det kan også være veldig vanskelig. Ikke bekymre deg, jeg skal hjelpe.

Først må du raskt bli kjent med det grunnleggende innen alle områder av webutvikling (“ full syklus"). Treningen vil være variert, men overfladisk. Dette er for å finne et felt du trives med, og også for å få grunnleggende ferdigheter innen ulike felt. Da vil du kunne forstå og jobbe med et stort sett med problemer, uavhengig av hva du velger.

Lær det grunnleggende om HTML

Hypertext Markup Language (HTML) kontrollerer innholdet og utformingen av det du ser i nettleseren. Når du starter der, har du et brukergrensesnitt som du kan samhandle med og se resultatene av koden din. Etter hvert som du lærer mer komplekse språk, vil viktigheten øke. Du trenger ikke kode blindt.

Her er det du trenger å lære om HTML:

Jeg kan allerede det grunnleggende om HTML

Kul! Dette er veldig viktig skritt. Utforsk nå Grunnleggende om JavaScript.

Lær det grunnleggende om JavaScript

JavaScript er språket på nettet, og alle store nettlesere (Chrome, Firefox, Safari, IE, mange andre) støtter det. Hvert nettsted, hver nettapplikasjon du har brukt, inneholder mest sannsynlig en enorm mengde JS-kode. For ikke å nevne det faktum at språket blir stadig mer populært på andre plattformer - servere, stasjonære datamaskiner, Andre enheter.

For nå trenger du det grunnleggende, og følgende ressurser er gode for det:

Jeg kan det grunnleggende om JavaScript og HTML

Fantastisk! La oss nå legge til CSS til ferdighetene dine

Lær CSS

CSS, eller Cascading Style Sheets (cascading style sheets). Brukes til innstilling utseende HTML-elementer På siden. Sjekk ut Mozillas gratis veiledning, og sjekk deretter ut CSS-triks for å løse de vanligste problemene. komplekse problemer(det er et søk øverst til høyre).

La oss gå videre til backend

Så langt har vi sett på det som kalles "frontend" av webutvikling. Du har blitt kjent med hovedspråkene som kjører i nettleseren. Det er på tide å gå videre til backend - koden som kjører på serveren. Ikke bekymre deg, du trenger ikke en server - datamaskinen din vil håndtere det.

Det finnes massevis av backend-språk, men siden du er kjent med JavaScript, vil jeg anbefale å lære å bruke Node.js. Den lar deg kjøre JS-kode på serveren i stedet for i nettleseren.

I tillegg til dette må du lære Express og MongoDB.

Uttrykke
Dette er et bibliotek som Node.JS kan fungere med som en webserver (lytt til forespørsler fra sider og send dem svar).
MongoDB
Det er en database som lar deg lagre og hente informasjon.

Du kan studere disse tre emnene takket være følgende utmerkede og gratis undervisningsmateriell, og fortsettelsen.

Jeg må velge mellom frontend, backend og full cycle utvikling

Når du har prøvd begge utviklingsalternativene, er det på tide å ta et valg. Hvis du ikke har hatt tid til å prøve dem, se forrige del av artikkelen for å fylle ut hullene i kunnskapen din.

På dette tidspunktet har du skrevet to typer kode. Den ene er for brukerinteraksjon, den andre er for data. Hva foretrekker du?

Brukerinteraksjon? Gratulerer, du er en front-end-utvikler!

Interaksjon med data? Gratulerer, du er en backend-utvikler!

Både? Gratulerer, du er en fullstack-utvikler!

Likte du ingenting? Gratulerer, webutvikling er ikke noe for deg. Vær glad for at du fant ut av det nå og ikke kastet bort massevis av tid og penger. Ikke klar til å gi opp? Kanskje du ikke kom over et språk du likte? Prøv å lære andre språk i delen "Jeg vil bli backend-utvikler".

Jeg vil bli en fullstack-utvikler

Kul. Du må lese alt innholdet i delene "Jeg vil være en backend-utvikler" og "Jeg vil være en frontend-utvikler".

Jeg ønsker å være en front-end-utvikler og jeg kan det grunnleggende om JavaScript, HTML og CSS

Til effektivt arbeid Som front-end-utvikler må du være dyktig i HTML, CSS og JavaScript på klientsiden. Du må også ha god forståelse for flere viktige rammeverk. Du får ferdighetene som arbeidsgivere og kunder forventer å finne hos frontend-utviklere.

Nå bør du allerede kunne det grunnleggende om HTML. Ellers går du tilbake til delen Lær grunnleggende HTML.

Lær middels og avansert HTML
Sjekk ut den mellomliggende HTML-opplæringen og deretter den avanserte HTML-opplæringen.
Lær avansert JavaScript på klientsiden


En utmerket serie med bøker om JS, og den er gratis

For å forbedre JavaScript-ferdighetene dine anbefaler jeg bokserien You Don't Know JS av Kyle Simpson. Forfatteren har lagt ut hele serien gratis på nett:

I tillegg bør MDN JavaScript også være din beste venn.

[Også, en utmerket oversettelse av den utmerkede boken "Expressive JavaScript" er tilgjengelig for deg helt gratis.]

Å kjenne til "front-end-treenigheten", HTML, CSS og JavaScript er selvfølgelig flott. Men for å tjene penger må du sette deg inn i noen rammer.

Lær jQuery
Det er det mest populære JS-biblioteket gjennom tidene. Selv om noen nye rammeverk har gjort jQuery mindre viktig, hvis du leter etter en jobb, er det en god sjanse for at jQuery vil være på stillingsbeskrivelser (og nevnt i intervjuer) i mange år fremover.

Jeg anbefaler å lære jQuery ved å bruke FreeCodeCamp-materialer - det er raskt og effektiv metode. Etter det, gå til den offisielle opplæringssiden - der finner du ytterligere instruksjoner.

Lær et populært JS-rammeverk
Rammer gjør det lettere å jobbe med et bestemt språk eller teknologi fordi de løser største problemer eksisterende for den valgte teknologien. JavaScript har hatt en svært gunstig effekt på utvikling og popularisering av rammeverk.

Nesten en gang i uken dukker det opp et nytt rammeverk, som tippes til å ta plassen til en ny utviklingsstandard. Du må gjennomsøke jobbsider og google litt for å finne ut hvilket rammeverk som er populært i markedet ditt. Jeg anbefaler også Hacker News sitt verktøy for å vurdere trender på arbeidsmarkedet.

På tidspunktet for skriving av denne artikkelen var følgende rammeverk populære:

Etter å ha valgt det mest passende rammeverket og gjort deg grundig kjent med det, er det verdt å studere CSS-rammeverket som følger med det. To største aktøren i dette markedet i dag – Bootstrap og Material Design.

Støvelhempe
Bootstrap ble laget av Twitter-utviklere, og den er allerede ganske moden og populær. Bootstrap-versjoner finnes for Angular, Angular 2 og React.
Materiale
Material er et sett med designregler utviklet av Google. Det blir stadig mer populært, og det finnes versjoner for Angular og React. Siden Angular også er et brainchild av Google, passer Material perfekt med det.

Her er noen linker for deg:

Gratulerer! Du har sentrale front-end utviklerferdigheter!


Bare se på ham!

Jeg vil bli en backend-utvikler

Herlig! Det første trinnet er å velge språk. Det er mange språk tilgjengelig for å jobbe med backend, og hvert har sine egne fordeler og ulemper. Sjekk ut tabellen over programmeringsspråk sortert etter popularitet. Alle har vært blant de ti beste i ti år. De som er merket med grønt er nettspråk som har blitt populært gjennom årene.


TIOBE Index of Programming Languages, www.tiobe.com/tiobe_index?page=index

Konsentrer deg om språkene hvis navn jeg har ringt inn grønn ramme. Hvis du ikke kjenner dem, start på toppen av tabellen og jobb deg nedover. Stopp når du finner noe du liker og grav dypt!

Hvis du er kjent med en av de merkede grønn språk, og du liker det - konsentrer deg om det.

Forbedre intervjuferdighetene dine
Du må forberede deg på mer enn bare å skrive kode. En god artikkel fra Life Hacker beskriver mye nyttig og verdifull informasjon.
Hovedsaken er å få fotfeste i markedet
Ikke bekymre deg for mye om å få drømmejobben hos drømmearbeidsgiveren med drømmelønnen din. Først, bare få en jobb hvor du skriver kode for penger. Når du har fått mer erfaring, kan du planlegge neste steg.
Jeg vil bli frilanser
Å være sin egen sjef er en god ting, men det kommer også med et enormt press og store vanskeligheter. Den beste kilden til freelancing-informasjon jeg har sett er DoubleYourFreelancing.com. Han har en serie artikler som vil hjelpe deg å bli en bedre frilanser enn jeg noen gang kunne. Lese.

Et annet alternativ, hvis du er trygg på deg selv, er Toptal-tjenesten. De tar bare imot 3 % av alle søkere, og prosessen er veldig komplisert, men hvis du kommer inn, får du tilgang til godt betalte jobber som du kan jobbe med eksternt.

Jeg begynte å jobbe, men føler at jeg er i en blindvei
Forstå. Det er ikke lett, og hvis noen fortalte deg noe annet, har de enten ikke gjort det eller prøver å lure deg for penger. Hvis du føler deg fast, prøv disse alternativene:
Oppdater den opprinnelige intensjonen din
Spør deg selv, skriv ned på papir hvorfor du bestemte deg for å følge denne veien. Er svaret ditt fortsatt gyldig? Hvis ja, hvorfor stoppe? Framover!