応募トーク
これは応募されたトークです。聞きたいと思うトークをSNSで拡散しましょう。選考時に参考にさせていただきます。
talk
Kivyによるアプリケーション開発入門(ja)
スピーカー
Daisuke Saito , ? , Jun Okazaki
対象レベル:
初級
カテゴリ:
GUI Programming
説明
Pythonでタッチ動作やスワイプ動作などのNatural User Interface(NUI)対応のアプリケーションを開発するためのフレームワークとしてKivyがある。KivyはWindowsやiOSといった複数のプラットフォームに対応したフレームワークであり、一度Kivyでコードを書くことによって複数の環境で動作するアプリケーションを開発することできる。
本プロポーザルでは、Kivyの利点や使用方法を共有する。また、ドキュメントの翻訳についても少し触れる。
目的
kivyの利点や使用方法などを共有することで、Kivyについて知ってもらう。また。スタンドアローンアプリを開発したい人に使用してほしい、そのためにドキュメントの翻訳などについても共有する
概要
## はじめに
Kivy[1]はPythonで開発されたオープンソースのNUI開発用フレームワークである。バージョン1.0.0のリリースは2011年でLGPL3の下で公開された(バージョン1.7.5よりMIT)[1][2]。本フレームワークは比較適容易にタッチやスワイプといった動作に対応したアプリケーションを開発することが可能である。タッチやスワイプ動作の代表としてスマートフォンアプリが挙げられ、Kivyで開発されたアプリケーションも多数、リリースされている。しかし、課題として日本国内において日本語での解説やドキュメントが少なく、それが利用者にとっての障壁となっている。私たちは本プロポーザルを通して、課題解決の一歩としてKivyの利点や使用方法やなどについて共有する。また、ドキュメントの翻訳についても触れる。
## Kivyの利点
Kivyの利点はいくつかあるが一部を挙げると次のようなものがある。
1. KV言語と呼ばれるGUIのための設計言語が提供されている。
この、Kv言語はインタフェースの設計をアプリケーションのロジックから切り離すことを容易にする。
2.以下のようなプラットフォームで動作するアプリケーションを開発できる。
•デスクトップパソコン: OS X, Linux, Windows.
•iOSデバイス: iPad, iPhone.
•Androidデバイス: タブレット, スマートフォン
•タッチ対応やTUIOをサポートする自作デバイスや装置に対応
## Kivyを用いたアプリケーション開発
一例としてKivyでHello Worldと表示するアプリケーションは以下のようなコードを記述する。
from kivy.app import App
from kivy.uix.label import Label
class HelloApp(App):
def build(self):
return Label(text='Hello World')
HelloApp().run()
実行結果は以下の通りである。
![](https://raw.githubusercontent.com/Ds110/kivy-studies/master/kivy.png)
## ドキュメントの日本語訳の活動
日本で利用する際の課題としてドキュメント翻訳が挙げられる。この翻訳を実施することで利用しやすい環境づくりをしている。現在は。Kivy公式サイトのGetting Started[3]が完了している。また、翻訳の公開はGitHub(https://github.com/pyKy/translation)にて実施している。
## まとめ
KivyはNUI対応のアプリケーションを開発するのに非常に優れている。多数のkivyを用いたアプリケーションがリリースされているが、日本におけるユーザー数は少ない。これは日本語での解説やドキュメントが少ないことが課題として挙げられる。私たちは、課題解決の初歩として利点や使用方法について解説し、ドキュメント翻訳についても触れた。今後、日本語での解説やドキュメント翻訳をさらに積極的に実施する予定である。
# 参考文献
[1]. Kivy https://kivy.org/#home ,アクセス 2016.5
[2]. [ANN] Kivy 1.0 alpha released, https://groups.google.com/d/msg/kivy-dev/YxqDjcvY5lQ/QokqLCYZU8EJ , アクセス 2016.5
[3]. Getting Started, https://kivy.org/docs/gettingstarted/ , アクセス 2016.5