nl.hideout-lastation.com
Paradijs Voor Ontwerpers En Ontwikkelaars


MEAN versus LAMP Stack: voors en tegens

Webstacks zijn in de afgelopen decennia geëvolueerd met verbeteringen in technologie en backend-talen. Twee van de meest populaire webstacks zijn LAMP en MEAN. Ze vertrouwen op twee verschillende technologieën voor backend-talen, databases en serveromgevingen. De "stapel" term verwijst naar technologieën die op elkaar stapelen om een ​​webserveromgeving te creëren .

In dit artikel wil ik deze twee webstacks verduidelijken door te kijken naar hun technologische keuzes, zowel voor- als nadelen. Waar blinkt elke stapel uit? En welke soorten projecten zouden het meest van beide opties profiteren? Als u nieuw bent met webtechnologieën of als u alleen meer wilt weten over deze twee stapels, heeft deze handleiding alles wat u nodig hebt.

Traditionele LAMP-ontwikkeling

De meeste ontwikkelaars zouden de traditionele LAMP-stack moeten kennen, omdat deze al sinds het eerste web bestaat. LAMP staat voor Linux, Apache, MySQL en PHP . Elk van deze zijn individuele softwarepakketten die worden gecombineerd om een ​​veelzijdige serveroplossing te vormen.

De grootste reden om bij LAMP te blijven, is veiligheid en brede ondersteuning . Het bestaat al tientallen jaren en het is een beproefde methode om websites te hosten.

Alle back-endtechnologieën zoals PHP en MySQL zijn bekend en worden ondersteund door elke grote hostingprovider . Als je aan een LAMP-stack werkt, kun je in principe overal hosten. Bovendien krijgt u toegang tot de meest populaire CMS-engines . WordPress, Drupal en Joomla draaien allemaal op PHP / MySQL.

Er zijn aanpasbare opties binnen de LAMP-architectuur zoals LEMP die Apache met nginx vervangt. U kunt ook een variant op een Windows-server als een WAMP-stack uitvoeren.

Alle kernsoftware - inclusief Apache, MySQL en PHP - was echter open source en voornamelijk gemaakt voor Linux. Daarom is Linux het meest logisch voor een serveromgeving en daarom heeft LAMP de tand des tijds goed doorstaan ​​voor moderne webontwikkeling.

De meeste ontwikkelaars gaan deze route omdat het de eenvoudigste manier is om een ​​website online te krijgen . U vindt veel ondersteuning op forums die alles omvatten wat u nodig hebt om een ​​LAMP-omgeving te configureren en problemen op te lossen. U kunt bijvoorbeeld deze ServerFault-vraag bekijken voor meer informatie.

JavaScript Backend met MEAN

Node.js is de nieuwste technologie voor ontwikkelaars die vastbesloten is om schaalbare applicaties te gebruiken die gebouwd zijn met JavaScript. Node drijft de MEAN-stack aan en biedt een primair voordeel: alles werkt in één taal .

MEAN staat voor MongoDB, Express.js, Angular.js en natuurlijk Node.js. Dit acroniem verplicht geen serverbesturingssysteem of serversoftware. Een MEAN-stack kan op elk besturingssysteem worden uitgevoerd en het knooppunt heeft zelfs een eigen server om JS op de backend af te handelen.

U vindt veel documentatie en ondersteuning op de Mean.io-website.

Hoewel deze stapel veel aandacht heeft gekregen, is deze nog lang niet in de buurt van de hoeveelheid stabiele ondersteuning als een traditionele LAMP-stack.

Dus waarom zou iemand gaan met MEAN? Omdat het uiteindelijk sneller en gemakkelijker te schalen is . MongoDB is een NoSQL-database die zoekopdrachten optimaliseert. Het gebruik van JavaScript volstack verbetert ook de ontwikkeling omdat één taal van toepassing is op alle frontend- en backend-werkzaamheden.

Plus veel andere JS-raamwerken raken de markt als stabiele oplossingen. MEAN kan bijvoorbeeld worden omgeschakeld naar een MEEN-stack die Angular with Ember vervangt.

