Facebook will mit Hack ein besseres PHP aufbauen. Spoiler Es ist wirklich gut.
Vor zehn Jahren wurde Facebook in einem Harvard-Schlafsaal gestartet. Anfänglich war es nur Mark Zuckerberg, der eine Codebase aushackte, die ausschließlich aus PHP-Code bestand. Wie funktioniert Facebook? Die Schrauben und Muttern [Technologie erklärt] Wie funktioniert Facebook? The Nuts and Bolts [Technologie erklärt] Weitere Informationen zur Interaktion mit einer MySQL-Datenbank.
Seitdem hat es an Größe zugenommen, sowohl in Bezug auf Benutzer als auch Entwickler, die an einer Codebase arbeiten, die ständig wächst. Es stellte sich bald heraus, dass PHP zwar eine großartige Sprache für den Einstieg bei Facebook war, jedoch nicht mehr den Anforderungen des Unternehmens entsprach.
Und so haben sie Hack geschaffen, eine eigens entwickelte Sprache, die eine schnellere Entwicklung und größere Entwicklungsteams ermöglicht und gleichzeitig die volle Interoperabilität mit der beliebten Programmiersprache PHP unterhält. Mit PHP bauen lernen: Ein Crash-Kurs Mit PHP bauen lernen: Ein Crash-Kurs PHP ist die Sprache, in der Facebook und Wikipedia täglich Milliarden von Anfragen bedienen. die de-facto-Sprache, die zum Unterrichten von Web-Programmierern verwendet wird. Es ist wunderschön einfach, aber genial kraftvoll. Weiterlesen .
Der Empfang von Hack durch die Entwicklergemeinde war einfach atemberaubend. Die Leute sind enorm begeistert von einer Sprache, die schnell und dennoch einfach zu entwickeln ist, während die Abwärtskompatibilität mit den vielen PHP-Bibliotheken besteht, die derzeit existieren.
Hier finden Sie alles, was Sie über die Installation von Hack wissen müssen und wie Sie mit der Sprache nass werden.
Was ist das Besondere an Hack??
Tolle Frage. Sie wissen wahrscheinlich, dass einige Programmiersprachen zu Byte-Code kompiliert werden, der auf einer speziellen virtuellen Maschine (wie Java und Clojure) ausgeführt wird, während andere Sprachen (wie PHP, Ruby und Python) in einem Interpreter ausgeführt werden.
Sie wissen wahrscheinlich auch, dass interpretierte Sprachen von Natur aus langsamer sind als Sprachen, die Bytecode erzeugen, der speziell für die virtuellen Maschinen optimiert ist, auf denen sie ausgeführt werden. Aus diesem Grund gibt es Dialekte von Python und Ruby (genannt Jython bzw. JRuby), die auf der Java Virtual Machine ausgeführt werden. Was ist die Java Virtual Machine und wie funktioniert das? Was ist die Java Virtual Machine und wie funktioniert sie? Obwohl es nicht unbedingt notwendig ist zu wissen, dass es funktioniert, um in Java zu programmieren, ist es dennoch gut zu wissen, da es Ihnen dabei helfen kann, ein besserer Programmierer zu werden. Weiterlesen .
Hack läuft eindeutig auf einer eigenen virtuellen Maschine, der Hip Hop Virtual Machine. Diese VM wurde von Facebook verwendet, um Milliarden von täglichen Nutzern zu skalieren.
Hack ist mehr als die VM, auf der er läuft. Es enthält auch Typanmerkungen, mit denen Sie Variablen basierend auf dem Inhalt deklarieren können, den sie speichern (Zeichenfolge, Ganzzahl, Boolean), Lambda-Funktionen (anonyme Funktionen) sowie Generics.
Hack installieren
Ich habe schlechte Neuigkeiten für Benutzer von OS X und Windows. Hack funktioniert auf diesen Plattformen entweder nicht oder der Support ist so unübersichtlich, dass es nicht wert ist, darüber zu diskutieren. Stattdessen müssen Sie entweder einen Linux-VPS starten. Erfahren Sie alles über virtuelle private Server in zwei Minuten. Erfahren Sie alles über virtuelle private Server in zwei Minuten. Bei so vielen hervorragenden Webhosting-Diensten ist es schwierig, sich für den richtigen zu entscheiden passen Sie Ihre Bedürfnisse an. Lesen Sie mehr oder VM.
Aus reiner Faulheit entschied ich mich, mit Digital Ocean einen Linux-VPS zu schaffen, einen meiner Lieblings-VPS-Anbieter. Ich habe ein kleines Droplet erstellt, auf dem Ubuntu 13:10 läuft Ubuntu 13.10 mit Freunden Scope, Dash-Filter und mehr gestartet Ubuntu 13.10 mit Freunden Scope, Dash-Filter und mehr gestartet Canonical hat die neueste und großartigste Version der weltweit beliebtesten kostenlosen und Open-Source-Version herausgebracht Desktop-Betriebssystem, Ubuntu 13.10 “Saucy Salamander”. Lesen Sie mehr und installieren Sie dann Hack mit den folgenden Befehlen.
wget -O - http://dl.hhvm.com/conf/hhvm.gpg.key | sudo apt-key add - echo deb http://dl.hhvm.com/ubuntu saucy main | sudo tee /etc/apt/sources.list.d/hhvm.list sudo apt-get Aktualisierung sudo apt-get Aktualisierung sudo apt-get install hhvm-nightly
Wie Sie hier sehen können, lade ich den GPG-Schlüssel für die Hack-Repositories herunter. füge das Repository meiner Quellenliste hinzu; meine Quellendefinitionen aktualisieren; Aktualisieren Sie mein System und installieren Sie dann Hack. Ganz einfach.
Hacking mit Hack
Nun ist es Zeit, einen Hack-Code zu schreiben. Wir beginnen mit dem bewährten 'Hello World' Programm. Dieser wird nicht in einem Webbrowser ausgeführt, sondern "Hello World" wird auf die Konsole gedruckt.
Erstellen Sie eine neue Datei mit dem Namen HelloWorld.php (ja, aus irgendeinem Grund besteht Hack auf der Verwendung .php als Standarddateierweiterung) in Ihrem bevorzugten Texteditor (meine bevorzugte Wahl ist VIM Die 7 wichtigsten Gründe, dem Vim-Texteditor eine Chance zu geben Die 7 wichtigsten Gründe, dem Vim-Texteditor eine Chance zu geben Seit Jahren habe ich einen Text ausprobiert Editor nach dem anderen. Sie nennen es, ich habe es ausprobiert. Ich habe jeden einzelnen dieser Editoren für über zwei Monate als meinen Haupteditor für den täglichen Gebrauch verwendet. Irgendwie habe ich… Read More) und die folgenden Zeilen hinzugefügt.
Was sollte ausgedruckt werden Hallo Welt auf der Konsole, wenn mit 'hhvm' lief, wie so.
Okay, lass uns versuchen, ein Hack-Programm im Browser auszuführen. Zuerst müssen wir Apache und PHP installieren. Ich habe dies in einem früheren Artikel angesprochen. Für SSH-only Web Hosting angemeldet? Machen Sie sich keine Sorgen - installieren Sie einfach alle Web-Software, die für das reine SSH-Webhosting angemeldet ist. Machen Sie sich keine Sorgen - Installieren Sie einfach jede Web-Software. Sie wissen nicht, was Linux über seine leistungsstarke Befehlszeile ausübt? Mach dir keine Sorgen mehr. Lesen Sie mehr, aber um Ihr Gedächtnis aufzufrischen, gehe ich es noch einmal durch. Führen Sie die folgenden Befehle aus.
sudo apt-get install apache2 Sudo apt-get install php5
Mit dem folgenden Befehl können Sie auch Apache, PHP, MySQL und eine Reihe anderer nützlicher Dienstprogramme installieren. (Vergessen Sie nicht die Einfügemarke am Ende der Zeile - lampenserver ist kein einzelnes Paket, sondern eine Sammlung)
sudo apt-get install lamp-server ^
Es wird empfohlen, dies auszuführen, wenn Sie die Web-Entwicklung mit der Programmiersprache Hack näher betrachten möchten, da sie viele Tools enthält, die Sie als sehr nützlich erachten könnten.
Starten Sie anschließend die Hip Hop-VM mit dem folgenden Befehl neu.
Sudo /etc/init.d/hhvm start
Überprüfen Sie, ob Apache ausgeführt wird, indem Sie einen Browser öffnen und zur IP-Adresse Ihres Webservers navigieren. Wenn alles läuft, sollten Sie dies sehen.
Großartig! Navigieren Sie nun zu / var / www und entfernen Sie die soeben gesehene Seite ("index.html") mit den folgenden Befehlen.
cd / var / www rm index.html
Erstellen Sie nun eine Datei namens index.php und fügen Sie die gleichen Zeilen hinzu, die Sie zuvor geschrieben haben.
Hallo Welt";
Wenn Sie dies getan haben, besuchen Sie Ihren Webserver erneut mit dem von Ihnen gewählten Webbrowser.
Wie Sie sehen können, ist es ein bisschen seltsam, wenn Hack das Ende eines Strings erkennt. Daher möchte ich diese Gelegenheit nutzen, um Sie daran zu erinnern, dass diese Technologie zwar ziemlich cool ist, aber immer noch ziemlich roh ist und möglicherweise nicht für Produktionsbereitstellungen bereit ist. Ich füge jedoch hinzu, dass ich die nächtliche Version von Hack betreibe, die die verblüffendste Version ist, die verfügbar ist. Daher sollte es nicht überraschen, dass manche Dinge nicht perfekt laufen.
Wenn Sie PHP beherrschen, erkennen Sie möglicherweise die 'Echo'-Anweisung, die ich zuvor verwendet habe. Nun, Hack kann jede PHP-Funktion aufrufen. Hier rufe ich 'phpinfo ();' innerhalb eines Hack-Programms.
Einige hackspezifische Funktionen
Hack bringt in Bezug auf neue Sprachfunktionen eine ganze Menge auf den Tisch. Ich habe bereits einige davon besprochen, einschließlich Typdeklarationen. Leider werden wir in diesem einen Artikel nicht alles behandeln können, aber ich dachte mir, es wäre eine gute Idee, zu sehen, wie Hack mit Typdefinitionen umgeht.
Um es zusammenzufassen: In Typdefinitionen definieren Sie eine Variable basierend auf dem Inhalt, den sie enthalten würde. Wie funktioniert das? Nun, ein bisschen so.
Wie Sie sehen, beginnen wir mit der Typdeklaration, gefolgt vom Namen der Variablen (beginnend mit einem Dollarzeichen, ähnlich wie in traditionellem PHP), gefolgt von dem der Variablen zugewiesenen Wert.
Dies kommt auch bei Funktionsdeklarationen zum Tragen. Wenn Sie eine Funktion deklarieren und einen Parameter übergeben, müssen Sie den Variablentyp angeben, den Sie übergeben möchten. Wenn Sie dies nicht tun oder den falschen Variablentyp eingeben, erwarten Sie ein Wehklagen und ein Knirschen der Zähne.
Wie funktioniert das eigentlich bei Hack? Lass es uns herausfinden.
Erstellen Sie eine neue Datei mit dem Namen 'function.php' und schreiben Sie die folgenden Zeilen.
Wenn Sie in der Vergangenheit PHP verwendet haben, können Sie möglicherweise etwas davon entschlüsseln. Wir haben eine Funktion erstellt, die wir "Hallo" nennen. Dann übergeben wir ihm eine Zeichenkette, die an die Konsole weitergeleitet wird, gefolgt vom Wort "Hello"..
Aber was ist das? : nichtig bisschen? In Hack müssen wir dem Computer mitteilen, ob die Funktion einen Wert zurückgibt. Wenn nicht, sagen wir, dass die Funktion "leer" ist. Wie alles bei Hack müssen wir die Art der Werte angeben, die zurückgegeben werden.
Wir führen diesen Code dann mit der Befehlszeilenanwendung 'hhvm' aus und sollten dies sehen.
Fazit
Es gibt viel zu lieben über Hack.
Es ist eine Sprache, die Sie dazu auffordert, besseren Code zu schreiben, dabei leicht verständlich und lächerlich schnell ist. Das Unternehmen wird derzeit von einem der größten Technologieunternehmen unterstützt, das täglich in der Produktion einen der größten Standorte in der Größenordnung von Millionen von Benutzern erstellt.
Trotzdem ist es noch eine sehr neue Sprache. Tatsächlich habe ich diesen Artikel am Tag nach der Veröffentlichung veröffentlicht. Es ist schwer zu empfehlen, dass jeder beginnt, es jetzt in Betrieb zu nehmen, aber auf jeden Fall mit ihm zu spielen.
Aber das ist nur meine Meinung. Wirst du es versuchen? Schreiben Sie mir einen Kommentar und lassen Sie mich wissen, was Sie denken.
Erfahren Sie mehr über: Apache Server, Programmierung, Webentwicklung.