开始玩 Gjs 啦

以前玩了一段时间的 Vala,用于开发 GLib 及 GObject 对象系统的应用程序相对 C 语言就挺方便了。但感觉这种语言翻译还是有点复杂了,尤其是在遇到一个内存管理问题后,感觉更明显,而这个问题至今还没有被解决了。。。=> https://bugzilla.gnome.org/show_bug.cgi?id=684182

最近看到相关的资讯,GNOME 建议使用 Gjs 开发新的应用程序,因为目前的 GNOME Shell 已经在使用 gjs 了,并且之前也简单的修改过系统菜单方面的代码,觉得还是挺有意思的。现在就开始玩玩啦。

动态语言就是方便呀,有了 GObject-Introspection 后,一下子就多了那么多玩有的功能出来。语言绑定这个东西有的时候真的很烦人,但有的时候也挺可爱的。

说了半天都忘了说 Gjs 是啥了。。。Gjs 是 GNOME 的 Javascript 语言绑定,它主要基于 Spidermonkey javascript 引擎与 GObject-Introspection 框架。

在看了一些例子后,发现 Gjs 自身还是很简单的,对于使用它开发应用程序的人来说,只要学习了 javascript 的基本语法和项目给出的语法风格建议及了解 GObject-Introspection 并能够使用它就行了。下面就是具体用来的 Gir 库的使用问题了。

如果想了解的更多,如它是如何自我扩展的,可以先看看项目代码中的 modules。这让我想起了 JNI,其它就是一些接口的定义与实现,重要的就是数据的传递,类型的转换等等啦。

我还是先去学习一下 Javascript 的基本语法吧。。。

Over!

Leave a Reply

Your email address will not be published. Required fields are marked *