Programmering for begyndere - hvor skal man tage det første skridt. Sådan begynder du at tjene penge som webprogrammør i et stærkt konkurrencepræget miljø

Goddag, kære læser! Hvis du er interesseret i, hvordan hjemmesider fungerer, hvis du er ivrig efter at lære at skabe moderne internetprojekter selv, så har du brug for viden om, hvordan de samme hjemmesider bliver til. Selvfølgelig kan du klare dig med færdige muligheder (ucoz-systemet eller cms-systemer som joomla eller wordpress). Det er dog altid mere interessant at skrive hjemmesidekoden selv, for det er den eneste måde, store projekter som Facebook bliver ført ud i livet. Derfor vil du ikke kunne undvære en webprogrammeringsvejledning.

Ingen forberedelse vil hjælpe her, fordi... For at skabe et ægte originalt værk skal du selv skrive koden. Derfor besluttede vi, at det ville være interessant for dig at finde ud af, hvem der er værd at lære forviklingerne ved webprogrammering af, så så hurtigt som muligt mestre denne fantastiske teknologi - at skabe moderne hjemmesider.

Mest sandsynligt, hvis du er interesseret denne artikel, så er du allerede bekendt med html teknologier og css. Dette er to grundlæggende ting, uden at vide hvilke du simpelthen ikke har noget at lave i webprogrammering. Det er på basis af disse indbyrdes forbundne ting, at alle hjemmesider i verden er bygget.

Hvad, ved du ikke hvad det er? Er det første gang, du hører om dette? Du har dog et stort ønske om at lære at lave moderne hjemmesider, så er det ikke et problem! Findes nu på internettet stor mængde tematiske sider, diverse videokurser mv. med html og css.

Hvis du vil lære disse teknologier, så se nærmere på Evgeniy Popovs kurser. Vores faste læsere er allerede bekendt med det fra artiklen: At lære gennem videokurser er den bedste måde at lære nye ting på! Dette er en mand, der skabte sig selv og sin online-forretning fra bunden. Vi respekterer sådanne mennesker meget. Evgeniy er virkelig fantastisk!

Men lad os vende tilbage til emnet webprogrammering. Efter du har gennemført kurserne om html og css, så kan du trygt tilføje ny viden til din bagage - viden om webprogrammering.

For dem, der endnu ikke har forstået, er html- og css-teknologier langt fra programmering. Disse er simple arbejdere, i menneskelige termer. Men de (den teknologi), der får disse arbejdere til at bevæge sig i den rigtige retning, er allerede webprogrammering.

Eksisterer kæmpe antal forskellige sprog netop denne webprogrammering, men vi råder dig til at starte med PHP sprog(Hypertekstforbehandler).

PHP er moderat simpelt, og vigtigst af alt er det tilgængeligt for enhver nybegynder, der aldrig har lavet programmering før. Du er sådan en person, er du ikke? Enhver, der allerede har erfaring med webudvikling, ville sandsynligvis ikke læse denne artikel.

Selv ud fra sprogets navn ser det ud som om det er "preprocessor" (forud for handlinger), dvs. i bund og grund er PHP en leder, der kommanderer sine underordnede (html og css), så de gør præcis, hvad der skal til, for at siden kan fungere fuldt ud.

Nu kommer vi til det mest spændende øjeblik i denne artikel: hvor får man ny viden for at lære denne PHP? Som vi gentagne gange har skrevet på siderne på dette websted, at de mest basis viden En bog kan give dig information om absolut ethvert emne. Der er dog mange bøger, hvilken en skal jeg vælge, jeg er helt ny inden for hjemmesidebygning, ikke? Det forstår vi meget godt.

Hvordan vælger vi normalt bøger til vores læsere? Vi ser først og fremmest på forfatteren. Hvis forfatteren er en person, der har nået visse højder inden for sit felt, så råder vi vores læsere til at læse hans manuskript. Når alt kommer til alt, kun ved at lære af de bedste kan du blive en virkelig professionel inden for dit valgte felt!

Derfor har vi valgt bogen af ​​Koterov, Kostarev - PHP 5 i originalen til dig. Dette er virkelig et mesterværk, især for begyndere.

Forfatterne skrev bogen i et sådant format, at enhver læser, uanset deres viden om webteknologier, kunne forstå, hvad der står i bogen, og vigtigst af alt, anvende den erhvervede viden i praksis.

Selvom du ikke er en programmeringsfanatiker, råder vi dig stadig til at læse nogle kapitler fra denne bog. Hvorfor? Ja, for snart vil internettet simpelthen være overalt. Uden at vide hvordan det hele fungerer moderne verden du kommer ikke langt. Dine forældre kan blot søge rundt på sidens sider uden at vide, hvordan alt fungerer der. Du er et moderne menneske, der stadig har tid til at leve i en tidsalder med høj informationsteknologi.

[ At lære webprogrammering er en sjov aktivitet, der kun fanger nogle få udvalgte! ]

Når alt kommer til alt, forstår du, det er kun begyndelsen. Steve Jobs og Bill Gates blev rig på computere, fordi... i deres tid udviklede computerindustrien sig meget hurtigt. Nu har internetindustrien taget stafetten fra hende. Derfor er vi ikke i tvivl om, at hvis du begynder at lære de finurlige webteknologier i dag, vil du skabe et produkt, der vil give dig penge i en endeløs strøm.

