推 Adama:那請問Vala和Genie的差別優劣是什麼? 01/19 00:14
: ※ 發信站: 批踢踢實業坊(ptt.cc)
: 推 BIGGGY:SO COOL 01/16 15:24
: → tjjh89017:(worship) 01/16 15:54
: → OpenSolaris:我比較好奇的是它的用途是產生C程式,那跟直接寫C 01/16 16:19
: → OpenSolaris:的差別是? 01/16 16:19
: 推 IAMPF:用途就是不用硬K出C, 可以省很多工夫阿XD 01/16 16:25
: → uranusjr:可以直接用 glibc 搞出物件導向的程式就是很大的優勢了 01/16 18:30
我最近用手刻的 GObject 元件
http://code.google.com/p/betaradio/source/browse/tags/1.4/src/any_tray_icon.c
http://code.google.com/p/betaradio/source/browse/tags/1.4/src/any_tray_icon.h
AnyTrayIcon 是用來在 runtime 載入 libappindicator 在 Unity 桌面環境使用
如果不是 Unity 桌面環境就會 fallback 到使用 GtkStatusIcon
但是在 compiling time 不用相依到 libappindicator
寫這個 GLib 元件要先寫好 any_tray_icon.h 然後再去寫 any_tray_icon.c
每多一個函式我就要改兩個檔案,打一堆字。
再看看我之前用 Vala 寫的 GObject 元件
http://code.google.com/p/betaradio/source/browse/tags/1.4/src/json_soup.vala
多一個函式就直接寫進去就好了
函式名稱也不用加上元件的 prefix
用 valac -C|-H *.vala 生出來的 *.[ch] 會幫你加上那些 prefix
怎麼看都是用 Vala/Genie 語法來寫 GLib 底下的程式比較輕鬆愉快啊~ :)
更不用說你要知道應該使用哪些 MACRO 跟 function 來建構一個 GObject 元件的細節
http://www.codemud.net/~thinker/GinGin_CGI.py/show_id_doc/427
http://www.codemud.net/~thinker/GinGin_CGI.py/show_id_doc/428
http://www.codemud.net/~thinker/GinGin_CGI.py/show_id_doc/429
--
http://about.me/fourdollars
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.32.46.10