- Kivy Blueprints
- Mark Vasilkov
- 327字
- 2021-08-06 19:18:44
Write once, run anywhere
This whole situation creates a demand for a universal, multi-platform way to program. The problem isn't exactly new: one solution to it, created by Sun in 1995, is the Java programming language. Its marketing promise—write once, run anywhere—was never fulfilled and the language itself is unreasonably cumbersome to use. This led to many mocking variations of the slogan, culminating with write once, run away that refers to many developers abandoning Java in favor of better programming languages, including Python.
Not coincidentally, Kivy—the main topic of this book—is a graphical user interface library facilitating easy creation of multi-platform Python applications. The main features of Kivy toolkit are as follows:
- Compatibility: Kivy-based apps work in Linux, Mac OS X, Windows, Android, and iOS—all from a single codebase.
- Natural user interface: Kivy bridges the gap between different input methods, allowing you to handle a multitude of possible user interactions with similar code, mouse events and multitouch gestures alike.
- Fast hardware-accelerated graphics: OpenGL rendering makes Kivy suitable for creating graphics-heavy applications such as videogames, and also improves the user experience with smooth transitions.
- The use of Python: Kivy apps are written in Python, one of the better general purpose programming languages. In addition to being inherently portable, expressive, and readable, Python features a useful standard library and a rich ecosystem of third-party packages, the Python Package Index (PyPI).
Speaking of third-party packages, Kivy can be seen as a superset of many battle-tested components: a large part of its functionality relies on well-known libraries such as Pygame, SDL, and GStreamer. The API that Kivy exposes, however, is very high-level and unified.
It's worth mentioning that Kivy is free and open source MIT licensed software. In practice, this means that you can use it commercially without paying licensing fees. Its full source code is hosted on GitHub, so you can also patch bugs or add new features to it.
- Developing Mobile Web ArcGIS Applications
- 無代碼編程:用云表搭建企業數字化管理平臺
- Python爬蟲開發與項目實戰
- Unity 3D腳本編程:使用C#語言開發跨平臺游戲
- Machine Learning With Go
- 軟件體系結構
- Python 3 數據分析與機器學習實戰
- Python函數式編程(第2版)
- Photoshop CC移動UI設計案例教程(全彩慕課版·第2版)
- WCF技術剖析(卷1)
- 3ds Max 2018從入門到精通
- 深入理解Kafka:核心設計與實踐原理
- ASP.NET本質論
- Learning Java by Building Android Games
- Building an E-Commerce Application with MEAN