Toga je sada nástrojů grafického uživatelského rozhraní společnosti BeeWare nativně pro Python a operační systém.

Proč Toga?

Toga není první sadou nástrojů pro widgety na světě - existují desítky dalších. možností. Proč tedy vytvářet nový?

Nativní widgety - ne témata

Toga používá nativní systémové widgety, nikoli témata. Když se zobrazí aplikace Toga spuštěnou aplikaci, nevypadá jen jako nativní aplikace - je to nativní aplikace. Použití motivu inspirovaného operačním systémem nad obecnou aplikací. widgetů je pro vývojáře snadný způsob, jak dosáhnout multiplatformního vzhledu. ale koncovému uživateli to způsobí nepořádek.

Aplikace vytvořené pomocí tematických sad widgetů lze snadno rozpoznat. jsou to ty, které se nechovají jako ostatní aplikace. Widgety nevypadají úplně správně, nebo je v okně systému MacOS lišta s nabídkami. aplikaci. Motivy se tomu mohou docela přiblížit - ale vždy existují varovné signály.

Kromě toho jsou nativní widgety vždy rychlejší než tematické generické widgety. widget. Koneckonců, využíváte nativní schopnosti systému, které byly vyladěné a optimalizované, nikoliv kreslicí jádro, které bylo navrstveno na vrstvu. generického widgetu. Navíc dědí všechny vlastnosti nativní platformy. přístupnost, jako je podpora pro čtečky obrazovky a další. adaptivní velikosti písma.

Abstrahujte obecné pojmy

Nestačí však jen vypadat jako nativní aplikace - je třeba. působit jako nativní aplikace.

Možnost "Ukončit" v nabídce "Soubor" má smysl, pokud píšete soubor. Windows - ale je zcela nemístná, pokud používáte operační systém OS X. možnost Ukončit by měla být v nabídce aplikace.

A kromě toho - proč musel vývojář kódovat umístění položky Quit možnost Odejít? Každá aplikace na světě musí mít možnost ukončit, tak proč? widget toolkit neposkytuje možnost ukončení předinstalovanou, mimo dosah. z krabice?

Ačkoli Toga používá 100% nativní systémové widgety, neznamená to, že je Toga že je pouze obalem systémových widgetů. Kdekoli je to možné, snaží se Toga abstrahovat širší koncepty, na nichž je založena konstrukce grafického uživatelského rozhraní. a vytvořit pro ně rozhraní API. Takže - každá aplikace Toga má základní sadu nabídek, které byste očekávali od každé aplikace - Ukončit, O aplikaci atd. na místech, kde byste je očekávali v nativní aplikaci.

Pokud jde o widgety, někdy je abstrakce jednoduchá - po Tlačítko je přece tlačítko, ať už používáte jakoukoli platformu. Ale jindy widgety nemusí být vystaveny tak doslovně. Co je cílem rozhraní Toga API je sada mechanismů pro dosažení cílů uživatelského rozhraní, nikoliv doslovná definice. widgetů.

Nativní jazyk Python

Většina sad nástrojů pro widgety začíná svůj život jako vrstva v jazyce C nebo C++, která je pak obalena dalšími jazyky. Výsledkem je rozhraní API, které chutná jako jako C nebo C++.

Toga byla od základu navržena jako nativní widget pro Python. sadou nástrojů. To znamená, že rozhraní API dokáže využívat funkce na úrovni jazyka. jako jsou generátory a správci kontextu způsobem, který by obal kolem jazyka C. knihovny by toho nebyl schopen (alespoň ne snadno).

Toga běží na Pythonu 3. Na Pythonu 2 neběží.

pip install a nic víc

Toga si klade za cíl, abyste ji mohli používat pouze po instalaci pipu. Není to nevyžaduje kompilaci rozšíření jazyka C. Není třeba instalovat binární podpůrné knihovny. Není třeba měnit systémové cesty a proměnných prostředí. Stačí ji nainstalovat, importovat a začít psát (nebo spouštět) kód.

Přijměte mobilní zařízení

Před 10 lety být multiplatformní sadou nástrojů pro widgety znamenalo být být k dispozici pro Windows, OS X a Linux. V dnešní době je mobilní výpočetní technika mnohem důležitější. Navzdory tomu však neexistuje mnoho dobrých možností. pro programování v jazyce Python na mobilních platformách a multiplatformních mobilních aplikací. kódování stále uniká. Toga se to snaží napravit.

How to help

So, why is it called "Toga"?

Když jste v Římě, dělejte to, co dělají Římané. A co nosí Říman? Togu!