Previous: GC構造体
Up: GC構造体
Next: GCの生成
Previous Page: GC構造体
Next Page: GCの生成
なぜ GC などという新しい構造体をわざわざ作り出すのでしょうか?
これはXウィンドウの最大の特徴である
「サーバーとクライアントの通信」の考え方と関係があります。
クライアントからサーバーに図形を描く命令を送る時に、
通信の量が増えすぎるとシステムの効率が悪くなってしまいます。
それを防ぐ工夫が GCなのです。
GCのデータは実体がサーバーの側に置かれ、
変更が必要になった時のみ報告が行われます。
絵の道具を持っているのは、絵描きであるサーバーだと考えれば
わかりやすいでしょう。
ただし皆さんのプログラムの方でも必要に応じて、
いろいろ「道具」について注文をつけなくてはいけません。
ですから色などを指定して絵を描く場合には、
GC構造体のデータを取り扱うことになります。
(もちろん GCの考え方のおかげで、その作業はかなり楽になっています。)
実際にプログラムを書く立場から見ると、
GCのおかげで関数に渡す引数を減らせるという利点もあります。
1個1個の細かい指定をすべて独立した引数で与えるとすると、
引数の個数は何十個にもなってしまうでしょう。
これではプログラムが読みづらいし、
コーディング時のエラーも起こりやすくなります。
そこでグラフィックに関係した情報はすべてまとめてしまい、
関数にはその「情報のパック」を引数として渡そうというのが、
GCの考え方なのです。