Najlepsze pytania
Chronologia
Czat
Perspektywa
XBase
Z Wikipedii, wolnej encyklopedii
Remove ads
xBase – rodzina języków programowania o orientacji bazodanowej i dialektów języka wywodzących się z języka dBASE (pierwotnie: Vulcan), rozwijanego na podstawie rozwiązań powstałych w środowisku NASA/JPL (JPLDIS)[1][2][3][4].

W szerszym użyciu terminem xBase (lub xbase) bywa również określany zestaw powiązanych formatów plików (zwłaszcza DBF), historycznie związanych z dBASE, a później przejętych przez inne narzędzia (m.in. GIS)[5][6].
Dodawane z biegiem czasu nowe polecenia i funkcje spowodowały, że języki xBase stały się językami ogólnego przeznaczenia, zachowując przy tym silną orientację na przetwarzanie danych tabelarycznych oraz (częściową) zgodność na poziomie składni i funkcji z dBASE[1][7]. Typowym modelem danych w klasycznych implementacjach były tabele przechowywane w plikach DBF (często uzupełniane o pliki memo i indeksów), przy czym „relacje” pomiędzy tabelami realizowano zwykle na poziomie mechanizmów środowiska uruchomieniowego i kodu aplikacji, a nie poprzez serwerowy silnik SQL[8].
Remove ads
Historia

Geneza rodziny xBase wiąże się z językiem i środowiskiem dBASE, którego pierwotna wersja (Vulcan) została opracowana w 1978 r. przez C. Wayne’a Ratliffa, inspirowanego dokumentacją JPLDIS; w 1980 r. program został objęty umową z Ashton-Tate i wprowadzony na rynek jako dBASE II[1][2][3]. W latach 80. i 90. XX w. powstało wiele implementacji i „klonów” zgodnych w różnym stopniu ze składnią dBASE (m.in. linia FoxBASE/FoxPro oraz kompilatory Clipper), co ugruntowało użycie zbiorczego określenia xBase dla tej rodziny dialektów[1].
Remove ads
Charakterystyka
Klasyczne dialekty xBase łączą interaktywny tryb pracy (polecenia wydawane w wierszu poleceń) z możliwością automatyzacji w postaci procedur i skryptów, a także z wbudowanym językiem wyrażeń używanym w operacjach filtracji, wyszukiwania, sortowania i aktualizacji danych[9]. Do charakterystycznych elementów składni i modelu pracy należą m.in.:
- operacje „record-at-a-time” na aktualnym rekordzie (nawigacja i modyfikacje), obok poleceń wyszukujących i filtrujących (np. rodzina poleceń typu LOCATE i warunki logiczne)[9],
- silne powiązanie operacji językowych z tabelami DBF oraz ich indeksami/memo, co w praktyce pozwalało budować kompletne aplikacje bazodanowe bez oddzielnego serwera[8],
- stopniowe rozszerzanie dialektów o elementy programowania strukturalnego, a w części implementacji również o programowanie obiektowe i integrację z GUI (np. linia Visual FoxPro, xBase++)[10][11].
Remove ads
Pliki i interoperacyjność
Najbardziej rozpoznawalnym elementem „ekosystemu” xBase stał się format DBF – plik tabelaryczny zawierający definicję pól i rekordy danych, często uzupełniany o pliki memo (np. DBT w dBASE lub FPT w FoxPro) oraz pliki indeksów, zależne od dialektu/implementacji[5][8][12].
Format DBF został szeroko zaadaptowany także poza światem dBASE/xBase – m.in. jako tabela atrybutów w formacie shapefile (ESRI), co wpłynęło na praktyczne ograniczenia interoperacyjności (np. limit długości nazw pól do 10 znaków w wielu narzędziach operujących na shapefile/DBF)[13][14][15][6].
DBF bywa także wykorzystywany jako format wymiany danych w narzędziach biurowych: Microsoft Access umożliwia eksport do kilku wersji dBASE/DBF, a LibreOffice udostępnia import i zapis danych w plikach DBF w arkuszu kalkulacyjnym oraz w module bazy danych[16][17].
Standaryzacja
W latach 90. podejmowano próby formalizacji języka/rodziny xBase w ramach prac standaryzacyjnych (m.in. komitet X3J19 „Xbase”), co odnotowano w publikacjach NIST jako „pending specification”, przy rozpoczęciu prac w październiku 1992 r.[18][19]. Równolegle praktyka rynkowa utrzymywała wiele dialektów o niepełnej wzajemnej zgodności, co znalazło odzwierciedlenie w literaturze porównawczej opisującej różnice poleceń i funkcji pomiędzy implementacjami[1].
Remove ads
Zastosowania
Języki i środowiska xBase były wykorzystywane przede wszystkim do szybkiego budowania aplikacji ewidencyjnych i biznesowych (zwłaszcza w modelu plikowym, bez serwera), a pośrednio także w obszarach, w których DBF stał się formatem wymiany danych (np. GIS/shapefile)[6][13].
Główne gałęzie rozwojowe
W skład rodziny wchodzą trzy główne gałęzie (o częściowo odmiennych dialektach i bibliotekach uruchomieniowych)[7][5].
- dBASE
- dBASE – produkt komercyjny firmy dBASE Inc.
- (dBXL/Arago) QuickSilver – produkty wchłonięte przez dBASE
- Clipper
- Clipper – produkt komercyjny
- xBase++ – produkt komercyjny firmy Alaska Software GmbH[20]
- FlagShip – produkt komercyjny firmy multisoft GmbH
- Clip – wolne oprogramowanie firmy ITK
- Harbour – wolne oprogramowanie zgodne z Clipper/xBase[21][22]
- xHarbour – wolne oprogramowanie i wariant komercyjny, kompilator wstecznie zgodny z Clipper[23]
- FoxPro
- Visual FoxPro – produkt komercyjny firmy Microsoft (wsparcie zakończone 13 stycznia 2015 r.)[10]
- Recital – produkt komercyjny firmy Recital Corp.
- Inne kontynuacje i implementacje wielodialektowe
Remove ads
Przypisy
Zobacz też
Linki zewnętrzne
Wikiwand - on
Seamless Wikipedia browsing. On steroids.
Remove ads
