PureBasic - PureBasic
![]() | Tento článek obsahuje seznam obecných Reference, ale zůstává z velké části neověřený, protože postrádá dostatečné odpovídající vložené citace.Červen 2011) (Zjistěte, jak a kdy odstranit tuto zprávu šablony) ( |
![]() | |
![]() | |
Paradigma | strukturovaný, rozkazovací způsob, procesní |
---|---|
Rodina | ZÁKLADNÍ |
Navrhl | Fantaisie Software |
Vývojář | Fantaisie Software |
Poprvé se objevil | 1998 (AmigaOS) 2000 (Windows) |
Stabilní uvolnění | 5,73 LTS / 23. listopadu 2020 |
OS | napříč platformami: Microsoft Windows, Linux, Operační Systém Mac (aktivní) AmigaOS (ukončeno, otevřený zdroj ) |
Licence | komerční |
Přípony názvu souboru | .pb, .pbi, .pbf, .pbp, .pbv |
webová stránka | www |
PureBasic je komerčně distribuován procesní počítač programovací jazyk a integrované vývojové prostředí na základě ZÁKLADNÍ a vyvinutý společností Fantaisie Software pro Okna 32/64 bitů, Linux 32/64 bitů a Operační Systém Mac. An Amiga verze je k dispozici, i když byla ukončena a některé její části jsou vydány jako otevřený zdroj. První veřejné vydání PureBasic pro Windows bylo 17. prosince 2000. Od té doby je průběžně aktualizováno.
PureBasic má „model doživotní licence“. Jak je uvedeno na webových stránkách, první uživatel PureBasic (který se zaregistroval v roce 1998) má stále bezplatný přístup k novým aktualizacím, což se nezmění.[1]
PureBasic se kompiluje přímo do x86, x86-64, PowerPC nebo 680x0 instrukční sady, generující malé samostatné spustitelné soubory a DLL které nepotřebují žádné běhové knihovny nad rámec standardních systémových knihoven. Programy vyvinuté bez použití pro konkrétní platformu aplikační programovací rozhraní (API) lze snadno vytvořit ze stejného zdrojového souboru s malými nebo žádnými úpravami.
Podpora PureBasic inline montáž, což umožňuje vývojáři zahrnout FASM příkazy assembleru ve zdrojovém kódu PureBasic, zatímco používají proměnné deklarované ve zdrojovém kódu PureBasic, což umožňuje zkušeným programátorům zlepšit rychlost sekcí kódu kritických pro rychlost. PureBasic podporuje a integroval OGRE 3D prostředí. Další 3D prostředí, jako je Irrlichtův motor jsou neoficiálně podporovány.
Programovací jazyk
Vlastnosti
PureBasic je nativní multiplatformní 32bitový a 64bitový překladač BASIC. Aktuálně podporované systémy jsou Windows, Linux, macOS. Verze AmigaOS je starší a open-source. Kompilátor produkuje nativní spustitelné soubory a syntaxe PureBasic je jednoduchá a přímá, srovnatelná s prostým C bez závorek a s nativním zpracováním řetězce unicode a velkou knihovnou integrovaných podpůrných funkcí.[2] Může kompilovat konzolové aplikace,[3] Aplikace GUI,[4] a soubory DLL.[5]
Příklad Hello World
Následující jediný řádek kódu PureBasic vytvoří samostatný spustitelný soubor x86 (4,5 KiB (4 608 bajtů) ve verzi Windows), který zobrazí okno se zprávou s textemAhoj světe ".
MessageRequester(„Schránka se zprávou“, "Ahoj světe")
A následující varianta stejného kódu, který místo toho používá vložený Windows API volání bez nutnosti deklarací nebo jiných externích odkazů, vytvoří ještě menší samostatný spustitelný soubor x86 pro Windows 2,0 KiB (2 048 bajtů) pro Windows.
MessageBox_(0, "Ahoj světe", „Schránka se zprávou“, 0)
Následuje konzolová verze příkladu Hello World.
OpenConsole() ; Otevřete okno konzoly. Tisk("Ahoj světe!")
Procedurální programování
PureBasic je jazyk „BASIC druhé generace“ se strukturovanými podmínkami a smyčkami a podporovaným programováním orientovaným na procedury. Uživatel není povinen používat postupy, takže programátor se může rozhodnout pro styl kódování, který zahrnuje Přejít, štítek Gosub, a Vrátit se.
Níže je ukázkový postup pro třídění pole, i když SortArray je nyní integrovanou funkcí PureBasic.
1 Postup bubbleSort(Pole A(1)) 2 Chráněný i, itemCount, změnila 3 4 itemCount = ArraySize(A()) 5 Opakovat 6 změnila = #Nepravdivé 7 itemCount - 1 8 Pro i = 0 Na itemCount 9 Li A(i) > A(i + 1)10 Zaměnit A(i), A(i + 1)11 změnila = #Skutečný12 EndIf 13 další 14 Dokud změnila = #Nepravdivé15 Konečný postup
Níže je ukázkový program, který zobrazuje značný textový editor se dvěma položkami nabídky.
; Vytvořit okno:Otevřené okno(0, #PB_Ignore, #PB_Ignore, 800, 600, "Jednoduchý textový editor", #PB_Window_SystemMenu | #PB_Window_MinimizeGadget | #PB_Window_MaximizeGadget | #PB_Window_SizeGadget); Přidat 2 nabídky:CreateMenu(0, WindowID(0))Položka nabídky(1, "&OK")Položka nabídky(2, "&Zrušení"); Přidat editor:EditorGadget(0, 0, 0, 0, 0)SetGadgetFont(0, LoadFont(0, „Courier New“, 10)); Zpracovávat zprávy v okně do zavření:Opakovat Vybrat WaitWindowEvent() Případ #PB_Event_Menu Vybrat Nabídka událostí() Případ 1: MessageRequester("OK kliknul přímo nebo pomocí '&' mnemotechnické pomůcky.", GetGadgetText(0)) Případ 2: Přestávka EndSelect Případ #PB_Event_SizeWindow: ResizeGadget(0, 0, 0, Šířka okna(0, #PB_Window_InnerCoordinate), Výška okna(0, #PB_Window_InnerCoordinate)) Případ #PB_Event_CloseWindow: Přestávka EndSelectNavždy
Upozorňujeme, že PureBasic neunikne dvojitým uvozovkám v řetězcích, takže s nimi musí být spojeny Chr (34).
Objektově orientované programování
Fred, vývojář PureBasic, uvedl, že PureBasic nikdy nebude objektově orientovaný.[6] Mnoho uživatelů však vytvořilo objektově orientované podpůrné systémy.[7][8][9]
Typy dat
Variabilní datový typ určený při prvním použití (a volitelně - v budoucnu) a je oddělen od názvu bodu. Existuje sada základních typů - .f, .d (plovoucí a dvojitá čísla), .b, .c, .w, .l, .q (celá čísla - od jednobajtového a 8bajtového), .s - struny.
Typ | Přípona | Využití paměti | Numerický rozsah |
---|---|---|---|
Byte | b | 1 bajt (8 bitů) | −128 ... +127 |
Ascii | A | 1 bajt (8 bitů) | 0 ... +255 |
Charakter | C | 1 bajt (8 bitů) (ascii) | 0 ... +255 |
Slovo | w | 2 bajty (16 bitů) | −32768 ... +32767 |
Unicode | u | 2 bajty (16 bitů) | 0 ... +65535 |
Charakter | C | 2 bajty (16 bitů) (unicode) | 0 ... +65535 |
Dlouho | l | 4 bajty (32 bitů) | −2147483648 ... +2147483647 |
Celé číslo | i | 4 bajty (32 bitů) x86 | −2147483648 ... +2147483647 |
Plovák | F | 4 bajty (32 bitů) | V závislosti na poměru desetinného čísla. |
Celé číslo | i | 8 bajtů (64 bitů) x64 | −9223372036854775808 ... +9223372036854775807 |
Quad | q | 8 bajtů (64 bitů) | −9223372036854775808 ... +9223372036854775807 |
Dvojnásobek | d | 8 bajtů (64 bitů) | V závislosti na poměru desetinného čísla. |
Tětiva | s | (Délka řetězce + 1) * SizeOf (Znak) | Bez omezení. |
Pevný řetězec | s {délka} | (Délka řetězce) * SizeOf (Znak) | Bez omezení. |
- Poznámka: Len (řetězec) použitý k počítání délky řetězce nepřekročí první prázdný znak (Chr (0)).
Kromě základních typů může uživatel definovat typ konstrukce pomocí
Struktura název_typu pole_name.typ ; Jedno pole. Možná připevnění struktur. pole_name[počet].typ ; Statická pole. ; ... ; Volitelná konstrukce StructureUnion .. EndStructureUnion vám to umožňuje ; kombinovat více polí do jedné oblasti paměti ; to je někdy vyžadováno pro typy převodu. Struktura Unie název_typu.typ ; ... EndStructureUnion Konec struktury
Proměnné mohou být jednoduché (ve skutečnosti standardní proměnné), dynamické pole (deklarované pomocí Ztlumit var_name.název_typu (velikost1, velikost2, ... )
, propojený seznam (Seznam() var_name.název_typu
), asociativní pole (v nových verzích jazyka) (Mapa var_name.název_typu()
)
Návrhář formulářů RAD
PureBasic má svůj vlastní formulář designér na pomoc při vytváření formulářů pro aplikace, ale jsou k dispozici i další řešení třetích stran.[10][11][12] Původní neintegrovaný Vizuální designér byl nahrazen novým integrovaným Návrhář formulářů dne 14. února 2013.[13]
Komunita uživatelů
PureBasic poskytuje online fórum, kde mohou uživatelé klást otázky a sdílet znalosti. Dne 6. května 2013 mělo fórum v anglickém jazyce 4 769 členů a obsahovalo 44 043 vláken obsahujících 372 200 příspěvků od 17. května 2002.[14]
Četné weby pro sdílení kódu ukazují, že PureBasic se používá k vytváření nástrojů[15] a hry rychlým a snadným způsobem,[16] a sdílet velké množství open-source kódu.[17]
Další čtení
- Willoughby, Gary (2006). Purebasic: Průvodce pro začátečníky k programování v počítači. ISBN 1-4276-0428-2.
- Logsdon, Johne. Programování 2D rolovacích her.Tato kniha je nyní volně ke stažení
- Základní kompilátory: QuickBASIC, PureBasic, PowerBASIC, Blitz Basic, XBasic, Turbo Basic, Visual Basic, FutureBASIC, REALbasic, FreeBASIC. ISBN 1-155-32445-5.
Reference
- ^ FAQ doživotní licence podrobnosti
- ^ Domovská stránka PureBasic
- ^ PureBasic - konzole
- ^ PureBasic - gadget
- ^ Vytváření DLL
- ^ PureBasic nebude objektově orientovaný
- ^ PureObject: Podpora PureBasic OOP
- ^ Výukový program OOP
- ^ Další OOP PreCompiler
- ^ PureVision, Profesionální design formuláře pro PureBASIC.
- ^ ProGUI Knihovna DLL obsahující více než 100 dobře zdokumentovaných příkazů pro rychlé začlenění bohatých přizpůsobitelných komponent GUI do vašich aplikací.
- ^ PureFORM, Návrhář freewarových formulářů.
- ^ Vychází PureBasic 5.10
- ^ Anglické fórum, Oficiální fórum.
- ^ Stránky softwaru Horsta Schaeffera
- ^ PureArea
- ^ Archiv kódů Andre Beera.
Obecné odkazy
- Hale Ligh, Michael (2010). Malware Analysts Cookbook Tools pro zmaření škodlivých útoků. Indianapolis, IN: John Wiley & Sons Inc. str. 241. ISBN 0-470-61303-3.
- Galbreath, Nick (2002). Kryptografie pro internetové a databázové aplikace: vývoj technik tajných a veřejných klíčů v prostředí Java. Indianapolis, Ind .: Wiley. str.300. ISBN 978-0-471-21029-0.
- „Learning to Crack Code“. Manly Daily. 25. června 2004.
- Georges, Philippe. „La programmation avec PureBasic“. PROgrammez (141).
- Svoboda, Luboš (2012). Překvapivý PureBasic (Překvapivý PureBasic: český ebook pro potenciální uživatele PureBasic). p. 89.
externí odkazy
- Články
- Knihovny a archivy kódů otevřeného zdroje