哲学理念¶
如果你想知道Kivy到底是什么,以及它与其它解决方案有何不同,那么这份文档正是为你准备的。
何必费心呢?¶
为什么要使用Kivy呢?毕竟,市面上已有许多优秀的工具包(或框架、平台)可供免费使用。例如,Qt和Flash就是应用开发的两个不错选择。这些众多解决方案中,许多已经支持多点触控,那么是什么让Kivy与众不同,值得使用呢?
新鲜¶
Kivy 是为今天和明天而生的。诸如多点触控等新颖的输入方式已变得日益重要。我们从零开始打造Kivy,正是为了这类交互而设计。这意味着我们得以在人机交互方面重新思考许多事物,而较老(并非指“过时”,而是“成熟”)的工具包则承载着它们的传统,这往往成为一种负担。我们并非试图将这种新的计算机使用方式强行套入现有模型(比如单指针鼠标交互)的框架中。我们希望让它蓬勃发展,让你探索无限可能。*这*正是Kivy真正与众不同之处。
快速¶
Kivy 速度飞快。这既适用于*应用开发*速度,也适用于*应用执行*速度。我们已从多方面对Kivy进行了优化。我们将时间关键的功能实现于*C语言层面*,以充分利用现有编译器的能力。更重要的是,我们还采用*智能算法*来减少高成本操作。同时,在适用情境下,我们尽可能利用*GPU*。当今显卡的计算能力在某些任务和算法上远超CPU,尤其是在绘图方面。因此,我们力求让GPU承担尽可能多的工作,从而显著提升性能。
灵活的¶
Kivy 非常灵活。这意味着它可以运行在*多种不同的设备*上,包括搭载 iOS 和 Android 系统的智能手机和平板电脑。我们支持*所有主流操作系统*(Windows、Linux、macOS、BSD)。灵活性还体现在 Kivy 快速发展的步伐使其能够*迅速适应新技术。我们不止一次地添加了对新外部设备和软件协议的支持,有时甚至是在它们正式发布之前。最后,Kivy 的灵活性还体现在它可以与大量不同的第三方解决方案结合使用。例如,在 Windows 上我们支持 WM_TOUCH,这意味着任何具有 Windows 7 Pen & Touch 驱动的设备都能*直接兼容* Kivy。在 macOS 上,您可以使用 Apple 的多点触控设备,如触控板和鼠标。在 Linux 和 *BSD 上,您可以使用 HID 内核输入事件。此外,我们还支持 TUIO(有形用户界面对象)以及其他多种输入源。
聚焦¶
Kivy 专注于简洁高效。您只需几行代码即可编写一个简单的应用程序。Kivy 程序使用 Python 编程语言创建,该语言极其灵活且强大,同时易于使用。此外,我们还创建了自己的描述语言,即 Kivy 语言,用于构建复杂的用户界面。这种语言使您能够快速设置、连接和排列应用程序元素。我们认为,让您专注于应用程序的核心本质,比强迫您纠结于编译器设置更为重要。我们已为您卸下这一负担。
资助。¶
Kivy由该领域的专业人士积极开发。Kivy是一个受社区影响、专业开发并得到商业支持的项目。我们的一些核心开发者以开发Kivy为生。Kivy将持续存在,它不是一个微小、即将消失的学生项目。
免费¶
Kivy 是免费使用的。您无需为此付费。即使您通过销售使用 Kivy 开发的应用程序来盈利,也无需支付任何费用。