Loading AI tools
프로그래밍 언어 위키백과, 무료 백과사전
발라(영어: Vala)는 셀프 호스팅 컴파일러를 가진 객체 지향 프로그래밍 언어이다. 발라 컴파일러는 GObject 시스템을 사용하여 C 소스코드를 생성한다. 생성된 C 소스코드는 단지 발라 언어의 실행만을 위한 게 아니라 실제로 다른 C 언어 프로젝트에서도 사용할 수 있게끔 적절한 API를 가지고 있다.
발라는 문법적으로 자바나 C#과 비슷하며, 익명 함수, 시그널, 프로퍼티, 제네릭, 자동 메모리 관리, 예외 처리, 자료형 추론, foreach문 등의 기능을 제공한다.
void main (string[] args) {
print("Hello World!");
}
이 예제는 다음과 같이 객체 지향 방식으로도 작성될 수 있다.
public class Sample : Object {
static void main (string[] args) {
print("Hello World!");
}
}
또한 아래와 같이 스크립트 형태로도 작성될 수 있다. 이는 실험적인 기능이며 암시적으로 main 메소드를 가지고 있다.
print("Hello World!");
GTK+를 사용한 예제이다
// hellogtk.vala
using Gtk;
void main (string[] args) {
Gtk.init(ref args);
var window = new Window();
window.title = "Hello, World!";
window.border_width = 10;
window.window_position = WindowPosition.CENTER;
window.set_default_size(350, 70);
window.destroy.connect(Gtk.main_quit);
var label = new Label("Hello, World!");
window.add(label);
window.show_all();
Gtk.main ();
}
컴파일:
valac --pkg gtk+-3.0 hellogtk.vala
발라를 지원하는 편집기 중 일부의 목록이다.
language-vala-modern
패키지)Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.