Programmering

Facebook open-source hackkodegenerator

Fortsat med sine open source-bestræbelser har Facebook open source Hack Codegen, et bibliotek til automatisk generering af hack-kode.

Hack er Facebooks spinoff af PHP-sproget, der arbejder med den virtuelle HHVM-maskine. Biblioteket genererer i mellemtiden kode, der er skrevet i underskrevne filer for at forhindre uønskede ændringer. "Ideen bag at skrive kode, der skriver kode, er at hæve abstraktionsniveauet og reducere kobling," sagde Facebook på sin GitHub-side for Hack Codegen.

"At være i stand til at generere kode gennem automatisk kodegenerering gør det muligt for programmører at øge abstraktionsniveauet ved at skabe rammer, der er deklarative, og som oversættes til hack-kode af høj kvalitet," sagde Facebook-softwareingeniør Alejandro Marcu, i et blogindlæg. "Vi har brugt Hack Codegen på Facebook i et stykke tid. Efter at have set så meget intern succes åbnede vi dette bibliotek, så flere mennesker kunne drage fordel af det."

Før Hack CodeGen blev opbygget genererede Facebook hovedsagelig kode gennem sammenkædning af strenge og en hjælperfunktion. "Vi indså tidligt, at vi ville have brug for et godt bibliotek for at generere kode, da sammenkædning af strenge til generering af kode ikke rigtig skaleres," sagde Marcu. "På det tidspunkt udførte vi ikke så meget kodegenerering hos FB, hovedsagelig dumpning af værdier i arrays, så vi havde ingen gode værktøjer undtagen til at underskrive filer."

Facebook har været på en åben sourcing-oplevelse, der tilbyder teknologier som dets Nuclide IDE til web- og native mobiludvikling, dets React Native JavaScript-software og ComponentKit iOS UI-udviklingsrammen til open source. Facebooks Parse-gruppe planlægger i mellemtiden at gøre sine SDK'er tilgængelige via open source.