Lad os nu tage et kig inde i bogen. Hvad er der. Der er 1200 sider (det er stadig ikke nok) med god tekst med vittigheder, der ikke vil lade dig kede dig, mens du læser dette web programmering tutorial. De allerførste kapitler fortæller om grundlaget for internettet, hvordan det fungerer (det er det, vi anbefaler at læse om til dem, der ikke vil forbinde deres liv med webprogrammering, men gerne vil være opmærksom på, hvordan det hele fungerer).

Så er der mere dybdegående ting som indledende dele om PHP, ca PHP interaktion med databaser mv. I slutningen af ​​bogen mest Hi-tech webstedsopbygning, der harmonisk fuldender din træning i videnskaben om webprogrammering.

Du skal dog ikke tro, at denne tutorial vil give dig svar på alle dine spørgsmål. Nej, selvfølgelig, dette er blot et indledende skridt til en verden af ​​hjemmesideopbygning, som er fascinerende og ukendt for mange mennesker. Men hvis du mestrer denne bog fuldt ud, vil du ikke have nogen problemer med at lære andre webteknologier. Bogen af ​​Koterov og Kostarev "PHP 5 i originalen" er en fremragende base, som du allerede kan oprette en god hjemmeside med. Stop dog aldrig der! Forbedre dig selv hver dag.

Så en dag vil du være i stand til at skabe noget, der vil være kendt for hele verden. Det er dit valg. Du kan studere PHP og andre lignende teknologier, eller du kan ligge på sofaen. Det er op til dig at bestemme!

Til sidst vil vi gerne henvende os til mere avancerede læsere, hvis der er nogen blandt vores publikum, med et spørgsmål: Hvilken tutorial vil du anbefale? Måske har du lært af en anden forfatters værker. Vi tror, ​​at vores læsere vil være meget, meget interesserede i at lære om alternative kilder grundlæggende oplysninger om webprogrammering.

Studer i det mindste noget, bare læg dig ikke på sofaen!

Fra forfatteren: for det meste populær anmodning for nybegyndere er "webudvikling, hvor skal man starte." Faktisk er det næsten umuligt selvstændigt at bestemme udgangspunktet for læring. Kuglen er fyldt stort beløb forskellige værktøjer, hvilket betyder, at det kræver et helt sæt færdigheder. Vi hjælper dig med at finde ud af, i hvilken rækkefølge du skal mestre at arbejde med software og sprog til nettet, så du på kortest mulig tid kan kalde dig selv udvikler.

Det er værd at starte!

Hvis du havde spurgt en erfaren programmør i begyndelsen af ​​2000'erne, hvad der var det mest interessante at studere, ville han uden at slå et øjenlåg have sagt: "softwareudvikling." På det tidspunkt var mængden af ​​arbejde i denne retning virkelig stor: det var nødvendigt at skabe hovedet OS, antivirus, browsere og spilmotorer. I dag fortsætter alt dette sin udvikling, men i centrum opmærksomhed web.

At skabe onlineprodukter er interessant for begyndere. Dette er, hvad de ser hver dag: sider og applikationer. Deres brug er aktiv, hvilket betyder, at sådanne specialister er påkrævet af markedet. Derudover er læring nu tilgængelig for alle, der har internettet - der er ikke længere behov for at arbejde med rækker af information på biblioteket.

Webudvikling tiltrækker folk med et kreativt sind. Her er både programmører og kunstnere. Et produkt har brug for en kvalitetskerne – samt et attraktivt udseende. Der er stadig aktiv debat om, hvad der er vigtigere for et webprodukt: udseende eller ydeevne. Og hvis nogle (Telegram, Facebook) viser, at selv en simpel visuel del opfattes godt af brugeren, så viser andre (Instagram), at brugeren nogle gange er villig til at betale hastighed for en smukt designet applikation.

Du skal også blive webudvikler, fordi hver tilgang har sin egen applikation. Dette er en verden af ​​konstant udvikling og søgen. Alt her er fokuseret på kunden og dennes behov. Desuden at have fået erfaring med webmiljø, kan du også engagere dig i softwareudvikling: sprog og værktøjer er blevet almindelige for disse typer udvikling.
Frontend eller backend?

Selv dem, der begynder at studere feltet fra bunden, ved, at der er disse to hovedretninger i udviklingen. Men få mennesker ved, hvad hver af dem betyder. Og hvis alt er mere eller mindre klart på "fronten", så er serverdelen, backend, indhyllet i mørke for dummies. Uden en grundig forståelse af hver af udviklingsvektorerne er det umuligt at afgøre, hvilken af ​​dem du vil være mest tryg ved. Detaljeret gennemgang kan afklare for begyndere.

Sådan kan vi generelt karakterisere, hvad det vil sige at skabe et produkt til nettet. Nej, vi insisterer ikke på, at en nybegynder skal vælge ryggen, det er bare, at dette er en mere mystisk side.

Faktisk er den måde, de fleste elementer er konstrueret på i deres visuelle del, generelt klar for alle. Men hvilken slags magi får den til at indlæse funktionelle elementer, der er nødvendige på et bestemt tidspunkt, er ikke klart for alle. Denne magi på netværket styres af serversiden: information, der behandles på serveren, ikke på brugerens maskine.

