PureBasic - das rasend schnelle BASIC für Windows und Linux© Jan Beuck (Autor) und Thomas Antoni (Redaktionelle Bearbeitung), 12.2001 - 10.2004
|
Inhalt
Vorwort von Thomas AntoniMit PureBasic gibt es jetzt eine ideale BASIC-Sprache für Windows und Linux, die schnell zu erlernen, einfach anzuwenden und trotzdem extrem leistungsfähig und schnell ist. PureBasic ist auch bestens geeignet für Q(uick)Basic-Programmierer, die zu einer Windows-Programmiersprache aufsteigen wollen. Im Gegensatz zu Blitz Basic / Blitz3D, das für die Programmierung von 3D-Spielen ideal ist, kann man mit PureBasic neben Spielen auch ganz "normale" Anwendungen und Tools mit Windows-Oberfläche programmieren. Für des Erstellen von 2D-Spielen ist PureBasic aufgrund seiner DirectX-Schnittstelle gut geeignet.Für mich ist PureBasic wegen der folgenden Eigenschaften eine Super-Sprache:
Wer mehr über Jan selbst wissen möchte, der lese mein Interview mit Jan auf www.antonis.de Sehr interessant zu lesen ist auch folgender Testbericht eines PureBasic-Users. Ganz unten finden Sie noch eine Aktualisierung von Franz Mertens, die die Fortschritte von PureBasic in den Jahren von der Ersterscheinung dieses Artikels bis 2004 darlegt. PureBasic - Was ist das überhaupt genau?PureBasic - der Rivale!Genau wie das Auto, das mit diesem Slogan wirbt, kommt auch PureBasic aus Frankreich. Entwickelt wird es seit ungefähr zwei Jahren von dem französischen Entwicklerteam Fantaisie Software - mit dem Ziel, den besten Compiler überhaupt zu schreiben! Das Ihnen das durchaus gelungen sein könnte, werde Sie im folgenden erfahren... Generell sei gesagt, dass es sich bei PureBasic um einen echten 32 Bit Maschinencodecompiler handelt, der eine mit QuickBasic und Blitz Basic verwandte Syntax hat und daher für Umsteiger sehr gut geeignet ist. PureBasic hat einen äußerst geringen Resourcenverbrauch und läuft auch problemlos auf älteren Rechnern ab 486ern. Die Programme können nicht nur für Windows (alle Versionen von 95 über NT bis XP) und Linux, sondern sogar für das Amiga OS kompiliert werden. Dabei wird für jedes System der Code in handoptimierte Assemblerroutinen übersetzt und direkt durch einen Assembler geschickt - unter Windows zum Beispiel durch den mitgelieferten NASM. Das macht PureBasic zur effizientesten Sprache die uns bekannt ist - in vielen Fällen sogar noch etwas schneller als Blitz Basic (3443 Frames bei meinem von www.blitzbasic.de bekannten Grafikbenchmark SPEED). Und nach Angabe der Programmierer in den meisten Fällen auch schneller als C++! Erstaunlich fällt dabei die Programmgröße aus: Ein Movieplayer, der alle Filmformate wie MPEG und AVI über DirectX DirectShow abspielen kann (wie der MS Mediaplayer) und regelbare Größe und Lautstärke hat, ist inklusive eingelinktem Icon 39,5 KB groß. Der Umfang des Quellcodes beträgt 6,1 KB. Und das ist keineswegs optimiert, er wurde in weniger als einer Stunde programmiert! Ein "Hallo Welt" Programm ist als EXE-Datei etwa 6,5 KB KB groß. Megabyte-große Runtime Dateien, wie z.B. bei Visual Basic, werden nicht benötigt. Vielleicht haben Sie´s schon bemerkt: Im Gegensatz zu QuickBasic, Darkbasic und Blitzbasic kann PureBasic Windows Applikationen aller Art erstellen! Und zwar vom TCP/IP FTP Programm über Tabellenkalkulationen und ODBC- Datenbankanwendungen bis zum DirectX Vollbildspiel! Apropos DirectX: Viele Funktionen benötigen unter Windows natürlich DirectX, zum Beispiel Sound, Videos sowie Grafik, etwa in den Formaten BMP und JPG. Aber PureBasic selbst braucht DirectX nicht zwingend: Applikationen wie ein Editor, eine Office-Anwendung oder ein FTP Programm lassen sich auch ohne DirectX schreiben. Der PureBasic-Editor wurde übrigens selbst in PureBasic geschrieben! PureBasic bietet Zugriff auf das gesamte API des jeweiligen Betriebssystems (also unter Windows alle Arten von Schaltern, Fenstern, Pull-Down Menüs, Statusbalken etc.), einen intergrierten Editor mit Syntax Coloring, einen intergrierten Debugger (mit dem man als einzigem nicht - LISP Debugger den Code zur Laufzeit ändern kann!) und einen einen Inline - Assembler (den auch weder Blitz Basic noch DarkBasic noch QuickBasic haben). Es gibt alle üblichen Datentypen, Arrays, Strings und benutzerdefinierte Strukturen. Desweiteren werden die in BASIC von vielen Profis zumeist vermissten Features geboten: Dynamically Linked Lists und Pointer! Eine ausführliche Online - Hilfe in mehreren Sprachen, z.B. Englisch und Deutsch ist verfügbar. Updates aller Art sind in der Regel umsonst. Alle mit der Vollversion erstellten Programme dürfen ohne Lizenzgebüren uneingeschränkt verkauft werden. Da der Text sonst zu lang wird, werde ich jetzt noch ein paar Stichworte in den Raum werfen: Memory Banks um den Arbeitsspeicher selbst zu verwalten, Keyboard + Maus + Joystick, Fonts (z.B. Truetype), Dateizugriff, wählbare Farbtiefe von 8 bis 32 bit, Sortierfunktionen, Funktionen zum Verwenden der Taskleiste, PAK- Files um Daten komprimiert und geschützt zu speichern, Netzwerkroutinenen (z.B. für Server/Client Spiele) und Support für Third-Party-Libraries (Bibliotheken von Drittherstellern) in Assembler und C! Für wen ist PureBasic zu empfehlen? PureBasic bietet sich vor allem für professionelle und semiprofessionelle Entwickler an, deren Projekten zeitliche Grenzen gesetzt sind, und die große und kleine Projekte schnell verwirklichen wollen, aber keinen vorgefertigten 'Game Creator' oder ein 'Authoring Tool' verwenden wollen, welche immer die Funktionalität und die Vielfalt einschränken. PureBasic ist extrem preiswert, also auch für Schüler und Studenten mit schmalem Geldbeutel geeignet. Wer sich bereits mit Basic auskennt wird schon beim Lesen der Anleitung (liegt der Demoversion bei) bemerken, dass PureBasic keine relevanten Grenzen hat. Diese Flexibilität hat aber auch eine etwas längere Einarbeitungszeit zur Folge als zum Beispiel Blitz Basic, daher raten wir Programmieranfängern, die schnelle Erfolge erzielen wollen, zu Blitz Basic und jenen, die sich speziell für 3D Programmierung interessieren, zu dem darauf spezialisierten Blitz Basic / Blitz3D. Blitz Basic wird in Deutschland ebenfalls von uns vertrieben. Informationen zu Blitz Basic und Blitz 3D gibt es unter www.blitzbasic.de. Für alle Anwendungsentwickler und erfahrene 2D Spiele/Multimediaprogrammierer ist PureBasic die beste Wahl, da es plattformunabhängig ist und überall die maximale Leistung bietet. Fazit PureBasic ist ein Hammer! Die Assembler-Experten von Fantaisie Software haben ganze Arbeit geleistet und sich auch für die Zukunft noch einiges vorgenommen. Lob verdienen der Compiler und das Sprachdesign, beides gehört zum Besten was ich je gesehen habe. Die Einfachheit von Basic - nicht nur für Spiele, sondern auch für Anwendung mit windowsgemäßer Bedienoberfläche. Linked Lists, ODBC, Pointer... und ein LISP-ähnlichen Debugger - perfekt. Lediglich an der Benutzerseite kann noch gearbeitet werden - auf falsche Befehle reagiert PureBasic gelegentlich sensibel und frustriert damit vor allem Einsteiger. Der Editor bekommt mit der nächsten Version einen Function Bar (ähnlich dem von Blitz Basic), der für große Projekte auch dringend nötig ist. Alles in allem empfehle ich PureBasic Fortgeschrittenen und Profis, Anfänger sollten lieber Blitz Basic benutzen. PureBasic in Internet Weitere Informationen gibt es auf unserer Webseite unter www.purebasic.de und - auch in deutsch - auf der Homepage des Herstellers, www.purebasic.com Ich hoffe, dass mein Artikel dabei hilft, den Wert von PureBasic einzuschätzen. Viel Spass beim programmieren (mit was auch immer ;-)) wünscht Ihnen Jan Beuck Die PureBasic Freeware-VersionSie können die PureBasic Freeware-Version mitsamt der deutschen Hilfe von unserer Seite www.purebasic.de herunterladen. Die englische Version gibt es bei www.purebasic.com dort ist auch die deutsche Hilfe als eigene Datei verfügbar.Die Freeware-Version ist ist nach dem Entpacken des nur ca. 2 MB großen Download-Archivs in einen beliebigen Ordner sofort lauffähig. Die Registry wird nicht verunreinigt und eine rückstandsfreie Deinstallation ist jederzeit durch einfaches Löschen des Programmverzeichnisses möglich. Die Einschränkungen der Freeware-Version gegenüber der Vollversion sind:
Wie schnell und schlank ist PureBasic?Die von PureBasic erzeugten EXE-Programme sind generell schneller als die aller Windows-"Einsteigersprachen" wie Profan², Delphi, VisualBasic und Envelop. Ein EXE-Programm, das "Hello World" auf dem Bildschirm anzeigt, ist nur 6,53 KB groß und benötigt keinerlei Runtime-Bibliotheken!!! Die Vergleichsgrößen sind 1,5 MB bei VisualBasic 6 (inklusive Runtime-Files) und ca. 400 KB bei Delphi.PureBasic ist obendrein universeller einsetzbar als die genannten Sprachen, da sowohl DirectX Spiele als auch alle Arten von Anwendungen programmiert werden können. Die .EXE Dateien sind kleiner, und es werden keinerlei Runtime Dateien benötigt. Die erstellten EXE-Programme sind ohne besondere Installation und Registry- Einträge sofort auf jedem Computer lauffähig und lassen sich bei Bedarf durch einfaches Löschen der Programmdateien rückstandsfrei wieder deinstallieren. Der Compiler selbst arbeitet ebenfalls rasend schnell und kann bereits auf einem Petium / 200 MHz 300 000 Quellsprachezeilen pro Minute kompilieren !! Sogar auf einem uralten 486er-Computer kann man mit PureBasic noch zügig arbeiten. Programme für Windows und Linux - aus einer QuelleSolange man keine speziellen Windows API- und DirectX-Aufrufe verwendet, ist es möglich, ein Programm so zu schreiben, dass es ohne Änderungen für Windows, für Linux und für AmigaOS kompiliert werden kann. In der Vollversion von PureBasic sind alle 3 Compiler für Windows, Linux und AmigaOS komplett im Preis inbegriffen.Es gibt nur wenige Sprachen, die eine derartige Plattformunabhängigkeit bieten. Die einzigen mir bekannten Alternativen sind C++, Delphi/Kylix und Java. Bei PureBasic erkauft man die Plattformunabhängigkeit keinesfalls durch irgendwelche Nachteile aufgrund von langsamen Codegeneratoren oder Virtual Machines. PureBasic erzeugt für jedes Betriebssystem rasend schnellen nativen Ablaufcode. BefehlsumfangPureBasic hat einen mächtigen Befehlsumfang und bietet unter anderem
Multimedia-FunktionenPureBasic enthält hochoptimierte Bibliotheken zur Manipulation von Bitmap-Grafiken und zum Zugriff auf die von OpenGL und DirectX zur Verfügung gestellten Multimediafunktionen für Grafik, Sound und Video. Im Lieferumfang von PureBasic sind ein Bildbetrachter und ein Movieplayer als Beispielprogramme enthalten, die deutlich zeigen, wie einfach und bequem sich die Multimedia-Programmierung mit PureBasic gestaltet.Außerdem gibt es eine komplette Bibliothek mit 2D-Zeichenfunktionen Spieleprogrammierung in PureBasicDa PureBasic erst seit kurzem auf dem Markt ist, gibt zwar momentan (noch) keine irgendwo downloadbare professionellen in PureBasic programmierte Spiele, aber trotzdem ist PureBasic aufgrund seiner DirectX-Schnittstelle und der enormen Ablaufgeschwindigkeit sehr gut für die (2D-) Spieleprogrammierung geeignet. Genau wie Blitz Basic unterstützt es DirectDraw.Wir sind dermaßen von PureBasic überzeugt, dass wir beschlossen haben, unser nächstes Spiel in PureBasic statt in Blitz Basic zu programmieren. Sie können auf unser Urteil vertrauen. Schließlich sind wir kommerzielle Spiele-Entwickler: 'Krakout Unlimited' steht ja bereits im Laden und für 'The Tale of Imerion' haben wir schon einen Publisher. EingabegeräteEingabegeräte wie Maus, Joystick und Keyboard werden von PureBasic direkt unterstützt. Hierfür muss man also keine "Handarbeit" anlegen.Weitere FeaturesPureBasic bietet die folgenden weiteren Features:
Die Entwicklungsumgebung von PureBasicDie Entwicklungsumgebung von PureBasic ist einfach bedienbar und übersichtlich gestaltet. Sie zeichnet sich durch folgende Features aus:
Der DebuggerPureBasic hat einen komfortablen Debugger. Zusätzlich zu den üblichen Funktionen gibt es eine Watchtable für Variablen, Assembler Ports und Register sowie Single Step. Der PureBasic Debugger hat als einziger mir bekannter Nicht-LISP Debugger die Möglichkeit, den Code zur Laufzeit zu ändern!System-Anforderungen von PureBasicPuteBasic ist bezüglich der Hardware-Anforderungen sehr genügsam. Ein ausreichendes Minimum ist:
Die Grenzen von PureBasicKommen wir zu einem für mich denkbar unangenehmen Kapitel - aber keine Angst, so schlimm ist es nicht ;)):Hier die einzigen Dinge, die man an PureBasic bemängeln kann:
SupportSie erhalten deutschsprachigen Support auf zwei offiziellen PureBasic Webseiten:PureBasic.de Auf unserer Webseite www.PureBasic.de erhalten Sie kompetenten E-Mail-Support über die E-Mailadresse support@purebasic.de . Dort gibt es auch ein gut besuchtes deutschsprachiges PureBasic Diskussionsforum und die Möglichkeit, einen deutschen Basic-Newsletter zu bestellen. Dann gehören Sie immer zu den Ersten, die sich neue Updates runterladen und News über Basic Programmiersprachen erfahren. Außerdem gibt es auf unserer Seite eine Programm-Galerie mit vielen lehrreichen PureBasic Beispielprogrammen zum Herunterladen. PureBasic.com www.PureBasic.com ist die offizielle Webseite des PureBasic-Herstellers Fantaisie Software. Dort gibt es auch einen deutschsprachigen Webmaster, und die ganze Seite ist auch in einer deutschen Version vorhanden. Außerdem finden Sie dort ein englisches PureBasic Diskussionsforum, und man kann sich in eine Mailingliste eintragen, um sich per E-Mail über die Neuigkeiten zu PureBasic auf dem Laufenden zu halten. Online-Hilfe und DokumentationEs gibt eine deutsche, nach Themen geordnete Online-Hilfe, die auch kontextsensitiv verwendet werden kann: Betätigt man die F1-Taste, so wird sofort die Hilfe zu demjenigen Schlüsselwort angezeigt, auf dem der Cursor steht.Wer sich vorab über PureBasic informieren will, kann sich die aktuelle Deutsche Online-Hilfe auf www.purebasic.de herunterladen. Wer hat PureBasic gemacht?PureBasic ist ein Produkt der Firma Fantaisie Software und das Werk eines kleinen französischen Entwicklerteams um Frédéric Laboureur, Richard Anderson und André Beer. Letzterer spricht fließend deutsch und ist für die deutsche Dokumentation und Hilfe zuständig.Die PureBasic-Entwickler sind sehr offen für alle Verbesserungsvorschläge und sind über die PureBasic Webseite www.purebasic.com erreichbar. QuickBasic im Vergleich zu PureBasicViele Q(uick)Basic Befehle findet man auch in PureBasic wieder. Trotzdem kann man ein QBasic-Programm nicht einfach durch den PureBasic-Compiler jagen und erwarten, das daraus ein lauffähiges Windows-Programm entsteht. Dazu sind die Befehls-Vorräte zu unterschiedlich. PureBasic kennt im Gegensatz zu Blitz Basic den von MS-DOS her gewohnten Textbildschirm nur im speziellen "Consolen-Modus", der mit dem BefehlOpenConsole() gestartet wird. Nur dort stehen Funktionen
wie INPUT und PRINT zur Verfügung. Statt des in QBasic hinreichenden
PRINT "Hello World"
muss man in PureBasic im Normalfall regelrecht ein Fenster anlegen und dort einen Text ausgeben. Die dafür erforderliche Befehlssequenz sieht ungefähr so aus: MessageRequester("","Hello World",0)
Kompiliert man dies Programm, so erhält man eine EXE-Datei, die nur 6,53 KB groß ist !!! Darüberhinaus gibt es viele kleine Unterschiede. Kommentare weden z.B. nicht mit einem Hochkomma, sondern mit einem Semikolon eingeleitet. PureBasic setzt generell wesentlich schnelleren Code ab als QuickBasic. Selbst im Vergleich zu QuickBasic mit der besten Assembler Lib (Future Lib 3.5) ist PureBasic in Sachen 2D Grafik zirka 50 mal schneller !!! Und - fast hätte ich es vergessen - PureBasic ist im Gegensatz zu dem rein DOS-basierten QuickBasic, das seit 10 Jahren nicht mehr weiterentwickelt wird, eine echte, moderne 32-bit Programmiersprache für Windows und Linux und wird laufend weiterentwickelt. Blitz Basic / Blitz3D im Vergleich zu PureBasicPureBasic ist im Gegensatz zu Blitz Basic nicht nur für die Programmierung von Spielen und Multimedia-Programmen, sondern auch für die Erstellung "normaler" Anwendungen mit Windows-gemäßen Menüs und Dialogboxen geeignet. Für die Entwicklung von 2D-Spielen ist PureBasic ebenso prädestiniert wie Blitz Basic, während Blitz Basic / Blitz3D bei 3D-Spielen seine Stärken ausspielt.Tendenziell ist der von PureBasic erzeugte Code sogar noch etwas schneller als der von Blitz Basic, besonders bei Programmschleifen. PureBasic ist flexibler und komfortabler als Blitz Basic: Das Abspielen von Videos wird direkt unterstützt, und PureBasic kann die Dateien nach dem Abschluss der Entwicklungs-Session alle in ein Archiv packen und bei Aufruf des EXE-Programms von dort wieder entpacken. Die Komprimierungsrate ist dabei noch etwas besser als bei ZIP! Dies Verfahren führt erstens natürlich zu extrem kleinen ausführbaren Dateien, zweitens spart man Zeit beim Laden des Programmms von der Festplatte. Denn schon ab 486er CPUs kostet das Entpacken wesentlich weniger Zeit als das Lesen der größeren - weil ungepackten - Dateien von der Festplatte. Das Packen der ausführbaren Dateien stellt auch einen gewissen Schutz gegen "Ausspähen" des Programms durch Konkurrenten dar. VisualBasic im Vergleich zu PureBasicPureBasic hat die folgenden Vorteile gegenüber VisualBasic:
C++ im Vergleich zu PureBasicThomas Antoni, der Webmaster der mit uns befreundeten Webseite www.QBasic.de hat mich einmal provozierend gefragt:"Du behauptest, PureBasic sei mehr etwas für Fortgeschrittene und Profis. Sollten solche Programmierer nicht lieber zu professionellen Mainstream-Sprachen wie C++ oder Java aufsteigen, die ihnen im späteren Berufsleben (und schon beim Einstellungsgespräch) mehr nützen?". Meine Antwort darauf lautet: Selbst kommerzielle Unternehmen wie Multimedia-Agenturen und Banken(!) haben PureBasic und Blitz Basic gekauft - und unsere Spiele sind auch nicht in C geschrieben und werden trotzdem veröffentlicht. Java ist meiner Ansicht nach für jeden Einsatz auf Computern ungeeignet. Es eignet sich vielleicht für kleine Elektroniksachen wie Fernbedienungen (für die es ja mal entwickelt wurde). C++ ist zwar der Standard, aber deshalb nicht für alle Anwendungsgebiete die beste Sprache. Ein Beispiel: Blizzard´s Diablo 2, das momentan meistverkaufte PC Spiel der Welt: ... wäre nicht 2 1/2 Jahre verspätet fertig geworden! ... würde nicht ein Jahr nach dem Release immernoch von Fehlern wimmeln! ... hätte nur einen Programmierer benötigt ... hätte eine höhere Auflösung, eine höhere Farbtiefe und würde nicht ruckeln! wenn es mit PureBasic oder Blitz Basic programmiert worden wäre. Soviel dazu. Welche Neuerungen sind künftig zu erwarten?Was bei PureBasic angenehm auffällt, ist, dass das Autorenteam ungemein innovativ ist und die Programmiersprache in schneller Folge um neue, sinnvolle Dinge erweitert. Auch Anregungen von den Usern werden, wenn sie sinnvoll sind, meist prompt in eine der nächsten Programmversionen eingebaut. Plötzlich gibt es zum Beispiel einen ganzen Satz Kompressionsbefehle - und das Beste daran ist, sie enthalten genau das, von dem man den Programmierern geschrieben hatte, dass es einem fehlt!Bei PureBasic hat man nach dem Updaten oft fast das Gefühl, eine ganz neue Programmiersprache vor sich zu haben! Aber keine Angst: Sie müssen den Compiler nicht jedes mal neu kaufen: Updates aller Art und jeden Umfangs sind in der Regel kostenlos. Abschließende WorteSie werden sich vielleicht wundern, warum PureBasic bisher so unbekannt geblieben ist. Der Grund dafür ist zum Einen, dass wenig Werbung dafür gemacht wurde, was wir von master creating aber wenigstens in Deutschland demnächst gewaltig ändern werden.Zum Anderen wollen die Programmierer einen Compiler weltweit im Laden sehen. Auch hier sind wir dabei, einiges in Richtung "Boxed Version" zu organisieren. Denn beim Onlineverkauf stößt man schnell an die Grenzen: Es ist leichter 1000 Boxes mit gedruckten Handbüchern an kommerzielle Firmenkunden oder eine Kette wie die Metro AG zu verkaufen als online an einzelne Privatkunden. PureBasic bestellenMaster creating ist der autorisierte deutsche Vertriebspartner von Fantaisie Software, dem Hersteller von PureBasic. Sie können die PureBasic Vollversion für nur 59 EUR direkt auf unserer Webseite www.purebasic.de online bestellen. Nachdem Sie uns das Geld überwiesen haben, erhalten Sie umgehend einen Downloadlink - und zwar sowohl für die Windows- als auch für die Linux- und die Amigaversion!Im Lieferumfang ist Folgendes enthalten:
Unsere Firma und unsere WebseitenDie Webseite www.purebasic.de ist Teil des master creating & consulting networks und wird vom Webmaster sowie dem deutschen PureBasic Support-Team betreut. PureBasic ist kein Produkt von master creating, wir treten lediglich als autorisierter deutscher Vertriebspartner auf. master creating selbst entwickelt Computerspiele und Websites. Wenn Sie weitere Informationen über master creating wünschen, besuchen Sie unsere Website www.master-creating.com oder schreiben Sie uns einfach eine E-Mail an mail@master-creating.com.Besuchen Sie auch unsere Blitz Basic Seite www.blitzbasic.de. Aktualisierung 2004 von Frank MertensAm 16.9.2004 erhielt der Herausgeber dieses Artikels die folgende Mail von dem erfahren PureBasic-Programmierer Frank Mertens. Hierin sind die wichtigsten Fortschritte aufgelistet, die PureBasic seit dem ersten Erscheinen des Artikels im Jahre 2001 gemacht hat. Ich halte die Mail für sehr informativ und gebe sie daher ohne Änderungen wider.Hallo Thomas! Ich bin Frank Mertens und habe lange Zeit (ca. 1998-2002) in der QB-Community mitgewirkt. Unter anderem habe ich den QB-Wettbewerb mit Storm-Master ersonnen, musste mich aber aus Zeitgründen zurückziehen. Später habe ich dann PureBasic gekauft, weil es, wie auf www.qbasic.de beschrieben, viele Neuerungen bringt und wesentlich moderner ist. Soviel dazu. Nun, jedenfalls habe ich deine Seite wieder besucht und habe mir den PureBasic-Artikel durchgelesen. Mir fiel auf, dass die Informationen teilweise sehr veraltet sind. Da habe ich mir gedacht, man könnte das aktualisieren. Und, tja, hier sind die Änderungen und Ergänzungen: Zum Abschnitt: "Wie schnell und schlank ist PureBasic?" Das minimale PureBasic-EXE-Programm mit dem Quellcode "MessageRequester("","Hello World",0)"
ist nicht mehr 6,53 kb groß, sondern nur noch genau 3 kb.
Zum Abschnitt: "Vorwort von Thomas Antoni" Man sollte erwähnen, dass die Programme nun CPU-optimiert compiliert werden können. Es ist über ein einfaches Pull-Down-Menü möglich, Programme genau für folgende CPUs kompilieren zu lassen: Man kann seinen Quellcode nicht nur zu EXE-Dateien compilieren, sondern auch zu DLL-Dateien und reinen 32-Bit-Konsolenprogrammen (ähnlich der DOS-Box). Zum Abschnitt: "Vorwort von Thomas Antoni" Es ist nun eine 3D-Engine eingebaut worden. Diese nennt sich Ogre (www.ogre3d.org), ist OpenSource und auch unter Linux lauffähig. Der 3D-Befehlssatz ist zwar noch eingeschränkt, aber das soll sich in der PureBasic-Version 4 ändern (aktuelle Version ist 3.91.) . Zum Abschnitt: "PureBasic - Was ist das überhaupt?" Als Assembler wird nicht mehr NAsm sonder der FLAT-Assembler benutzt. Zum Abschnitt: "PureBasic - Was ist das überhaupt?" PureBasic ist nicht mehr nur auf DirectX beschränkt. Es gibt einige erfolgreiche Versuche, 3D-Grafik unter OpenGL laufen zu lassen. Allerdings muss man die Grafikengine selber schreiben. Zum Abschnitt: "PureBasic - Was ist das überhaupt?" Die Entwicklungsumgebung wurde stark erweitert. Es gibt nun seitlich eine Leiste oder ein Pull-Down-Menü, in dem alle Prozeduren eingetragen sind. Mit einem Klick springt man sofort zu der Prozedure im Sourcecode. Es gibt die Möglichkeit eigene Hilfe-Dateien (*.chm und *.hlp) in das Hilfemenü einzubinden. Man braucht nur die Dateien in ein bestimmtes Verzeichnis zu kopieren und sofort wird die Hilfe entsprechend erweitert. Auch kann man Zusatzprogramme einbinden, die z. B. den Quelltext aufräumen oder anderes tun. Diese Programme sind fast alle von Hobby-Programmierern geschrieben. Zum Abschnitt: "Die PureBasic Freeware-Version" Die Win32-Api ist nicht eingeschränkt, sondern komplett deaktiviert. D. h. man kann in der Freeware keine Win32-API verwenden. Die Freeware gibt es jetzt übrigends in einer neuen Version (3.90). Zum Abschnitt: "Multimedia-Funktionen" Interessanterweise wird hier OpenGL erwähnt. Es gibt jetzt eine 3D-Engine (siehe oben). Diese unterstützt unter anderem: Laden von BSP-Dateien (Quake3-Levelformat), 3D-Partikeleffekte und Enities (agierende, animierte Objekte). Zum Abschnitt: "Spieleprogrammierung in PureBasic" Mittlerweile gibt es einige (auch kommerzielle) Spiele, die in PureBasic geschrieben wurden. Beispiele sind Krakout Unlimited 1+2 und Restricted Area. Letzteres hat eine eigene in PureBasic geschriebene Grafikengine und wurde von PC Games mit guten 82% bewertet (Quelle: Die Zeitschrift "PC Games"). Zum Abschnitt: "Eingabegeräte" Es gibt ein Projekt, bei dem versucht wird, mit dem Computer durch Zeichensprache zu kommunizieren. Zu finden unter www.purearea.net unter "deutsch" -> Projekte -> ICamPlay Zum Abschnitt: "Weitere Features" Es gibt nicht mehr nur 4 Bibliotheken, es sind mittlerweile über 50! Es werden auch nicht mehr nur 8.400 Win32-API-Aufrufe unterstützt , sondern 44.000! Zum Abschnitt: "Die Entwicklungsumgebung von PureBasic" Es ist nun möglich sich in einer extra Spalte alle Prozeduren auflisten zu lassen. Über einen Klick springt man dann direkt zu ihnen im Quellcode. Neue ist auch die automatische Zeilennummerierung, die die Fehlersuche im Quelltext vereinfacht. (Der Debugger gibt ja immer die Zeilennummer des Fehlers aus.) Zum Abschnitt: "Die Grenzen von PureBasic" Es gibt nun Möglichkeiten beliebig viele verschachtelte Schleifen mit einem Befehl zu verlassen. Beispiel: REPEAT FOR (...) WHILE (...) BREAK 2 WEND NEXT FOREVERDurch das BREAK werden 2 Schleifen werden verlassen. Die Programmausführung geht direkt nach
dem NEXT weiter.
Zum Abschnitt: "VisualBasic im Vergleich zu PureBasic" PureBasic hat einen eigenen visuellen Formular-Editor. Dialogfenster sind in Sekunden erstellt. Zum Abschnitt: "Welche Neuerungen sind künftig zu erwarten?" PureBasic-Updates erscheinen alle 2-4 Monate. Diese beinhalten immer viele Verbesserungen und neue Befehle. Allgemeines Ansonsten ist noch zu sagen, dass sich die PureBasic-Community stark erweitert hat. Die englische und deutsche Community arbeiten dazu noch sehr stark zusammen. Es sind außerdem zig neue Fanseiten zu der Programmiersprache entstanden. Die Wichtigste, www.purearea.net, betreut von André Beer, gibt einen guten Überblick über die Szene. Sie ist vergleichbar zu www.qbasic.de. Zum Abschnitt: "Befehlsumfang" Nun, der Abschnitt ist sehr kurz geraten. PureBasic bietet eine Unmenge äußerst mächtiger Befehle für spezielle Anwendungen. Dazu noch eine Vormerkung. Jeder Befehl ist wie bei QuickBasic in Bibliotheken gespeichert. In QBasic 4.5 gibt es 6 Standardbibliotheken (*.lib) in PureBasic sind es mittlerweile (ich habe nachgezählt) 54! Diese sind in die drei Bereiche Allgemein, 2D-Spiele und 3D-Spiele unterteilt. Beispiele aus dem Bereich "Allgemein" (35 Bibliotheken gesamt): Bibliothek "Cipher" (Verschlüsselung): Es werden verschiedene wichtige Verschlüsselungsalgorithmen unterstützt: BASE64, CRC32, MD5 und DES. Bibliothek "Gadget": Gadgets sind die Elemente eines Fensters, z. B. Buttons, Karteireiter usw. Diese werden zusammen mit der Bibliothek "Window" verwendet, die sich nur um Fenster und Dialogboxen kümmert. Wahrscheinlich sind das die beiden am meisten genutzen Bibliotheken in PureBasic überhaupt. Bibliothek "Network": Diese Bibliothek beinhaltet alles, was für ein Netzwerkprogramm nötig ist. Das verwendete Protokoll ist TCP/IP. Dabei wird das Client-Server-Modell verwendet. Mit der Bibliothek lassen sich sowohl Multiplayerspiele als auch FTP-Programme und mehr schreiben. Bibliothek "Thread": Threads sind Unterprogramme, die asynchron zum Hauptprogramm laufen. Während ein Thread z. B. gerade eine langwierige Operation durchführt, wird keinesfalls das Hauptprogramm beeinträchtigt oder angehalten (Multi-Tasking). Man kann normal weiterarbeiten. Bibliothek "Library": Mit der "Library" Bibliothek lädt man nicht PureBasic-eigene Bibliotheken. Nein, man lädt DLL-Dateien und kann anschließend deren zur Verfügung gestellten Funktionen nutzen. Beispiele aus aus dem Bereich "2D-Spiele" (9 Bibliotheken insgesamt): Bibliotheken Sprite & Sprite3D: Sprites sind 2D-Bilder (z. B. die Spielfigur bei Jump'n'Run-Spielen), die dank dieser zwei Bibliotheken vielfach manipuliert werden können. Z. B. können Sprites transparent (nur eine Farbe ist durchsichtig), transluzent (das ganze Sprite ist durchscheinend) dargestellt werden und vieles mehr. Die Grafik kann als Vollbildschirm oder in einem normalen Fenster angezeigt werden, natürlich flackerfrei durch Double-Buffering. Bibliothek "Sound" und "SoundPlugin": Damit können die weit verbreiteten Musikformate wie Mp3 und Wave abgespielt werden. Durch "SoundPlugin" kann zusätzlich auch OGG wiedergegeben werden. Beispiele aus aus dem Bereich "3D-Spiele" (10 Bibliotheken insgesamt): Bibliothek "Particle": Diese Bibliothek erzeugt regelrechte Partikelfontänen. Sehr gut geeignet um Feuerwerke oder einfach nur Funken zu erzeugen. Bibliothek "Terrain": Die letzte Bibliothek, die ich hier vostellen möchte, erzeugt aus einer Höhenkarte (Alpha-Map) und einer Landschaftstextur eine komplette 3D-Landschaft. Ich habe nicht konkret Befehle angegeben (Pro Bibliothek sind es im Schnitt 15 Befehle, bei 50 Bibliotheken wären das 750(!) Befehle). Meine Kurzbeschreibung der Bibliotheken bringt auch so gut 'rüber, was für Möglichkeiten PureBasic hat. Puh! Die eMail ist doch länger geworden als erwartet. Ich weiß ja nun nicht, was Du mit den Informationen hier machst, aber ich hoffe, Du berücksichtigst sie. Für Rückfragen stehe ich gerne zur Verfügung. MfG Frank Mertens (eLaurin@gmx.net) |
[zur Startseite http://www.antonis.de] [zur framelosen Startseite] |