Programmeurs zullen genieten van de MEAN-stapel omdat het code scheidt voor onderhoud en groei . Dit maakt het eenvoudiger om uw JavaScript-webapps te organiseren zodat ze in een natuurlijke omgeving worden uitgevoerd .

Over dit onderwerp valt veel te leren, en dat is waarschijnlijk de grootste toetredingsdrempel voor nieuwe ontwikkelaars. Het leren van alle technologieën die nodig zijn om een ​​MEAN-app te beheren, kan maanden duren. Maar als je van Node houdt en alles op JavaScript wilt laten draaien, is dit de moeite waard.

Hier zijn enkele tutorials voor beginners om u op weg te helpen.

  • Een absolute beginnershandleiding voor Node.js
  • Felix's Node.js-beginnersgids
  • Inleiding tot Express.js
  • Leer om moderne web-apps met MEAN te bouwen
  • Aan de slag met Node.js, Express en MongoDB

PHP vs. Node

PHP bestaat al sinds het midden van de jaren 90 en is echt de meest populaire back-endtaal. Veel webontwikkelaars starten met (of leren uiteindelijk) PHP omdat het zo overheersend is op webplatforms en hostingproviders.

Knooppunt is een nieuwer kader, maar de populariteit ervan is buitengewoon snel gestegen. Dit omvat de populariteit van NPM als pakketbeheerder voor webontwikkelaars en breidt zich verder uit in krachtige frontend-frameworks zoals Angular 2.

Het andere voordeel van Node is dat het wordt geleverd met een eigen webserver . JavaScript staat aan de basis van alles op een MEAN-stack, dus als je van JS houdt, dan vind je het geweldig om MEAN-webapps te bouwen.

Veel ontwikkelaars zijn van mening dat PHP een slecht ontworpen taal is omdat de maker, Rasmus Lerdorf, het niet echt als een taal heeft ontworpen. PHP begon als een generieke oplossing voor websites en groeide snel uit tot een grote bibliotheek van niet-gerelateerde functies.

Maar met PHP 7, dat probeert veel fouten in de taal te herstellen, en met gratis OOP- frameworks, zoals Laravel, is PHP nu een veel betere taal dan ooit tevoren.

AFBEELDING: Stackoverloop

Het taaldebat komt dus neer op jouw persoonlijke keuze . Ben je dol op het schrijven van JavaScript? Dan is Node met een MEAN-stack misschien de moeite waard om te overwegen.

Als je PHP al kent, en je wilt vasthouden aan wat je weet, is LAMP ook een haalbare route.

Algemene voors en tegens:

Er zijn meerdere lagen van elke webstack te vergelijken, inclusief besturingssysteem, serversoftware, database en back-endtaal.

(1) De MEAN-stack omvat ook Angular, een frontend raamwerk. Er is geen verplicht raamwerk in een LAMP-stack, maar je kunt altijd je eigen framework toevoegen aan elke app die je bouwt.

(2) Met betrekking tot OS zoekt de LAMP-stack naar een Linux-derivaat. Linux is meestal de beste keuze voor een serveromgeving, ongeacht de stack, en het geldt ook voor MEAN.

(3) Nu is het besturingssysteem van de server slechts de computersoftware, maar het is niet de webserver-software . Om dit te krijgen heb je een programma nodig zoals Apache of Nginx. LAMP gebruikt Apache omdat het een van de meest stabiele keuzes is die beschikbaar zijn.

(4) MEAN maakt gebruik van de Node.js-server die deel uitmaakt van het knooppuntpakket . Het is nog steeds vrij nieuw, en hoewel er voldoende ondersteuning is, heeft Node nergens in de buurt van dezelfde community als Apache.

(5) Ook vereist een Node-server een backend van JavaScript (zonder uitbreidingen). Apache biedt de meeste backend-talen en er zijn veel gratis extensies voor meer ondersteuning. Maar vanaf nu heeft Apache niets voor Node-ondersteuning.