En udviklet backend er typisk for dynamiske websteder. For eksempel, sociale medier- dynamisk. De opdaterer din side uden at du bemærker det og genererer HTML-kode til browseren baseret på forskellige faktorer: fra markørens bevægelse til begyndelsen af ​​en bestemt tidsperiode.

Ved tilmelding vælger du et kaldenavn. Og hvis det er optaget, giver systemet dig besked om dette: backend er begyndt at fungere. Ifølge den foreskrevne algoritme blev de data, du indtastede i feltet på websiden, sendt til serveren. Der tjekker programmet alle registrerede brugere mod databasen og sender, hvis navnet tages, information om dette til brugeren på skærmen. I en mere sofistikeret version tilbyder et specialskrevet program brugeren forskellige variationer af kaldenavnet, der kan bruges.

Og dette er blot et eksempel: det er mest forståeligt for begyndere. Generelt kan serversiden udføre et ubegrænset antal funktioner. Udvikleren, der skaber et produkt fra bunden, bestemmer, hvilke funktioner der skal udføres af serverens kraft, og hvilke der falder på brugermaskinens skuldre. Meget afhænger af den service, som webmasteren opretter.

For eksempel det meste populær app til samkørsel afhænger BlaBlaCar mere af backend end alle visitkortsiderne tilsammen. Et stort team af udviklere interagerer med dens serverside, mens dens frontend er forståelig, selv for webdukker. Det er ikke kun nødvendigt at formalisere hele anmodning-svar-processen. Men opret også mobile og desktop-applikationer til hver platform.

De, der er mere tilbøjelige til at programmere, vælger normalt "tilbage". Det kan være kedeligt for begyndere, der drømte om at skabe gode billeder og sideovergange. Men specialister i denne side af udviklingen har deres egen fordel: stabilitet. Efter at have lært en bestemt teknologi, kan de væbne sig med den i mange år, mens fronten er et konstant kapløb med tiden.

Sprog, der bruges til dette web sider, kaldes normalt server-side sprog. Nogle af dem bruges i programmering generelt, men på grund af deres popularitet blandt webudviklere, er de blevet forbundet specifikt med vedligeholdelse af webprodukter. Blandt dem:

PHP, som fik sin popularitet på grund af dets lette læring. Trods kritik fra udefrakommende er den stadig den mest brugte;

Javascript og dets modifikationer;

Ruby, som fødte en af ​​de mest berømte rammer - Ruby on Rails;

I virkeligheden er det sprog, du vælger at lære, ikke så vigtigt. Når alt kommer til alt, er hver af dem velegnet til at interagere med serveren. Ud over dem vil det være nyttigt at lære forespørgselssproget. Den mest berømte og brugte er SEQUEL eller SQL. Lighederne mellem disse sprog er stærke. Så efter at have lært den ene, vil det ikke være svært at tilpasse sig operationer med den anden.

Moderne tendenser og tilgange inden for webudvikling

Lær algoritmen til hurtig vækst fra bunden i webstedsopbygning

Dette sprog er nødvendigt for at kommunikere med databaser - det er præcis, hvad der kan gøres hurtig app, som bruger store mængder data. For det meste populære systemer databasestyring er MySQL, MSSQL, MariaDB og andre. Det er svært at sige, hvilken der er bedst, men MySQL har vundet mest popularitet. Evnen til at interagere med databaser er afgørende for en webapplikationsudvikler; dette gælder både front-end og back-end specialister. Mestre centrale punkter ikke svært, men faglig viden kræver erfaring med at løse specifikke opgaver.

Ikke af design alene

...kan beskrives som frontend, på trods af at det er sådan begyndere forstår klientsiden. Til en vis grad har de ret, fordi de fleste af frontend-udviklerens aktiviteter er synlig for brugeren interface. Han er dog ikke kun ansvarlig for design, men også for interaktiv brugeroplevelse.

Tegn - ikke kode

Fronten har to store udviklingsvektorer: designere og layoutdesignere. Hvis du kan lide kreativitet og layout, så begynd at lære det grundlæggende i webdesign. Først og fremmest skal du installere grafik editor, For eksempel, Adobe Photoshop. Der findes en masse undervisningsmaterialer på dette område, og de er af høj kvalitet. Broderparten er rettet specifikt mod attrapper.

Umiddelbart efter installation af PS vil funktionaliteten og grænsefladen virke uvenlig for dig, og værktøjerne vil være svære at bruge. At arbejde med programmet kræver faktisk visse færdigheder. Men for det første er det ikke så svært, som det ser ud til, og for det andet det fulde potentiale Photoshop muligheder du behøver det ikke. Der er kurser på YouTube, der specialiserer sig i webproduktmodeller. Vælg dem til træning!

Hvis vi taler om kasten af ​​layoutdesignere, så er deres opgave at omdanne layouts til kode, som browseren forstår - HTML. Men det vil ikke være nok for dig. Det vil ikke tage dig mere end to dage at mestre hypertekstsproget, hvis du studerer hårdt, og lige meget mere til Grundlæggende om CSS, hvilket gør siden farverig. Det er ikke som programmeringssprog - det er som om det er lavet til en begynder.

