# Basic4ppc

Basic4ppc (pronunciato "Basic for PPC") è stato un linguaggio di programmazione e ambiente di sviluppo software per computer palmari Pocket PC con sistema operativo Windows Mobile, sviluppato da Anywhere Software. Il linguaggio era basato su una sintassi simile a BASIC, sfruttando la tecnologia .NET di Microsoft, per consentire lo sviluppo di librerie aggiuntive, progettazione grafica dell'interfaccia utente di moduli Windows, sviluppo rapido delle applicazioni (RAD) e compilazione compatibile con .NET framework. Il linguaggio implementava un modo unico di aggiungere oggetti a un programma senza essere orientato agli oggetti. I suoi vantaggi erano la semplicità, il ritmo di sviluppo e l'integrazione con .NET framework. Una versione speciale dell'ambiente di sviluppo integrato (IDE) consente lo sviluppo direttamente su dispositivo Windows Mobile.
Con la scomparsa del sistema operativo Windows Mobile e dei dispositivi che lo eseguono, Basic4PPC ha raggiunto la fine della sua vita nel 2012. Per i possessori di Basic4PPC rimane un utile compilatore BASIC per desktop di Windows poiché esegue il codice direttamente nell'ambiente Windows e può compila un progetto in un file 'exe' di Windows per utilizzarlo come programma Windows.

## Storia

* La versione 1.00 di Basic4ppc è stata rilasciata nel 2005. Era destinata principalmente ai dispositivi portatili, consentendo agli utenti di programmare in un IDE di dispositivo univoco. Qui sono stati introdotti concetti di base, come il riferimento ai nomi diretti e la sintassi.
* La versione 2.0 ha aggiunto importanti miglioramenti con l'interfaccia utente, i controlli e l'ottimizzazione.
* 8/2006 Rilascio della versione 3.0, stabilità migliorata, possibilità di compilazione stand-alone per la prima volta.
* 12/2006 - Rilasciata la versione 4.0, ha introdotto la capacità di utilizzare le librerie esterne per la prima volta.
* 5/2007 - Rilasciata la versione 5.0, con IDE completamente nuovo e supporto per smartphone.
* 12/2007 - La versione 6.0 ha creato una svolta, ha introdotto la compilazione ottimizzata, consentendo quindi prestazioni di gran lunga migliori su entrambe le applicazioni compilate per dispositivi e desktop.
* 10/2008 - Rilasciata la versione 6.5, ha introdotto il supporto per i moduli.
* 06/2009 - Rilasciata la versione 6.8, con supporto automatico per diverse risoluzioni dello schermo e aggiunta di due nuovi oggetti collection.
* 04/2010 - Rilascio della versione 6.9, supporto aggiunto per variabili e sottotitoli digitati.

## Android

Nel 2010 è stata rilasciata una versione per telefoni/tablet Android, un ambiente separato che funziona secondo le stesse linee e il linguaggio è "di base" e può essere compilato su dispositivi Android.

## Funzioni

Doppia piattaforma di sviluppo: Basic4ppc consente lo sviluppo direttamente sul dispositivo portatile tramite un IDE dispositivo completamente compatibile. Il codice scritto su IDE dispositivo o desktop è identico per entrambe le piattaforme e sistemi operativi. La compilazione, tuttavia, deve essere indirizzata a dispositivi o desktop, a causa della differenza nel sistema operativo.
Compilazione: disponibile in quattro modalità: eseguibile Windows, eseguibile dispositivo per Pocket PC (con e senza AutoScale), eseguibile sul desktop e eseguibile per smartphone (per telefoni cellulari con sistema operativo Windows Mobile). I file .EXE compilati richiedono l'installazione di .NET 2.0 sul computer di destinazione. Questo di solito è il caso di Windows XP SP2 e versioni successive, ma deve essere gestito manualmente con le versioni precedenti.
Librerie addizionali: basato sul framework Microsoft .NET, Basic4ppc può usare il codice all'interno dei file .dll .NET dopo essere stato adattato per Basic4ppc (questo può essere fatto da qualsiasi programmatore che usa gli strumenti di sviluppo di Microsoft). Esistono molte librerie aggiuntive, la maggior parte delle quali sono open source, scritte dagli utenti e accessibili tramite il forum Basic4ppc.
Fusione: il codice di librerie aggiuntive viene unito quasi sempre all'eseguibile principale. In questo modo è possibile distribuire un singolo file.

## Caratteristiche

Basic4ppc è procedurale, strutturale e implementa un modello di programmazione parziale orientato agli oggetti. La sintassi è simile ai dialetti di base comuni, più influenzati da Visual Basic. Supporta eventi. Come la maggior parte dei linguaggi moderni, l'ambiente di sviluppo fornisce strumenti di progettazione dell'interfaccia utente grafica. Gli utenti creano applicazioni utilizzando l'interfaccia utente basata su trascinamento e rilascio. Questo è possibile su dispositivo e desktop, essendo unico in questa abilità.
Strutture di flusso regolari, come if…then e for…next sono supportate, come in molte altre versioni Basic.
Parole riservate: Basic4ppc include un vasto numero di parole riservate. Questo a causa dell'ambito di dichiarazione variabile.
Variabile :può essere locale (accessibile attraverso una subroutine), globale (accessibile attraverso un modulo) o pubblico (accessibile attraverso un programma). Tutte le variabili sono senza tipo. Questo significa che puoi scrivere il seguente codice:
Non è necessario dichiarare le variabili in modo esplicito.
Subroutines (chiamate "Sub") sono l'unità di codice più semplice. Tutto il codice deve essere scritto all'interno di subroutine. Le subroutine possono restituire un valore.
Riferimento di denominazione diretta: Tutti i controlli interni sono accessibili direttamente e passati come parametri alle subroutine specificando il loro nome espresso come una stringa. Ciò consente al programmatore di passare i controlli come parametri senza conoscere in anticipo il controllo che deve essere passato, e senza dover gestire né i puntatori né la programmazione orientata agli oggetti.
AutoScale: la modalità consente di sviluppare diverse risoluzioni dello schermo con la lingua che si occupa delle regolazioni necessarie per l'aspetto dell'interfaccia utente.

## Esempio

Ecco un esempio della lingua: snippet di codice che visualizza una finestra di messaggio "Hello, World!" all'avvio dell'applicazione, senza caricare alcun modulo:

## Librerie

Basato sulla tecnologia .NET di Microsoft, Basic4ppc supporta. NET. DLL con alcune modifiche minori. Ciò ha permesso agli utenti di creare molte librerie open-source, scaricabili dal forum Basic4ppc, solitamente con un codice sorgente completo. Come con molti altri linguaggi di programmazione, le librerie aggiuntive includono la maggior parte delle funzionalità del linguaggio reale. Ulteriori librerie riguardano argomenti come grafica, database, interfaccia utente, GPS, lettori di codici a barre e periferiche, debug, connettività (bluetooth, wifi e protocolli di trasferimento dati come Http, FTP e così via), XML e altro.