(6) Databasebeheer bevat het grootste verschil . LAMP gebruikt MySQL voor relationele gegevensopslag, terwijl MEAN MongoDB gebruikt, een niet-relationele database. Niet-relationele DB's zijn veel sneller en bieden een gemakkelijkere methode om te schalen met meer verkeer.

(7) Houd er rekening mee dat PHP niet alleen is beperkt tot MySQL . Het kan MongoDB en andere alternatieven zoals PostgreSQL of SQLite gebruiken. Het is gewoon zo dat de meeste PHP-ontwikkelaars MySQL kennen, dus het is de belangrijkste kandidaat voor een typische LAMP-stack.

(8) MEAN-stacks lopen doorgaans sneller en worden groter, maar vereisen veel meer tijd en serverkennis om het systeem te leren. LAMP-stacks zijn uitgeprobeerd en waar en ze komen out-of-the-box met de meest veilige infrastructuur en de breedste ondersteuning die je je kunt voorstellen.

(9) Programmeertalen vormen een groot verschil tussen de twee stapels. LAMP werkt voornamelijk op PHP met WordPress en het Laravel-framework. MEAN werkt aan ExpressJS / NodeJS voor de backend met AngularJS op de frontend.

(10) MEAN is JavaScript met een volledige stack en er is veel dat u moet leren om dat te laten draaien. Het is een frequente keuze van nieuwe startups die bereid zijn om de grenzen te verleggen in de ontwikkeling van webapps. LAMP is traditioneler met JS op de frontend, PHP op de backend . Het is gemaakt voor mensen die gewoon zonder al te veel zorgen websites online willen krijgen .

Bekijk deze vergelijkingsgids om iets meer te leren. Geen van beide is goed of fout, alleen anders en gemaakt voor verschillende projecten.

Afsluiten

Ik zou zeggen dat de meeste websites leunen op de LAMP-stack, omdat deze is getest en veel nuttige Q & A-threads bevat die zijn geïndexeerd in Google. MEAN groeit nog steeds en heeft ook veel steun, maar is misschien wel technischer dan de meeste mensen willen aanpakken.

Voel je vrij om beide te proberen en ze zelf te zien. Het is mogelijk om beide instellingen lokaal op uw computer te installeren en hierop verder te bouwen zonder een externe server.

En als u op zoek bent naar meer informatie over beide stacks, heb ik hieronder een aantal handige links verzameld.

  • Leer moderne webapps bouwen met MEAN (thinkster.io)
  • Docker LAMP Stack Admin (jessesnet.com)
  • Hoe installeer ik Linux, Apache, MySQL, PHP (LAMP) Stack op Debian 8 (digitalocean.com)

Zelf gehoste cloudopslag: Nextcloud versus ownCloud versus Seafile

Zelf gehoste cloudopslag: Nextcloud versus ownCloud versus Seafile

Ben je van plan je eigen Dropbox-achtige cloudopslag voor je team of bedrijf te bouwen? Hoewel er verschillende door uzelf gehoste cloudoplossingen zijn voor het maken van een privécloud, maar niet allemaal voldoen aan uw vereisten.Dat is de reden waarom ik in dit bericht de confrontatie aanga met de top drie van door uzelf gehoste cloudopslagoplossingen, namelijk Nextcloud, ownCloud en Seafile, om u te helpen het beste te kiezen.

(Technische en ontwerptips)

9 manieren waarop 3D-printen de wereld verandert

9 manieren waarop 3D-printen de wereld verandert

Hobbyist 3D-printen is een van de populairste trends in de technische wereld en mensen hebben het gebruikt om allerlei dingen te creëren voor entertainment, kunst, werk, onderwijs, medische behoeften en meer. We komen langzaam te weten wat de mogelijkheden zijn die 3D-geprinte materialen op de plaat kunnen brengen in verschillende industrieën, waaronder productie, onderwijs, ruimte en zelfs wapens.I

(Technische en ontwerptips)