Hvis vi taler om programmeringssproget, så er det for frontend-udvikleren Javascript. Og det ville være fantastisk, hvis det ikke var for kapløbet med tiden, som vi nævnte ovenfor. Takket være det skal en moderne webudvikler arbejde med to standarder på én gang: den femte og sjette ECMAScript. Nye produkter er skrevet i bind 6, men en række produkter bruger stadig bind 5. Du bliver nødt til at håndtere hver enkelt.

For et par år siden var en vigtig færdighed evnen til at skrive kode på tværs af browsere. Kort sagt betyder det, at du skal skrive et Javascript-program, der vil køre godt på større browsere. Tidligere konkurrerede producenter af software til at surfe på nettet om, hvis teknologi ville blive almindeligt accepteret. Men i dag er næsten alle browsere standardiserede, og deres forskelle er koncentreret i brugergrænseflade. Indtil for nylig betød kompatibilitet på tværs af browsere, at Javascript-kode ville være egnet til moderne browsere Og Internet Explorer. Men samfundet anerkendte IE som ubrugelig og opgav dets brug lidt mindre end fuldstændigt.

I På det sidste, skal frontend-udviklere møde flere høj orden. Hvis en sådan udvikler tidligere var mere som en layoutdesigner, der er uddannet i forviklingerne af klient-side JS og "skruer på" scripts fra biblioteket, nu er han en person med et omfattende sæt færdigheder. Moderne markedønsker at se en frontend-udvikler noget som dette:

kender HTML/CSS med dets specifikationer;

bruger præprocessorer til optimering;

føler sig sikker på JavaScript;

arbejder med js-frameworks såsom Angular og React;

skaber design ved hjælp af BEM-metodologi;

forstår populært CMS (så senere er funktionaliteten forståelig selv for dummies);

forstår det grundlæggende i backend og er ikke bange for at komme ind i det, hvis det er nødvendigt;

arbejder med versionskontrolsystemer såsom Git;

Dette ligner allerede en fuld stack, men mere om det nedenfor. Denne tilgang bliver kritiseret af programmører, fordi den tvinger dem til at spilde tid på problemer, som de ikke tidligere har løst.

Eller måske en fuld stack?

Uanset om du er læge, ingeniør, matematiker eller webudvikler, skal du stræbe efter at mestre et komplet sæt færdigheder. Og det faktum, at frontend-udviklere i dag er forpligtet til at kende det grundlæggende i backend, er et naturligt fænomen.

Men det ser ud til, at det i en tid med sådan udvikling, som vi oplever nu, ikke umiddelbart vil være muligt at mestre alle kompetencerne i webudvikling fra bunden. Faktum er, at mens du mestrer én ting, så vil der blive opfundet noget nyt, og den brugte tid kunne have været brugt på “polering” og den praktiske del. Store virksomheder forstår, at det er lettere at ansætte to specialister end at håbe, at nogen kan dække to slagmarker på én gang.

En fuld stack var mulig for flere år siden, hvor mængden af ​​teknologi, der skulle til for at skabe et kvalitetsprodukt, ikke var så omfattende. Men også sprogene selv software er ikke de vigtigste anstødssten. I bund og grund skal en fuld stack udvikle både selve produktet og dets adaptive versioner til forskellige platforme, herunder mobil. Svært at implementere, endnu sværere at teste: det viser sig, at udvikleren skal omgive sig med de enheder, som han laver applikationen til.

Men hvis du lige er i gang med din træning, så bevæg dig i begge retninger. Det betyder ikke, at du helt sikkert bliver en fuld stack. Men på denne måde kan du finde ud af, hvilken udviklingsvektor du kan lide, og hvilken du blot vil navigere.

Forresten er selve linjen mellem front og bag meget vilkårlig i moderne forhold. Nogle gange bygger udviklere fulde ansøgninger, som næsten udelukkende er klientsidebaserede, mens andre overfører alle processer til serveren og kun giver brugeren resultatet af programmet.

Og endelig hovedreglen: Stop aldrig med at forbedre dig, uanset hvilken side af udviklingen du vælger.

Moderne trends og tilgange inden for webudvikling

Lær algoritmen til hurtig vækst fra bunden i webstedsopbygning

Bagende

Backend er serverdelen af ​​applikationen, som ikke er synlig for brugerne. Dette omfatter: autorisation, opbevaring og behandling af data, e-mail nyhedsbreve etc. Lad os bare sige, at backend er det, der er under hætten.

Der er mange programmeringssprog her, her er de mest almindelige:

Php
Asp net
Java
Python
Rubin
Node js

Jeg råder dig til kun at vælge én, for med de nuværende krav til programmører vil det tage mindst flere år at nå mellemniveauet. Når du vælger, kan du stifte bekendtskab med de ledige stillinger i din by, se hvilke der er bedst egnede, hvor de betaler mere og afhængigt af hvilket sprog de kræver, og vælge det.

Serveren bruges i høj grad til at arbejde med data. Derfor skal du lære mindst én af relationelle databaser data:

Oracle
MSSQL
MYSQL
Postgres

Med hensyn til kompleksitet er dette omtrent det samme som at mestre et programmeringssprog. I alle de anførte databaser er der en del, der er ens overalt - det såkaldte sql (forespørgselssprog), samt proceduresprog som er forskellig i hver database. Da sql stadig er det samme, og det er grundlaget for alt relateret til databehandling, er det ikke sådan et problem at skifte til en anden database. Derfor kan du vælge hvilken som helst til at begynde med, men selv her vil jeg gå efter princippet om at analysere ledige stillinger.

