XBase++
XBase++ é unha linguaxe de programación desenvolto por Alaska Software, compatible con Clipper 5.2, soportando a programación orientada a obxectos, a herdanza múltiple e o polimorfismo. Soporta todos os tipos nativos de xBase, incluíndo os Codeblocks. Permite xerar aplicacións Windows NT / 2000 / XP (32 bits) e 95 / 98 / ME.
Historia
XBase++ naceu tras a decisión de Computer Associates de abandonar Clipper para envorcarse en Visual Objects. O fracaso de V.Ou. como substituto de Clipper provoca que comecen a desenvolverse primeiro bibliotecas de terceiros para dotalo de soporte Windows, e logo de compiladores alternativos como XBase++ que soporten a síntaxis de Clipper 5.2 (a versión máis popular), expandindo o soporte a aplicacións de 32 bits.
Soporte de Clipper
XBase++ soporta tanto as vellas sentenzas @\SAY/GET para definir formularios como dispón dun editor gráfico de formularios similar ao de Visual Foxpro. Conta así mesmo cunha contorna de desenvolvemento visual, soporte de ficheiros OEM (formato DOUS) e ANSI (Windows), un depurador integrado e un compilador de recursos para poder engadir iconas e gráficos á aplicación. Pode xerar ficheiros EXE ou DLL.
RDD
Xbase++ soporta os Replaceable Database Drivers (RDD, que permiten o soporte de múltiples formatos de base de datos, podendo ser desenvolvidos por terceiros) de Clipper mediante os seus DatabaseEngines (DBEs). O paquete inclúe soporte para DBF, FOX, NTX, CDX, SDF e DO. Soporta CORBA 2.0, os formatos de Visual FoxPro 3.0 a 5.0, e acceso a servidores SQL.
Exemplos de Código
#include "Common.ch"
#include "class.ch"
//
// Este programa imprime:
//
// Michifuz Miau!
// DonGato Miau!
// Rin Tin Tin Guau!
// Press any key to continue...
//
/////////////////////////////
//
PROCEDURE Main()
//
/////////////////////////////
LOCAL aAnimales := Array(3)
LOCAL i
aAnimales[1] := Gato():New("Michifuz")
aAnimales[2] := Gato():New("DonGato")
aAnimales[3] := Can():New("Rin Tin Tin")
FOR i:=1 TO LEN(aAnimales)
? aAnimales[i]:Nome + " " + aAnimales[i]:Falar()
NEXT i
WAIT
RETURN
/////////////////////////////
//
CLASS Animal
//
/////////////////////////////
EXPORTED:
VAR Nome READONLY
METHOD Init
DEFERRED CLASS METHOD Falar
ENDCLASS
METHOD Animal:Init( cNombre )
::Nome := cNombre
RETURN Self
/////////////////////////////
//
CLASS Can FROM Animal
//
/////////////////////////////
EXPORTED:
METHOD Falar
ENDCLASS
METHOD Dog:Falar()
RETURN "Guau!"
/////////////////////////////
//
CLASS Gato FROM Animal
//
/////////////////////////////
EXPORTED:
METHOD Falar
ENDCLASS
METHOD Gato:Falar()
RETURN "Miau!"
Véxase tamén
Ligazóns externas
- Alaska Software (en inglés).
- SQLExpress for Xbase++ Object-Oriented ODBC and SQL interface for Xbase++ sqlexpress.net (en inglés).
- Xb2.NET Xbase++ web server & Internet development tool (TCP/IP, HTTP, SOAP, FTP, SSL, XML) (en inglés).
- ot4xb Open Source Tools para Xbase++ xbwin.com (en inglés).
- The Oasis comunidade de soporte a desenvolvedorres focalizada en Clipper, FoxPro e xBase++ (en inglés).
- Dialectos xBase Arquivado 16 de abril de 2008 en Wayback Machine. (en castelán).