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


Hack - De taal achter Facebook

Hack is de nieuwe taal achter Facebook, dat tot op heden nog steeds het populairste sociale netwerk is. Het is een web-programmeertaal die is uitgevonden en (recentelijk) open source is van Facebook . Het bedrijf beweert dat de taal programmeurs helpt programma's sneller te coderen en fouten vroeg en gemakkelijk te voorkomen.

Hack is een taal die wordt gebruikt om complexe websites met grote snelheden te bouwen en tegelijkertijd ervoor te zorgen dat de broncode van de site goed is georganiseerd en relatief vrij is van fouten . Dankzij de "veiligheidsnet" -functies kunnen programmeurs veiliger code schrijven, waardoor de kans kleiner wordt dat ze later in moeilijkheden raken.

In dit bericht zullen we kijken naar Hack en enkele van zijn functies die aantoonbaar beter zijn dan PHP, momenteel de populairste web-programmeertaal die de meeste websites bestuurt. De hack is gebouwd om te draaien op de HHVM virtuele machine van Facebook, waarvan bekend is dat deze superieure prestaties levert .

De dynamiek van een probleem

In 2003, toen Mark Zuckerberg begon met het bouwen van Facebook, gebruikte hij een webontwikkelingstool genaamd "PHP". Het was destijds de meest populaire en (relatief) eenvoudige programmeertaal om met grote snelheid dynamische websites te maken .

PHP is een dynamisch getypeerde taal, wat betekent dat u geen tijd hoeft te besteden aan het definiëren van variabelen en als u eenmaal uw code hebt voltooid, kunt u deze bijna onmiddellijk uitvoeren. Dit vereenvoudigt de codering en vermindert de ontwikkeltijd en -inspanning, maar verhoogt de kans op fouten, die pas op het moment van uitvoering zijn lelijke kop toont, aanzienlijk.

Kan het niet veroorloven om fouten te hebben

Dit intensiveert het probleem verder omdat je de code moet uitvoeren om fouten te vinden (in tegenstelling tot statisch getypte talen). Dee fouten blijven groeien met de groei van de codebase. Kleine projecten staan ​​misschien niet voor een groot probleem, maar met een grote codebase met 5 fouten per duizendregelige code die tot 5000 fouten kan bevatten - dat is veel om te debuggen.

De situatie verslechtert met cloud-schaal bedrijven zoals Facebook wanneer duizenden programmeurs elke dag nieuwe code schrijven en verzenden. Ze kunnen zich ook geen fouten in hun code veroorloven, wat ertoe kan leiden dat gebruikersgegevens worden aangetast. Dus wat is er te doen?

Het wiel opnieuw uitvinden

Omdat Facebook's front-end voornamelijk in PHP was geschreven, zou het overschakelen naar een nieuwe taal betekenen dat de hele sitecode moet worden gemigreerd, wat niet alleen onpraktisch maar ook niet haalbaar is. Plus, als de programmeurs al gewend zijn aan PHP, vraagt ​​dit om een enorme herstart in human resources .

Gelukkig is er een betere oplossing - ze hebben opnieuw een taal verzonnen, afgeleid van PHP, die naast deze traditionele taal kan bestaan.

"Hack is geboren en we geloven dat het het beste biedt van zowel dynamisch getypeerde als statisch getypeerde talen, en dat het waardevol zal zijn voor projecten van elk formaat, " werd aangekondigd op de technische blog van Facebook.

Hack is gewoon beter PHP

Hack is in essentie "betere PHP". Afgeleid van PHP, werkt het naadloos samen met PHP voor snellere en veiligere webontwikkeling . Je kunt een project hebben dat PHP en Hack-code naast elkaar bevat en toch werkt het project zoals vereist. Dit is de belangrijkste functie die PHP-ontwikkelaars zal aantrekken om Hack te proberen. En moedig ze mogelijk aan om hun PHP-code geleidelijk over te zetten naar Hack.

Hack voegt primair de kracht van statisch typen toe aan PHP, samen met nog veel meer functies in andere moderne programmeertalen. Het is een taal die is ontwikkeld voor HHVM (HipHop Virtual Machine), een open source runtime-platform dat is gebouwd door Facebook om programma's uit te voeren die zijn geschreven in Hack en PHP.

De combinatie Hack en HHVM richt zich op een van de fundamenten van het moderne web: snelle app-ontwikkeling . Het was nog nooit zo eenvoudig om webapplicaties te testen en te debuggen, maar Hack verandert dat door programmeurs in staat te stellen vroeg fouten te detecteren zonder de ontwikkelingscyclus van PHP in gevaar te brengen. De conclusie van verschillende technische sites is dat Hack goed nieuws is.