Personligt giver jeg et plus til at studere backend, da færdighederne her er mere statiske, og når du først studerer noget, kan du arbejde på det lang tid.

Frontend

Frontend er den del, der kører i browseren, som brugeren interagerer direkte med. Disse er dynamiske grænseflader, menuer, hændelser baseret på brugerhandling, dataudveksling med serverdelen, generelt hvad der sker på klienten.

Programmeringssproget her er javascript. På den ene side er dette et klart plus, da efter at have studeret det, vil alle virksomheder i din by, der beskæftiger sig med webudvikling, være åbne for dig, og nu gør mange dette. På den anden side er der nuancer.

JavaScript har i øjeblikket to standarder, der er meget udbredt: ECMAScript 5 og ECMAScript 6. Forskellen mellem dem er, at ECMAScript 5 ikke har en fuldgyldig OPP. ECMAScript 6 har det, men da denne standard dukkede op for relativt nylig, er de fleste applikationer allerede skrevet i ECMAScript 5, som følge heraf vil det være nødvendigt at beherske begge standarder og som følge heraf to forskellige tilgange til udvikling.

Et andet punkt, der skal tages i betragtning er, at den samme kode skrevet i javascript kan anderledes træne i forskellige browsere og på forskellige OS. Med de nuværende krav til applikationer vil det være nødvendigt at skrive såkaldt cross-browser-kode, det vil sige kode, hvis udførelse vil give samme resultat overalt. Der er ingen specifik manual til at skrive en sådan kode; i dette tilfælde kan fora og ok Google hjælpe dig.

De problematiske problemer, jeg beskrev, er blevet løst i moderne js-frameworks (for eksempel Angular og React). Men i projekter, der er skrevet uden brug af rammer, forbliver disse problemer.

For mig personligt er en endnu større ulempe, at der er meget hurtig udvikling tendenser. Versioner af frameworks opdateres konstant, nye biblioteker frigives, og alle vil straks begynde at bruge dem. Generelt kan man ikke følge med i fællesskabet.

Fullstack

Allerede ud fra navnet skulle det være klart denne type udviklere udvikler begge dele. Jeg anbefaler ikke at prøve at blive sådan en udvikler, da det under alle omstændigheder ikke er nok at lære alle hjernerne, og de fleste virksomheder har allerede taget arbejdsdelingens vej. Men den fulde stak er der, hvor du skal starte for at tage et skridt mod backend eller frontend. Efter at have udviklet et par små applikationer, vil du forstå forskellen mellem dem (og der er virkelig en), og du vil være i stand til at beslutte, hvilken side der er tættere på dig.

For at bestemme mig læste jeg på et tidspunkt bogen "Creating Dynamic Websites", forfatteren "Robin Nixon". Bogen er lille, kun 500 sider, men takket være den fik jeg ideen generel idé om webudvikling, og jeg tog modigt et valg i retning af backend, hvilket jeg stadig ikke fortryder. Jeg gav denne bog som et eksempel, du kan tage enhver anden bog, det er lige meget.

Fra forfatteren: ingen har længe været i tvivl om, at professionen som webprogrammør er prestigefyldt og godt betalt. Dette bevises af den enorme efterspørgsel efter webprogrammeringsspecialister fra ejere af webstudier, softwarevirksomheder og andre forretningsområder. Derfor kan uddannelse af webprogrammører opfattes som et solidt og selvsikkert skridt mod anerkendelse, succes, velvære og tilstrækkeligt betalt arbejde. Hvor skal du starte din strålende karriere i IT-verdenen? Vi vil tale om dette i vores artikel i dag.

Webprogrammørernes rolle i den moderne verden

Behovet for at skabe hjemmesider for forskellige virksomheder og organisationer er direkte proportionalt med udviklingsniveauet for webteknologier. Vi lever i en digital tidsalder, og nogle af os bruger næsten al vores tid i Virtual reality. På internettet arbejder vi, studerer, finder købere, partnere, kunder.

De aktuelle tendenser inden for forretningsudvikling er som følger:

nogle virksomheder vokser på internettet til enorme portaler og bringer milliarder i overskud til deres ejere;

mange butikker anskaffer sig online salgsplatforme eller "flytter" helt fra offline til online;

Alle flere folk foretrækker at "gå" til online butikker, hvilket sparer deres tid og penge.

Dette er grunden til, at behovet for webstedsudviklingsspecialister er steget så dramatisk (og fortsætter med at vokse). Derfor havde du et naturligt ønske om at "være med" i denne proces og blive webprogrammør fra bunden.

God specialist i webprogrammering skal være i stand til korrekt at skabe en site-arkitektur, automatisere arbejdet med at tilføje, slette og opdatere indhold, indsamle informationer fra besøgende mv.

Hvad er webprogrammering?

Nogle siger, at webprogrammering er et genetisk talent, andre siger, at det er en kunst. Og Wikipedia siger, at dette er en sektion af webudvikling, der fokuserer på at skabe webapplikationer (programmer, der muliggør dynamiske websteder på internettet). Jeg vil forklare nu.

