Front-End vs Back-End vs Full-Stack Web Development

Webontwikkeling is nie net een ding nie. Dit behels verskeie vaardighede, en daar is verskillende soorte beroepe binne die webontwikkelingsruimte. Drie terme wat dikwels gebruik word, is "front end", "back end" en "full stack." Hier is die sleutel verskille tussen die drie.

Front-End Web Development

Front-end ontwikkeling , terwyl sy komponente altyd aan die verander is, handel hoofsaaklik oor die buitekant van 'n webwerf of webprogram.

In die kern, ontwikkeling van die front-end behels HTML, CSS en JavaScript.

Oor die algemeen word die voorkant geassosieer met uitleg en ontwerpbeginsels. Voorlopige ontwikkelaars is egter nie noodwendig ontwerpers nie.

Basies ontwikkel die front-end ontwikkelaars die uiterlike voorkoms - die webwerf bladsye wat gebruikers sien. Dit beteken dat die front-end ontwikkelaar die leesbaarheid en bruikbaarheid van die werf en / of toepassing moet in ag neem.

Daarbenewens loop die voorkant op die kliënt - wat die gebruiker se plaaslike rekenaar beteken - in die meeste gevalle, die webblaaier.

En inligting word nie op die kliënt se kant gestoor nie.

Back-End Web Development

Back-end web ontwikkeling is wat gebeur agter die skerms. Die agterkant maak die front-end ervaring moontlik.

Om dinge maklik te maak, dink aan die voorkant as die deel van die ysberg bokant die water. Dit is wat die gebruiker sien - die slanke werf.

Die agterkant is die res van die ys; Dit kan nie deur die eindgebruiker gesien word nie, maar dit is die belangrikste element van 'n webprogram. Die agterkant loop op die bediener, of, soos dit dikwels genoem word, "bediener-kant".

In teenstelling met die front-end ontwikkeling (wat hoofsaaklik HTML, CSS en JavaScript gebruik), kan back-end webontwikkeling staatmaak op 'n verskeidenheid tale en raamwerke.

'N Paar gewilde tale wat op die agterkant gebruik word, sluit in:

Om grootskaalse webwerwe en webapplikasies te laat werk, is dit egter meer as 'n back-end taal en raamwerk. Al die inligting op 'n webwerf of aansoek moet iewers gestoor word.

Dit is waar databasisse kom. Back-end ontwikkelaars hanteer dit ook.

( Let wel : jy kan 'n webwerf sonder 'n databasis bou deur net HTML en CSS te gebruik. Dit sal 'n statiese webwerf wees en sal baie minder buigsaam wees. 'N Webblad wat op inligting gebruik word om dinamies gegenereer te word - Facebook, Yelp, enige e-commerce site - benodig 'n databasis.)

Gewilde databasisse sluit in:

Tipies vereis sekere back-end tale / raamwerke 'n sekere databasis. Byvoorbeeld, die MEAN full stack-raamwerk vereis MongoDB.

Behalwe om 'n back-end taal / raamwerk en hardloopdatabasisse te ken, moet ontwikkelaars ook 'n begrip hê van bedienerargitektuur.

Om 'n bediener op te stel, laat 'n webwerf vinnig toe, nie 'n ongeluk nie, en gee nie foute aan gebruikers nie. Dit val onder die agtergrondontwikkelaar se domein omdat die meeste foute by die agterkant voorkom, nie die voorkant nie.

Volle stapel

Ja, jy het dit geraai: Volle stapel is die kombinasie van beide die voorkant en die agterkant.

'N Volle-stap-ontwikkelaar is 'n sak-van-alle-bedrywe. Hulle is verantwoordelik vir alle vlakke van ontwikkeling, van hoe die bediener opgestel is aan die ontwerpverwante SSD.

Deesdae is daar soveel wat in webontwikkeling gaan dat dit byna onmoontlik is om albei kante te hanteer. Alhoewel baie mense daarop aanspraak maak dat hulle volle stapel is, of in werklikheid, fokus hulle steeds meer aan die een kant: die kliënt of die bediener. (AKA die voorkant of die agterkant.)

By kleiner maatskappye / opstartings sal 'n enkele persoon meer waarskynlik verantwoordelik wees vir alle kante van die webontwikkelingsspektrum. By groter maatskappye werk mense egter op spanne en het gespesialiseerde rolle. Een fokus slegs op bedienerargitektuur, 'n ander (of 'n paar mense) aan die voorkant, ens.

Afsluiting

Webontwikkeling het baie gesigte, en dit ontwikkel elke dag meer. Daar is baie om te leer, maar moenie druk voel om alles dadelik te leer nie. Onthou, in werkplekomgewings sal jy gewoonlik saam met ander wees. Fokus op die honing van jou vaardighede in een aspek van webontwikkeling op 'n keer. Moenie oorweldig word nie, en jy sal 'n pro wees voordat jy dit weet.