Voordelen van Hack

De grootste verbetering die Hack biedt ten opzichte van PHP is het verwijderen van onnodige en foutgevoelige functies . Hack voegt veiligheidsnetten toe (zonder je te vertragen), zodat je minder fouten maakt. Het voegt ook verschillende functies toe die worden gevonden in moderne programmeertalen, wat het schrijven van code in Hack leuk maakt.

Hack is zowel een dynamisch getypeerde als statisch getypeerde webontwikkelingstaal, waarmee het beste van beide getypte talen wordt bereikt. Dit wordt eigenlijk "geleidelijk typen" genoemd, een type systeem waarmee variabelen tijdens het compileren of tijdens runtime kunnen worden getypt. Het kan uw code uitvoeren zonder te compileren - u kunt een bestand bewerken en de webpagina opnieuw laden en de wijzigingen direct zien.

Andere mogelijkheden

Hack brengt functies binnen zoals collecties, lambda-expressies en runtime-handhaving van retourtypen en parametertypen, toevoeging van generieke producten, asynchrone programmering, enz.

Deze nieuwe functies zijn niet-obstructief, dus de code geschreven met behulp van Hack ziet er nog steeds hetzelfde uit als de traditionele dynamische code die is gemaakt met behulp van PHP. Bovendien zullen ingenieurs de code beter begrijpen omdat statisch typen veel op documentatie lijkt.

Wat is niet zo voordelig

Het grootste nadeel van Hack is dat het de functies heeft verlaten die van PHP een eenvoudiger taal voor beginners maken. U kunt de HTML niet rechtstreeks in uw broncode insluiten en u kunt geen code laten schrijven buiten een functie of klasse. Maar dit is een relatief klein probleem. Hoewel het beginners misschien zal afschrikken, zouden PHP-programmeurs het niet moeilijk vinden om zich aan te passen aan Hack en zullen ze waarschijnlijk de voordelen van Hack overtuigend genoeg vinden om te worden geaccepteerd.

Facebook heeft Hack al op zijn website gezet, dat meer dan 1, 2 miljard mensen ter wereld bedient. "We hebben Hack op Facebook geïmplementeerd en het is een groot succes geweest.In het afgelopen jaar hebben we bijna onze volledige PHP-codebase gemigreerd naar Hack", verklaarde het artikel op de Facebook Engineering-blog.

De toekomst

Het wordt interessant om te zien hoe de PHP-gemeenschap in het algemeen deze nieuwe taal gaat gebruiken. We hopen dat Hack wordt ondersteund op andere PHP virtuele machines en parsers, wat codemigratie zal vereenvoudigen.

Een open source-project betekent ook dat het niet afhankelijk is van zijn oorspronkelijke makers voor nieuwe functies en bugcorrecties . In de toekomst kunnen we een geweldige functie tegenkomen die door de open source-ontwikkelaarsgemeenschap is voorgesteld of toegevoegd aan deze nieuwe taal.

Bovendien werkt Facebook ook aan het verbeteren van Hack. Ze hebben de taal toch gemaakt. "Dit is slechts de eerste stap, en we zijn toegewijd aan het blijven ontwikkelen van deze software om de ontwikkeling nog eenvoudiger te maken voor zowel onze eigen technici als de bredere gemeenschap", zoals gepost op de Facebook Engineering-blog.

Wat denk je over Hack? Denk je dat Hack beter is dan PHP? Kan het PHP vervangen? Plaats uw antwoorden alstublieft via opmerkingen.

20 prachtige ruimtethema-ontwerpen voor uw inspiratie

20 prachtige ruimtethema-ontwerpen voor uw inspiratie

Niets komt zelfs maar in de buurt van de fascinerende schoonheid van de ruimte . Al die planeten, sterren, satellieten en raketten zijn de attributen van ruimte waar we zoveel van houden. Dankzij de technologische vooruitgang in het veld, kan elke ruimte-liefhebber nu de nachtelijke hemel verkennen door gewoon achter zijn computer te zitten

(Technische en ontwerptips)

8 Technologieën die toekomstige klaslokalen vorm zullen geven

8 Technologieën die toekomstige klaslokalen vorm zullen geven

Wat houdt de toekomst van leren in? Hoe zullen klaslokalen van de toekomst eruit zien? Opkomende technologieën zoals cloud computing, augmented reality (AR) en 3D-printen banen de weg voor de toekomst van het onderwijs op manieren die we misschien nog niet hebben gezien. Op zijn minst kunnen we echter extrapoleren van wat deze veelbelovende technologieën zijn en voorspellen hoe scholen ze in de toekomst zullen adopteren.M

(Technische en ontwerptips)