Et websted er ikke en samling af statiske websider. Ja, de kan være fantastisk smukke, have interessant, perfekt organiseret indhold, men det er ikke alt. Siden skal være interaktiv, det vil sige i stand til at reagere på besøgendes handlinger, indsamle og behandle visse data modtaget fra brugere.

På en moderne hjemmeside er det umuligt at undvære særlige programmer- scripts. Med deres hjælp kan du tilføje en formular til webstedet feedback, Personligt område, afstemning, søgning, filter osv. En webprogrammørs opgave er således at "puste" liv i websider, så brugeren ikke kun kan beundre dem, men også interagere med dem interaktivt.

Komponenter i webprogrammering

Webdesign.

Denne undersektion er ansvarlig for at udvikle det grafiske og funktionelle indhold af en brugerdefineret webapplikation, som er oprettet ved hjælp af HTML- og XHTML-hypertekstmarkeringsstandarder samt CSS (Cascading Style Sheets). For dem, der ikke ved, hvad det er, råder jeg dig til at eliminere analfabetisme om dette spørgsmål og gå igennem. XHTML er en ny generation af sprog hypertekstmarkering.

Programmering på klientsiden (front-end).

Klientprogrammering er skabelsen af ​​logik på browsersiden (lagring og behandling af brugerdata, dynamisk forandring websider uden genindlæsning, sender Ajax-anmodninger til serveren). Det understøttes af følgende teknologier:

JavaScript. Det er det mest populære programmeringssprog og understøttes af alle enheder og internetbrowsere. For at lære det grundlæggende i JavaScript, kan du bruge det, som i detaljer forklarer hovedpunkterne i sproget. Hvis du beslutter dig for at blive seriøs omkring frontend webprogrammering, anbefaler jeg at gå igennem JavaScript kursus& jQuery for begyndere fra bunden til professionel;

PHP. Dette webprogrammeringssprog er det enkleste og mest udbredte. Det understøttes af de fleste hostingudbydere; Mange hjemmesidemotorer er skrevet på det. For at lære det grundlæggende i PHP kan jeg anbefale;

ASP.NET. Dette er teknologi fra Microsoft. Dets miljø giver dig mulighed for nemt og hurtigt at oprette forskellige webapplikationer. ASP.NET-infrastrukturen sørger for asynkron sideopdatering ved hjælp af AJAX-pakke fjernopkald til andre webtjenester til SOAP-meddelelser, generering af proxy-klasser baseret på WSDL-beskrivelser, konvertering af kontroller til JavaScript-kode og HTML;

Python, Ruby, Perl og andre backend-programmeringssprog.

Hvor og hvordan lærer man webprogrammering?

Mange nybegyndere håber på at tage kurser, der lærer dem at bygge hjemmesider og blive webprogrammører, og så straks finde et højtbetalt job. De sender CV'er til forskellige virksomheder, men får ikke svar.

Faktum er, at for at blive webprogrammør fra bunden, skal du banke på mange døre på én gang. Her er et par af dem:

Hvis du beslutter dig for at tage eksamen fra universitetet, råder jeg dig til at vælge en af ​​følgende specialer, som hver især vil lære dig grundlæggende programmeringssprog:

Informationssystemer og teknologi;

software og administration af it-systemer;

IT-sikkerhed;

datalogi og engelsk sprog / Computerteknik.

Universitetsviden vil dog ikke være nok til, at du med succes kan arbejde som webprogrammør. Du bliver nødt til at se en masse træningsvideoer, læse et bjerg af litteratur på forskellige sprog, kommuniker med en skare af professionelle (og nogle gange ret arrogante) programmører, træd på et dusin rake og brug mange søvnløse nætter på at skrive kode, før du bliver webprogrammør og kan skabe gode og fremragende hjemmesider.

I mellemtiden vil du komme tættere og tættere på dit elskede mål. Din faglighed vil vokse, og dermed din indtjening. Så lær nye ting hele tiden, udvikle og fyld internettet med værdige sider! Det er alt. Abonner på vores blogopdateringer og vær den første til at vide alle de mest interessante ting. Vi ses!

Moderne trends og tilgange inden for webudvikling

Lær algoritmen til hurtig vækst fra bunden i webstedsopbygning

  • Oversættelse
  • Tutorial

Vejen er lang og vanskelig, men interessant og nyttig!

Artiklen var tænkt som praktisk guide for dem, der ønsker at blive en professionel webudvikler. Jeg har skrevet webkode i over 20 år. Jeg arbejder med og hjælper webudviklere hver dag. I denne artikel vil jeg beskrive, hvad du skal lære, hvornår du skal lære det, og hvor du kan få informationen (normalt gratis). Så vil jeg give råd til, hvordan du får ægte oplevelse, og vigtigst af alt, at få penge for at skrive kode.

Der er mange links til gratis og vigtige ressourcer. For nemheds skyld har jeg samlet dem i PDF og inddelt dem i kategorier. Jeg bliver ikke betalt for at nævne sider, som jeg har givet links til - jeg vil bare anbefale dig bedste ressourcer at hjælpe dig med at nå dit mål.

Ting at huske:

1. Du har lov til at scrolle gennem artiklen

Guiden kan hjælpe dig, uanset hvor du er på vej mod faglig udvikling. Rul til den titel, der bedst beskriver din nuværende situation, og læs derfra. Hvis du lige er startet på denne vej, eller stadig tænker på det, så følg rådene fra Kongen fra "Alice i Eventyrland":

