IMPORTANT : Il s'agit d'une version ALPHA 1.0. Ce projet est en cours de développement actif. Bien que l'ensemble des fonctionnalités fondamentales soient testées et opérationnelles, un fonctionnement optimal et sans bogue ne peut être garanti pour une utilisation en production. Des évolutions de syntaxe ou d'architecture peuvent survenir dans les versions ultérieures. Vos retours, tests et signalements de bogues sont les bienvenus !
PureBasic OOP IDE est un environnement de développement complet basé sur l'IDE officiel de PureBasic (sous licence GPL v3), étendu pour intégrer nativement la Programmation Orientée Objet (POO) et une Double Syntaxe moderne sans verbiage.
- Classes & Objets : Définition de classes avec champs (
Public,Protected,Private), méthodes, constructeurs (Init()) et destructeurs (Free()). - Héritage Simple & Polymorphisme Dynamique : Héritage avec
Extends, interfaces VTable polymorphiques haute performance, résolution automatiqueThis\...et appels de classe mère avecSuper::. - Classes Abstraites & Méthodes Abstraites :
Abstract ClassetPublic Abstract Methodavec contrôle sémantique strict à la compilation. - Namespaces Imbriqués &
Using: Organisation modulaire (Namespace MonModule::SousModule), directives d'importationUsinget alias (Namespace MonAlias = MonNamespace). - Support Multi-Fichiers :
XIncludeFileetIncludeFilegérés de manière récursive avec déduplication de classes. - Double Syntaxe Hybride : Possibilité d'écrire son code avec les mots-clés PureBasic classiques (
Class ... EndClass,Method ... EndMethod,If ... EndIf) ou avec une syntaxe moderne style C/C# à accolades{ }(Class Dog { ... },Method Aboyer() { ... }). - Framework GUI Objet (
lib/ui/) : Encapsulation complète des fenêtres (UI::Window), gadgets (UI::Button,UI::TextBox,UI::Label,UI::CheckBox, etc.) et création de Custom Gadgets vectoriels propriétaires sur Canvas (UI::CustomGadget,UI::Controls::ToggleSwitch). - Source Mapping Précis (
.pb.map) : Toutes les erreurs du compilateur natif PureBasic sont automatiquement remappées vers les numéros de ligne exacts des fichiers sources.pbo.
| Système | Version Minimale | Compilateur Recommandé |
|---|---|---|
| Windows | Windows 10 / 11 (64-bit) | PureBasic 6.00 LTS à 6.40 (x64) |
| Linux | Ubuntu 22.04+ / Debian 12+ / Fedora 39+ | PureBasic 6.00 LTS à 6.40 (x64) avec GTK3 et build-essential |
| macOS | macOS 12 Monterey ou supérieur | PureBasic 6.00 LTS à 6.40 (x64 / ARM64) avec Xcode Command Line Tools |
-
Utilisation directe (sans compilation) : Lancez simplement l'exécutable pré-compilé
pbo_ide.exesitué à la racine. -
Recompilation complète depuis les sources :
- Double-cliquez sur
build_ide.exeou exécutez dans un terminal :build_ide.exe
- Ou compilez manuellement le script de build avec PureBasic :
"C:\Program Files\PureBasic\Compilers\pbcompiler.exe" build_ide.pb /CONSOLE /EXE build_ide.exe build_ide.exe
- Double-cliquez sur
- Assurez-vous que les paquets de développement GTK3 et Scintilla sont installés :
sudo apt update sudo apt install build-essential libgtk-3-dev libwebkit2gtk-4.0-dev
- Définissez la variable d'environnement
PUREBASIC_HOMEvers votre dossier PureBasic :export PUREBASIC_HOME=/opt/purebasic export PATH=$PUREBASIC_HOME/compilers:$PATH
- Compilez le transpileur OOP :
pbcompiler compiler/transpiler.pb -e compiler/transpiler
- Compilez le script de build ou lancez la chaîne de construction de l'IDE :
pbcompiler build_ide.pb -e build_ide ./build_ide
- Installez les outils de ligne de commande Xcode si ce n'est pas déjà fait :
xcode-select --install
- Définissez la variable d'environnement
PUREBASIC_HOME:export PUREBASIC_HOME="/Applications/PureBasic.app/Contents/Resources" export PATH="$PUREBASIC_HOME/compilers:$PATH"
- Compilez le transpileur OOP :
pbcompiler compiler/transpiler.pb -e compiler/transpiler
- Lancez le script de build pour générer l'application macOS
pbo_ide.app.
- Lancez
pbo_ide.exe. - Ouvrez un exemple dans le dossier
examples/:examples/01_Basics_Classes/animal_hierarchy.pbo(Classes & Polymorphisme).examples/04_Dual_Syntax_CStyle/c_style_demo.pbo(Syntaxe à accolades{ }).examples/05_GUI_OOP_Modern_CStyle/demo_gui_oop.pbo(Application GUI complète).
- Appuyez sur
F5(ou menu Compiler -> Compiler / Exécuter) : Le transpileur OOP convertit le code à la volée, le compilateur natif produit le binaire et lance l'application !
IMPORTANT: This is an ALPHA 1.0 release. This project is under active development. While core features are implemented and tested, optimal performance and bug-free operation cannot be guaranteed for production use. Syntax adjustments or architectural improvements may occur in subsequent releases. Feedback, bug reports, and contributions are warmly welcome!
PureBasic OOP IDE is a full-featured integrated development environment derived from the official PureBasic IDE (licensed under GPL v3), extended to provide native Object-Oriented Programming (OOP) and a Dual Syntax Mode (classic PureBasic vs clean C/C# style { }).
- Classes & Objects: Encapsulation with
Public,Protected,Privatemembers, constructors (Init()), destructors (Free()). - Inheritance & Dynamic Polymorphism:
Extendskeyword, high-speed VTables, automatic polymorphic dispatch viaThis\..., and parent calls viaSuper::. - Abstract Classes & Methods:
Abstract ClassandPublic Abstract Methodwith compile-time enforcement. - Nested Namespaces &
Using: Hierarchy management (Namespace Game::Graphics),Usingimports, and aliases. - Multi-File Architecture: Recursive file resolution with class deduplication via
XIncludeFile. - Dual Syntax: Choose between standard PureBasic keywords or modern C-style curly braces
{ }. - GUI OOP Framework (
lib/ui/): Native object-oriented Windows, Gadgets, and owner-drawn Canvas Custom Gadgets (UI::CustomGadget,UI::Controls::ToggleSwitch). - Source Line Mapping (
.pb.map): Automatically maps all native PureBasic compiler warnings and errors back to original.pboline numbers.
| Platform | Minimum OS | Recommended Compiler |
|---|---|---|
| Windows | Windows 10 / 11 (64-bit) | PureBasic 6.00 LTS to 6.40 (x64) |
| Linux | Ubuntu 22.04+ / Debian 12+ / Fedora 39+ | PureBasic 6.00 LTS to 6.40 (x64) with GTK3 & build-essential |
| macOS | macOS 12 Monterey or newer | PureBasic 6.00 LTS to 6.40 (x64 / ARM64) with Xcode Tools |
- Direct Usage: Run the pre-compiled
pbo_ide.exelocated in the root directory. - Rebuilding from source: Run
build_ide.exeor compilebuild_ide.pb.
- Install dependencies:
sudo apt install build-essential libgtk-3-dev libwebkit2gtk-4.0-dev
- Set
PUREBASIC_HOME:export PUREBASIC_HOME=/opt/purebasic export PATH=$PUREBASIC_HOME/compilers:$PATH
- Compile the transpiler and IDE:
pbcompiler compiler/transpiler.pb -e compiler/transpiler pbcompiler build_ide.pb -e build_ide ./build_ide
- Install Xcode Command Line Tools:
xcode-select --install - Set
PUREBASIC_HOME:export PUREBASIC_HOME="/Applications/PureBasic.app/Contents/Resources" export PATH="$PUREBASIC_HOME/compilers:$PATH"
- Compile transpiler and IDE build scripts.
This project is licensed under the GNU General Public License v3 (GPL v3) — see the LICENSE file for complete details.