IUP

Versiunea actuală a paginii nu a fost încă examinată de colaboratori experimentați și poate diferi semnificativ de versiunea revizuită la 15 martie 2021; verificările necesită 7 modificări .
IUP
Tip de SDK
Autor Tecgraf / PUC-Rio în colaborare cu Petrobras
Scris in C [1]
Sistem de operare Software multiplatform ( Linux si Microsoft Windows )
ultima versiune 3.30 ( 30 iulie 2020 )
Licență MIT
Site-ul web IUP

IUP  este o bibliotecă multiplatformă de elemente de bază ale interfeței grafice cu utilizatorul care utilizează C și Lua . Cu ajutorul acestuia, puteți crea aplicații grafice rapide, care nu necesită compilare.

Limbi și platforme acceptate

Pe Linux și alte sisteme de operare asemănătoare Unix , funcționează prin Gtk , Motif / Lesstif sau interacționând direct cu serverul X . Pe Windows , folosește caracteristicile grafice ale sistemului de operare respectiv. În 2017, au fost introduse backend-uri care permit dezvoltarea de aplicații native pentru MacOS [2] , iOS [3] , Android [4] folosind IUP , precum și aplicații web folosind Emscripten [5] [6] .

Biblioteca este scrisă în C , iar arhitectura sa îi permite să fie folosită într-un mod destul de natural din codul C++ orientat pe obiecte . Dezvoltat la Universitatea Catolică din Rio de Janeiro [7] , ca și Lua , acceptă integrarea cu acest limbaj de scripting.

Există, de asemenea, biblioteci wrapper disponibile pentru utilizarea IUP în multe limbi, cum ar fi Ruby [8] , Euphoria [9] , FreeBasic [10] , Perl [11] , Scheme [12] , Eiffel [13] , Nim [14] si altele.

Caracteristici

IUP folosește în mod tradițional limbajul LED pentru a descrie fișierele de resurse , care este considerat învechit în versiunile moderne ale bibliotecii și este înlocuit cu limbajul Lua . Este posibil să creați aplicații IUP fără a utiliza LED sau Lua, folosind doar API-ul C.

Biblioteca include și un simplu RAD IDE dezvoltat în 1994 de IupVisualLED [15] , care permite editarea dialogurilor GUI într-un mod apropiat de WYSIWYG . IupVisualLED vă permite, de asemenea, să exportați codul rezultat în LED, Lua sau C. Pentru a lucra cu scripturi Lua, IUP include IupLuaScripter, un editor de cod Lua cu suport de depanare.

IUP are un API destul de minimalist (aproximativ o sută de funcții C) și diferă de alte biblioteci similare prin modul în care implementează 4 concepte importante:

Designul IUP a eliminat restricțiile privind clasa/tipul de instanțe de obiect, dar a păstrat ierarhia de moștenire în stil Lua (vezi programarea prototipului ).

Începând cu versiunea 3.9, IUP acceptă șiruri UTF-8 .

Caracteristici suplimentare

Pe lângă crearea de widget-uri, IUP oferă o serie de caracteristici suplimentare:

Licență

IUP este disponibil pentru descărcare, utilizare gratuită, modificare, utilizare comercială și distribuție sub licența MIT [16] .

Note

  1. Proiectul iup Open Source pe Open Hub: Pagina de limbi - 2006.
  2. Proiect IupCocoa pe GitHub
  3. Proiect IupCocoaTouch pe GitHub
  4. Proiect IupAndroid pe GitHub
  5. Proiect IupEmscripten pe GitHub
  6. Lua Workshop 2017: IUP Next - Eric Wing și Chris Matzenbach pe YouTube
  7. O parte dintre dezvoltatorii IUP sunt și dezvoltatori Lua
  8. Ruby-IUP Arhivat la 14 aprilie 2011 la Wayback Machine ( depozitul de cod sursă Arhivat la 11 iunie 2018 la Wayback Machine pe github )
  9. EuIup . Consultat la 26 aprilie 2011. Arhivat din original pe 14 iulie 2012.
  10. Portable GUI toolkit (IUP) versiunea 3.0 (RC2) Arhivat 4 februarie 2010 la Wayback Machine pe forumul FreeBasic
  11. perl-iup . Preluat la 26 aprilie 2011. Arhivat din original la 11 iunie 2018.
  12. IUP: IUP (link descendent) . Data accesului: 29 mai 2012. Arhivat din original pe 9 martie 2011.   Arhivat din original pe 9 martie 2011.
  13. eiffel-iup Arhivat 26 septembrie 2019 la Wayback Machine - Biblioteca de instrumente IUP pentru GOBO Eiffel
  14. IUP-wrapper este arhivat pe 26 ianuarie 2017 în partea Wayback Machine a bibliotecii standard Nim
  15. Oliveira Prates, R.; Gattass, M. ;și Figueiredo, LH Visual LED: uma ferramenta interativa para geração de interfaces gráficas  (port.)  // M.Sc. disertație, Departamentul de Informatică. - PUC-Rio , 1994. Arhivat din original la 2 septembrie 2009.
  16. Tecgraf Library License . Consultat la 15 septembrie 2009. Arhivat din original la 22 octombrie 2009.

Link -uri