Start ved begyndelsen, og fortsæt, indtil du når slutningen; og stop der allerede.

2. Prøv lidt af hvert og vælg derefter en specialisering.

Penge er ikke det vigtigste. Du skal ELSKE det du laver! Men du ved ikke, hvad du kan lide, før du prøver det.


Find din passion, og tjen penge på den

Guiden hjælper dig med at blive fortrolig med så mange områder inden for webudvikling så hurtigt som muligt. Og så hjælper han dig med at vælge en specialisering inden for det område, du kan lide. Du opnår ikke perfektion i noget i starten - du vil lære det grundlæggende og derefter fortsætte med at studere. Find din passion, og jeg viser dig, hvordan du kommer videre.

Jeg besluttede at skrive kode. Jeg kan godt lide nettet. Jeg ved ikke, hvor jeg skal starte


Du vil lykkes!

Tillykke! Dette er et stort første skridt og starten på noget meget spændende. Men det kan også være meget svært. Bare rolig, jeg hjælper.

Først skal du hurtigt blive fortrolig med det grundlæggende inden for alle områder af webudvikling (" fuld cyklus"). Træningen vil være varieret, men overfladisk. Dette er for at finde et felt, du kan lide, og også for at få grundlæggende færdigheder inden for forskellige områder. Så vil du være i stand til at forstå og arbejde med et stort problemsæt, uanset hvad du vælger.

Lær det grundlæggende i HTML

Hypertext Markup Language (HTML) styrer indholdet og layoutet af det, du ser i browseren. Når du starter der, har du en brugergrænseflade, som du kan interagere med og se resultaterne af din kode. Efterhånden som du lærer mere komplekse sprog, vil dets betydning øges. Du behøver ikke kode blindt.

Her er hvad du skal lære om HTML:

Jeg kender allerede det grundlæggende i HTML

Fedt nok! Det er meget vigtigt skridt. Udforsk nu Grundlæggende om JavaScript.

Lær grundlæggende JavaScript

JavaScript er internettets sprog, og alle større browsere (Chrome, Firefox, Safari, IE, mange andre) understøtter det. Hvert websted, hver webapplikation, du har brugt, indeholder højst sandsynligt en enorm mængde JS-kode. For ikke at nævne det faktum, at sproget vinder popularitet på andre platforme - servere, stationære computere, Andre enheder.

For nu har du brug for det grundlæggende, og følgende ressourcer er gode til det:

Jeg kender det grundlæggende i JavaScript og HTML

Fantastiske! Lad os nu tilføje CSS til dine færdigheder

Lær CSS

CSS eller Cascading Style Sheets (Cascading Style Sheets). Bruges til indstilling udseende HTML-elementer På siden. Tjek Mozillas gratis selvstudie ud, og tjek derefter CSS-Tricks for at løse de mest almindelige problemer. komplekse problemer(der er en søgning øverst til højre).

Lad os gå videre til backend

Indtil videre har vi kigget på det, der kaldes "frontend" af webudvikling. Du er blevet fortrolig med de vigtigste sprog, der kører i browseren. Det er tid til at gå videre til backend - koden, der kører på serveren. Bare rolig, du behøver ikke en server - din computer vil klare det.

Der er et væld af backend-sprog, men da du er fortrolig med JavaScript, vil jeg anbefale at lære at bruge Node.js. Det giver dig mulighed for at køre JS-kode på serveren i stedet for i browseren.

Ud over dette skal du lære Express og MongoDB.

Express
Dette er et bibliotek, som Node.JS kan arbejde med som webserver (lyt til anmodninger fra sider og send dem svar).
MongoDB
Det er en database, der giver dig mulighed for at gemme og hente information.

Du kan studere disse tre emner takket være følgende fremragende og gratis undervisningsmateriale og dets fortsættelse.

Jeg skal vælge mellem frontend, backend og fuld cyklus udvikling

Når du har prøvet begge udviklingsmuligheder, er det tid til at træffe et valg. Hvis du ikke har haft tid til at prøve dem, skal du henvise til det forrige afsnit af artiklen for at udfylde hullerne i din viden.

På dette tidspunkt har du skrevet to typer kode. Den ene er til brugerinteraktion, den anden er til data. Hvad foretrækker du?

Brugerinteraktion? Tillykke, du er en frontend-udvikler!

Interaktion med data? Tillykke, du er en backend-udvikler!

Begge? Tillykke, du er en fuld stack-udvikler!

Kunne du ikke lide noget? Tillykke, webudvikling er ikke noget for dig. Vær glad for, at du fandt ud af det nu og ikke spildte masser af tid og penge. Ikke klar til at give op? Måske stødte du ikke på et sprog, du kunne lide? Prøv at lære andre sprog i afsnittet "Jeg vil være backend-udvikler".

Jeg vil gerne være fuld stack-udvikler

Fedt nok. Du skal læse alt indholdet i afsnittene "Jeg vil være en backend-udvikler" og "Jeg vil være en frontend-udvikler".

Jeg vil være frontend-udvikler, og jeg kender det grundlæggende i JavaScript, HTML og CSS

Til effektivt arbejde Som frontend-udvikler skal du være dygtig til HTML, CSS og JavaScript på klientsiden. Du skal også have en god forståelse for flere vigtige rammer. Du får de færdigheder, som arbejdsgivere og kunder forventer at finde hos frontend-udviklere.

