
Brian Curtis
0
4891
507
Hace 10 años, en un dormitorio de Harvard, se lanzó Facebook. Inicialmente, era solo Mark Zuckerberg pirateando una base de código que consistía exclusivamente en código PHP ¿Cómo funciona Facebook? The Nuts and Bolts [Explicación de la tecnología] ¿Cómo funciona Facebook? The Nuts and Bolts [Explicación de la tecnología], interactuando con una base de datos MySQL.
Desde entonces, ha aumentado en tamaño, tanto en términos de usuarios como de desarrolladores que trabajan en una base de código que está en constante crecimiento. Pronto se hizo evidente que si bien PHP era un gran lenguaje para comenzar Facebook, ya no se adaptaba a las necesidades de la empresa.
Y así crearon Hack, que es un lenguaje especialmente diseñado que permite un desarrollo más rápido, equipos de desarrollo más grandes, al tiempo que mantienen la interoperabilidad completa con el popular lenguaje de programación PHP. es el lenguaje que usan Facebook y Wikipedia para atender miles de millones de solicitudes diarias; El lenguaje de facto utilizado para enseñar a la gente la programación web. Es maravillosamente simple, pero brillantemente poderoso.. .
La recepción de Hack por parte de la comunidad de desarrollo ha sido impresionante. La gente está muy entusiasmada con un lenguaje que es rápido, pero fácil de desarrollar, al tiempo que mantiene la compatibilidad con las numerosas bibliotecas PHP existentes en este momento..
Aquí está todo lo que necesita saber sobre la instalación de Hack, así como también cómo mojarse los pies con el idioma..
¿Qué tiene de especial Hack??
Gran pregunta Probablemente sepa que algunos lenguajes de programación se compilan en código de bytes que se ejecutan en una máquina virtual especial (como Java y Clojure), mientras que otros lenguajes (como PHP, Ruby y Python) se ejecutan en un intérprete.
Probablemente también sepa que los idiomas interpretados son inherentemente más lentos que los idiomas que producen código de bytes que está optimizado específicamente para las máquinas virtuales en las que se ejecutan. Es por esta razón que hay dialectos de Python y Ruby (llamados Jython y JRuby respectivamente) que se ejecutan en la máquina virtual Java ¿Qué es la máquina virtual Java y cómo funciona? ¿Qué es la máquina virtual Java y cómo funciona? Aunque no es estrictamente necesario saber que funciona para programar en Java, es bueno saberlo porque puede ayudarte a convertirte en un mejor programador. .
Hack se ejecuta únicamente en su propia máquina virtual, llamada la máquina virtual Hip Hop. Es esta VM la que ha sido utilizada por Facebook para escalar miles de millones de usuarios diarios.
Hackear es más que la VM sobre la que se ejecuta. También viene con anotaciones de tipo, lo que le permite declarar variables basadas en el contenido que almacenarán (cadenas, enteros, booleanos), funciones lambda (anónimas) y genéricos..
Instalando Hack
Tengo algunas malas noticias para los usuarios de OS X y Windows. Hack no funciona en estas plataformas, o el soporte es tan escaso que no vale la pena discutirlo. En su lugar, tendrá que encender un VPS de Linux. Aprenda todo sobre servidores privados virtuales en dos minutos Aprenda todo sobre servidores privados virtuales en dos minutos Con tantos servicios de alojamiento web disponibles, es difícil decidir cuál es el correcto. se adapta a sus necesidades o VM.
Por pura pereza, terminé decidiéndome a crear un VPS de Linux con Digital Ocean, que es uno de mis proveedores de VPS favoritos. Creé una pequeña gota con Ubuntu 13:10 Ubuntu 13.10 lanzado con Friends Scope, Dash Filters y más Ubuntu 13.10 lanzado con Friends Scope, Dash Filters y más Canonical ha lanzado la última y excelente versión de la fuente gratuita y de código abierto más popular del mundo sistema operativo de escritorio, Ubuntu 13.10 “Salamander Salsas”. , y luego instalé Hack con los siguientes comandos.
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 update sudo apt-get upgrade sudo apt-get install hhvm-nightly
Como puede ver aquí, descargo la clave GPG para los repositorios de Hack; agregar el repositorio a mi lista de fuentes; actualizar mis definiciones de fuentes; actualizar mi sistema y luego instalar Hack. Simple, realmente.
Hackear con Hack
Ahora, es hora de escribir un código de Hack. Comenzaremos con el programa probado 'Hello World'. Este no se ejecutará en un navegador web, sino que imprimirá 'Hello World' en la consola.
Cree un nuevo archivo llamado HelloWorld.php (sí, por alguna razón Hack insiste en usar .php como su extensión de archivo predeterminada) en su editor de texto favorito (mi opción preferida es VIM Las 7 razones principales para darle una oportunidad al editor de texto Vim Las 7 razones principales para darle una oportunidad al editor de texto Vim Durante años, he probado un texto editor tras otro. Lo que sea, lo probé. Utilicé todos y cada uno de estos editores durante más de dos meses como mi principal editor diario. De alguna manera, yo ...) y agregué las siguientes líneas.
Que debería imprimir Hola Mundo a la consola cuando se ejecuta con 'hhvm', así.
Muy bien, intentemos ejecutar un programa Hack en el navegador. Primero, vamos a necesitar instalar Apache y PHP. Ya he mencionado esto en un artículo anterior ¿Se inscribió para el alojamiento web solo para SSH? No se preocupe: ¿instala fácilmente cualquier software web registrado para alojamiento web solo SSH? No se preocupe: instale fácilmente cualquier software web ¿No sabe lo primero sobre el funcionamiento de Linux a través de su potente línea de comandos? No te preocupes más. , pero para refrescar tu memoria, lo revisaré nuevamente. Ejecute los siguientes comandos.
sudo apt-get install apache2 sudo apt-get install php5
También puede instalar Apache, PHP, MySQL y muchas otras utilidades útiles con el siguiente comando. (No olvide el cursor al final de la línea: el servidor de la lámpara no es un paquete único, sino una colección)
sudo apt-get install lamp-server ^
Se recomienda ejecutar esto si planea echar un vistazo más de cerca y más serio al desarrollo web con el lenguaje de programación Hack, ya que contiene muchas herramientas que puede encontrar bastante útiles..
Una vez que hayas hecho eso, reinicia la máquina virtual Hip Hop con el siguiente comando.
sudo /etc/init.d/hhvm start
Compruebe que Apache se esté ejecutando abriendo un navegador y navegando a la dirección IP de su servidor web. Si todo está funcionando, deberías ver esto.
¡Excelente! Ahora, navegue a / var / www y elimine la página que acaba de ver (llamada 'index.html') con los siguientes comandos.
cd / var / www rm index.html
Ahora, cree un archivo llamado index.php y agregue las mismas líneas que escribió antes.
Hola Mundo";
Una vez que haya hecho eso, vuelva a visitar su servidor web con su navegador web elegido.
Como puede ver, hay algo extraño con Hack reconociendo el final de una cadena. Como resultado, me gustaría aprovechar esta oportunidad para recordarle que si bien esta tecnología es bastante buena, todavía es bastante simple y posiblemente no esté lista para implementaciones de producción. Sin embargo, agregaré que estoy ejecutando la versión nocturna de Hack, que es la versión más innovadora disponible. Como resultado, no debería ser demasiado sorprendente que algunas cosas no funcionen perfectamente bien.
Si conoce PHP, puede reconocer la declaración 'Eco' que utilicé antes. Bueno, Hack puede llamar a cualquier función PHP. Aquí estoy llamando 'phpinfo ();' dentro de un programa de Hack.
Algunos Hack Funcionalidad Específica
Hack trae mucho a la mesa, con respecto a las nuevas características del lenguaje. Discutí algunos de ellos antes, incluidas las declaraciones de tipo. Lamentablemente, no podremos cubrir todo en este artículo, pero pensé que sería una buena idea ver cómo Hack maneja las definiciones de tipo.
Entonces, para recapitular, las definiciones de tipo son donde define una variable en función del contenido que contendría. ¿Cómo funciona? Bueno un poco asi.
Como puede ver, comenzamos con la declaración de tipo, seguida del nombre de la variable (comenzando con un signo de dólar, muy parecido al PHP tradicional), seguido del valor asignado a la variable.
Esto también entra en juego con las declaraciones de funciones. Cuando declara una función y le pasa un parámetro, debe declarar el tipo de variable que le pasará. Si no lo hace, o pasa el tipo incorrecto de variable, espere lamentos y crujir de dientes.
Entonces, ¿cómo funciona esto realmente en Hack? Vamos a averiguar.
Cree un nuevo archivo llamado 'function.php' y escriba las siguientes líneas.
Si ha usado PHP en el pasado, es posible que pueda descifrar algo de esto. Hemos creado una función, que hemos llamado 'hola'. Luego le pasamos una cadena, que luego se repite en la consola, siguiendo la palabra 'Hola'.
Pero que es eso : nulo ¿poco? Bueno, en Hack, tenemos que decirle a la computadora si la función devolverá un valor. Si no es así, decimos que la función es 'nula'. Como todo con Hack, tenemos que declarar el tipo de valores que se devolverán.
Luego ejecutamos este código con la aplicación de línea de comando 'hhvm', y deberíamos ver esto.
Conclusión
Hay mucho que amar de Hack.
Es un lenguaje que le obliga a escribir un mejor código, a la vez que es fácil de entender y ridículamente rápido. También cuenta con el apoyo de una de las compañías de tecnología más grandes en este momento, que lo usan a diario en la producción para hacer que uno de los sitios más grandes en existencia se adapte a millones de usuarios.
A pesar de eso, sigue siendo un lenguaje muy nuevo. De hecho, escribí este artículo al día siguiente de su lanzamiento al público. Es difícil recomendar que alguien comience a ponerlo en producción en este momento, pero ciertamente juegue con él..
Pero esa es solo mi opinión. ¿Lo intentarás? Déjame un comentario a continuación y hazme saber lo que piensas.