|
Packit |
1470ea |
|
|
Packit |
1470ea |
<page xmlns="http://projectmallard.org/1.0/" xmlns:its="http://www.w3.org/2005/11/its" type="topic" id="tech-gobject" xml:lang="ko">
|
|
Packit |
1470ea |
<info>
|
|
Packit |
1470ea |
<link type="guide" xref="tech" group="gobject"/>
|
|
Packit |
1470ea |
|
|
Packit |
1470ea |
<credit type="author copyright">
|
|
Packit |
1470ea |
<name>Federico Mena Quintero</name>
|
|
Packit |
1470ea |
<email its:translate="no">federico@gnome.org</email>
|
|
Packit |
1470ea |
<years>2013</years>
|
|
Packit |
1470ea |
</credit>
|
|
Packit |
1470ea |
|
|
Packit |
1470ea |
<include xmlns="http://www.w3.org/2001/XInclude" href="cc-by-sa-3-0.xml"/>
|
|
Packit |
1470ea |
|
|
Packit |
1470ea |
<desc>시그널 및 슬롯을 갖춘 C 기반 객체 및 형식 시스템</desc>
|
|
Packit |
1470ea |
|
|
Packit |
1470ea |
<mal:credit xmlns:mal="http://projectmallard.org/1.0/" type="translator copyright">
|
|
Packit |
1470ea |
<mal:name>조성호</mal:name>
|
|
Packit |
1470ea |
<mal:email>shcho@gnome.org</mal:email>
|
|
Packit |
1470ea |
<mal:years>2016, 2017.</mal:years>
|
|
Packit |
1470ea |
</mal:credit>
|
|
Packit |
1470ea |
</info>
|
|
Packit |
1470ea |
|
|
Packit |
1470ea |
<title>GObject</title>
|
|
Packit |
1470ea |
|
|
Packit |
1470ea |
GObject는 C 프로그램에 객체 및 형식 시스템을 도입하는 <link xref="tech-glib">GLib</link> 라이브러리의 일부입니다. C 언어에서 객체 또는 클래스를 (문법적으로) 제공하지는 않지만, GObject는 객체지향 C 프로그램을 작성할 수 있게 해줍니다.
|
|
Packit |
1470ea |
|
|
Packit |
1470ea |
GObject에서는 근본적으로 정수형 및 문자열 형식을 전달하는 전체 형식 시스템의 근간인 GType을 제공합니다. 모든 기타 클래스의 기반 클래스인 GObject 그 자체가 있습니다. 어떤 흥미로운 동작이 일어났을 때 호출자에게 알리는 시그널을 뿌릴 수 있습니다. 예를 들어 Button 객체는 눌리고 뗀 상황을 나타내는 clicked 시그널을 보낼 수 있습니다.
|
|
Packit |
1470ea |
|
|
Packit |
1470ea |
|
|
Packit |
1470ea |
GObject is introspectable, which means that you can ask the
|
|
Packit |
1470ea |
GObject system for the class types that are defined, the methods they
|
|
Packit |
1470ea |
support, their signals, etc. GNOME's language bindings are built on top of
|
|
Packit |
1470ea |
this introspection information. Instead of writing wrappers by hand to let
|
|
Packit |
1470ea |
GNOME APIs be called from other programming languages, language bindings
|
|
Packit |
1470ea |
use the introspection information from GObject to auto-generate those
|
|
Packit |
1470ea |
wrappers themselves.
|
|
Packit |
1470ea |
|
|
Packit |
1470ea |
|
|
Packit |
1470ea |
보통 그놈 기반으로 객체 지향 프로그래밍을 진행할 때 GObject 자체를 신경 쓸 필요가 없습니다. 그러나 시그널/슬롯 같은 GObject 개념에 익숙하면, 그놈 프로그래머 입장에서 편해집니다.
|
|
Packit |
1470ea |
|
|
Packit |
1470ea |
<list style="compact">
|
|
Packit |
1470ea |
<item><link href="http://developer.gnome.org/gobject/stable/">GObject 참고 설명서</link> </item>
|
|
Packit |
1470ea |
</list>
|
|
Packit |
1470ea |
|
|
Packit |
1470ea |
</page>
|