Nu burde du allerede kende det grundlæggende i HTML. Ellers skal du gå tilbage til sektionen Lær HTML Basics.

Lær mellemliggende og avanceret HTML
Tjek den mellemliggende HTML tutorial og derefter den avancerede HTML tutorial.
Lær avanceret JavaScript på klientsiden


En fremragende serie af bøger om JS, og den er gratis

For at forbedre dine JavaScript-færdigheder anbefaler jeg bogserien You Don't Know JS af Kyle Simpson. Forfatteren har lagt hele serien gratis på nettet:

Derudover bør MDN JavaScript også være din bedste ven.

[Også er en fremragende oversættelse af den fremragende bog "Expressive JavaScript" tilgængelig for dig helt gratis.]

At kende "front-end trinity", HTML, CSS og JavaScript er selvfølgelig fantastisk. Men for at tjene penge bliver du nødt til at sætte dig ind i nogle rammer.

Lær jQuery
Det er det mest populære JS-bibliotek nogensinde. Selvom nogle nye rammer har gjort jQuery mindre vigtigt, hvis du leder efter et job, er der en god chance for, at jQuery vil være på jobbeskrivelser (og nævnt i interviews) i mange år fremover.

Jeg anbefaler at lære jQuery ved hjælp af FreeCodeCamp-materialer - det er hurtigt og effektiv metode. Gå derefter til den officielle træningsside - der finder du yderligere instruktioner.

Lær en populær JS-ramme
Rammer gør arbejdet med et bestemt sprog eller teknologi nemmere, fordi de løser største problemer eksisterende for den valgte teknologi. JavaScript har haft en meget gavnlig effekt på udvikling og popularisering af frameworks.

Næsten en gang om ugen dukker et nyt framework op, som tippes til at træde i stedet for en ny udviklingsstandard. Du bliver nødt til at gennemsøge jobsider og google lidt for at finde ud af, hvilken ramme der er populær på dit marked. Jeg anbefaler også Hacker News' værktøj til at vurdere tendenser på arbejdsmarkedet.

På tidspunktet for skrivning af denne artikel var følgende rammer populære:

Efter at have valgt den bedst egnede ramme og sat dig grundigt ind i den, er det værd at studere den CSS-ramme, der følger med. To største spiller på dette marked i dag – Bootstrap og Material Design.

Bootstrap
Bootstrap blev lavet af Twitter-udviklere, og det er allerede ret modent og populært. Bootstrap-versioner findes til Angular, Angular 2 og React.
Materiale
Materiale er et sæt designregler udviklet af Google. Det vinder popularitet, og der er versioner til Angular og React. Da Angular også er et udtænkt af Google, passer Material perfekt til det.

Her er nogle links til dig:

Tillykke! Du har centrale front-end udvikler færdigheder!


Bare se på ham!

Jeg vil gerne være backend-udvikler

Vidunderlig! Det første skridt er at vælge et sprog. Der er mange sprog tilgængelige til at arbejde med backend, og hver har sine egne fordele og ulemper. Tjek tabellen over programmeringssprog sorteret efter popularitet. Alle har de været i top ti i ti år. De, der er markeret med grønt, er websprog, der har vundet popularitet gennem årene.


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

Koncentrer dig om de sprog, hvis navne jeg har sat en cirkel omkring grøn ramme. Hvis du ikke kender dem, så start i toppen af ​​tabellen og arbejd dig ned. Stop, når du finder noget, du kan lide, og grav dybt!

Hvis du er bekendt med en af ​​de markerede grøn sprog, og du kan lide det - koncentrer dig om det.

Forbedre dine interviewfærdigheder
Du skal forberede dig på mere end bare at skrive kode. En god artikel fra Life Hacker beskriver en masse nyttig og værdifuld information.
Det vigtigste er at få fodfæste på markedet
Du skal ikke bekymre dig for meget om at få dit drømmejob hos din drømmearbejdsgiver med din drømmeløn. Først skal du bare få et job, hvor du skriver kode for penge. Når du har fået mere erfaring, kan du planlægge dit næste skridt.
Jeg vil gerne være freelancer
At være sin egen chef er en god ting, men det kommer også med et enormt pres og store vanskeligheder. Den bedste kilde til freelancing-information, jeg har set, er DoubleYourFreelancing.com. Han har en række artikler, der vil hjælpe dig med at blive en bedre freelancer, end jeg nogensinde kunne. Læs.

En anden mulighed, hvis du er sikker på dig selv, er Toptal-tjenesten. De tager kun imod 3 % af alle ansøgere, og processen er meget kompliceret, men hvis du kommer ind, får du adgang til velbetalte jobs, som du kan arbejde på eksternt.

Jeg startede på arbejde, men føler, at jeg er i en blindgyde
Forstå. Det er ikke let, og hvis nogen fortalte dig andet, gjorde de det enten ikke eller forsøger at snyde dig for penge. Hvis du føler dig fastlåst, så prøv disse muligheder:
Opdater din oprindelige hensigt
Spørg dig selv, skriv ned på papir, hvorfor du besluttede at følge denne vej. Er dit svar stadig gyldigt? Hvis ja, hvorfor så stoppe? Frem!