You can edit almost every page by Creating an account. Otherwise, see the FAQ.

Ultimate++

De EverybodyWiki Bios & Wiki
Aller à :navigation, rechercher


Ultimate++
[[Fichier:Erreur Lua dans Module:Wikidata à la ligne 118 : attempt to index field 'wikibase' (a nil value). |frameless |upright=1 |alt=Description de l'image Erreur Lua dans Module:Wikidata à la ligne 118 : attempt to index field 'wikibase' (a nil value).. ]]
[[Fichier:Erreur Lua dans Module:Wikidata à la ligne 118 : attempt to index field 'wikibase' (a nil value). |frameless |Erreur Lua dans Module:Wikidata à la ligne 606 : attempt to index field 'wikibase' (a nil value). |upright=1 |alt=Description de cette image, également commentée ci-après ]]
Erreur Lua dans Module:Wikidata à la ligne 606 : attempt to index field 'wikibase' (a nil value).
Informations
Créateur Erreur Lua dans Module:Wikidata à la ligne 118 : attempt to index field 'wikibase' (a nil value).
Développé par Erreur Lua dans Module:Wikidata à la ligne 118 : attempt to index field 'wikibase' (a nil value).
Première version
Dernière version 2022.2 (rev. 16270) ()
Version avancée Erreur Lua dans Module:Wikidata à la ligne 118 : attempt to index field 'wikibase' (a nil value).
Dépôt sourceforge:projects/upp/files/upp/
Assurance qualité Erreur Lua dans Module:Wikidata à la ligne 118 : attempt to index field 'wikibase' (a nil value).
Écrit en Erreur Lua dans Module:Wikidata à la ligne 118 : attempt to index field 'wikibase' (a nil value).
Interface Erreur Lua dans Module:Wikidata à la ligne 118 : attempt to index field 'wikibase' (a nil value).
Supporte les langages Erreur Lua dans Module:Wikidata à la ligne 118 : attempt to index field 'wikibase' (a nil value).
Système d'exploitation Erreur Lua dans Module:Wikidata à la ligne 118 : attempt to index field 'wikibase' (a nil value).
Environnement Unix, Linux, FreeBSD (X11), Windows, Windows CE, macOS
Taille des données Erreur Lua dans Module:Wikidata à la ligne 118 : attempt to index field 'wikibase' (a nil value).
Formats lus Erreur Lua dans Module:Wikidata à la ligne 118 : attempt to index field 'wikibase' (a nil value).
Formats écrits Erreur Lua dans Module:Wikidata à la ligne 118 : attempt to index field 'wikibase' (a nil value).
Langues Erreur Lua dans Module:Wikidata à la ligne 118 : attempt to index field 'wikibase' (a nil value).
Type Framework de développement
Licence BSD license
Documentation Erreur Lua dans Module:Wikidata à la ligne 118 : attempt to index field 'wikibase' (a nil value).
Site web Erreur Lua dans Module:Wikidata à la ligne 118 : attempt to index field 'wikibase' (a nil value).

Chronologie des versions

Ultimate++[1],[2],[3], également connu sous le nom de Ultimatepp, U++ ou Upp, est un framework de développement d'applications C++ qui vise à réduire la complexité du code des applications de bureau typiques en exploitant largement les fonctionnalités C++. Les programmes créés avec ses librairies peuvent fonctionner sur plusieurs systèmes d'exploitations et architectures matérielles sans qu'il soit nécessaire d'écrire du code spécifique à la plate-forme.

Il possède son propre environnement de développement intégré appelé TheIDE[4] qui est conçu pour gérer toutes les fonctionnalités du framework.

Fonctionnalités[modifier]

Les principales fonctionnalités d'Ultimate++ sont :

  • La librairie principale fournit un catalogue de fonctions de d'objets compatibles avec Unix / Linux / FreeBSD (X Window System - X11), Microsoft Windows et macOS
  • Compatibilité avec C++20
  • Comprend un IDE et un concepteur d'interface graphique
  • Utilise fortement RAII et des mécanismes de type pointeurs automatiques pour éviter la gestion manuelle de la mémoire et même pour limiter l'utilisation de pointeurs dans le code[5]
  • Simule l'apparence des Widgets graphiques natifs. Sur les systèmes X11, Ultimate++ prend en charge l'apparence des widgets GTK+
  • La distribution standard est livrée avec les sources Ultimate++ incluses, même celles de l'IDE
  • Utilise NTL comme système de modèle au lieu de STL
  • Gestion de bases de données et développement d'applications avec SQL
  • De nombreuses technologies telles que Topic++ (éditeur de documents), Assist++ (complétion de code, analyseur), Icon designer et bien d'autres sont intégrées à U++

Hello World[modifier]

L'exemple suivant crée une application graphique C++ avec un bouton affichant "Hello world!" et réagissant au clique :

#include <CtrlLib/CtrlLib.h>

using namespace Upp;

class MyApp : public TopWindow 
{
public:
    MyApp() 
    {
        Title("Hello world");
        button.SetLabel("Hello world!");
        button << [=] {
            if (PromptYesNo("Button was clicked. Do you want to quit?"))
                Break();
        };
        Add(button.HSizePos(100, 100).VSizePos(100, 100));
    }
    
private:
    Button button;
};

GUI_APP_MAIN
{
    MyApp().Run();
}

Logiciels utilisant Ultimate++[modifier]

Les différents logiciels suivant utilise U++:

  • Openwind[6] - un logiciel de conception de parcs éoliens open-source
  • UppCAD[7] - un système de CAO polyvalent[8]

Notes et références[modifier]

  1. http://www.programmez.com/magazine_articles.php?id_article=981 Programmez! issue 104
  2. http://www.programmez.com/magazine_articles.php?id_article=1150 Programmez! issue 114
  3. Vincent Gouvernelle, C++: L'essentiel du code et des commandes, Pearson Education France, (ISBN 978-2-7440-2281-4)
  4. Getting started with Ultimate++ CodeProject article
  5. U++ Overview
  6. « Building OpenWind »
  7. « Ultimate++ Forums - UppCAD » (consulté le 18 octobre 2020)
  8. « UppCAD » (consulté le 18 octobre 2020)

Voir aussi[modifier]

Articles connexes[modifier]

Liens externes[modifier]

  • Erreur Lua dans Module:Wikidata à la ligne 606 : attempt to index field 'wikibase' (a nil value).
  • Erreur de script : la fonction « tout » n’existe pas.
  • Erreur Lua dans Module:Dictionnaires à la ligne 101 : attempt to index field 'wikibase' (a nil value).
  • Erreur Lua dans Module:Autorité à la ligne 424 : attempt to index field 'wikibase' (a nil value).
  • (en) Site officiel GitHub
  • (en) Site officiel Sourceforge

Erreur Lua dans Module:Catégorisation_badges à la ligne 170 : attempt to index field 'wikibase' (a nil value).Erreur Lua dans Module:Suivi_des_biographies à la ligne 189 : attempt to index field 'wikibase' (a nil value).


Cet Article wiki "Ultimate++" est issu de Wikipedia. La liste de ses auteurs peut être visible dans ses historiques et/ou la page Edithistory:Ultimate++.