페이스북이 공개한 새로운 프로그래밍 언어 “Hack”

facebook building

2003년 저커버그가 페이스북을 처음 만들었을 때부터 페이스북의 모든 코드는 PHP로 이뤄졌었다. PHP의 큰 특징은 두가지가 있다: dynamically-typed (변수에 타입을 지정하지 않고 사용) 언어로 디테일을 최소화해서 개발을 빨리 할 수 있고, 코드가 실행됨과 동시에 컴파일이 되는 언어이기 때문에 배포를 빨리 할 수 있다. PHP는 개발과 배포를 빨리 할 수 있다는 점에서 그 당시 웹 개발자들 사이에서 인기 있던 언어였다.

하지만 dynamically-typed 언어는 코드베이스가 커질수록 코드를 읽기 어려워지고 에러를 쉽게 발견하지 못한다는 단점이 있다. 페이스북이 커지고 개발자들이 많아지면서 이 단점은 더더욱 두드러졌다. PHP의 문제로 인해 개발자들이 불편함을 겪지 않도록 하기 위해 페이스북에선 PHP에 static-typing (변수에 타입을 지정)의 기능을 추가한 언어인 Hack을 만들어 사용하기 시작했다. Hack은 dynamic-typing과 static-typing 둘 다 지원하면서 기존의 PHP 코드를 Hack 코드로 점차적으로 바꿀 수 있도록 하였다.

배포를 빨리 할 수 있는 PHP의 장점은 살리고 단점을 보완한 페이스북의 새 프로그래밍 언어 Hack은 어제 처음으로 외부에 공개되었다. 페이스북처럼 큰 웹 서비스에서 이미 Hack을 쓰고 있다는 점이 이 새로운 프로그래밍 언어의 우수성을 보증해주기도 하고, PHP 코드에서 Hack 코드로 전환이 쉽기 때문에 PHP를 사용하던 기존의 서비스들이 Hack을 쓰기 시작할 것이라는 추측이다.

관련 기사: Wired, Facebook Engineering Blog

Written by

Software Engineer at Oracle Hardware Management Pack team. Twitter: @jessiechoe

댓글 남기기