Qore (programovací jazyk) - Biblioteka.sk

Upozornenie: Prezeranie týchto stránok je určené len pre návštevníkov nad 18 rokov!
Zásady ochrany osobných údajov.
Používaním tohto webu súhlasíte s uchovávaním cookies, ktoré slúžia na poskytovanie služieb, nastavenie reklám a analýzu návštevnosti. OK, súhlasím


Panta Rhei Doprava Zadarmo
...
...


A | B | C | D | E | F | G | H | CH | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9

Qore (programovací jazyk)
Qore
Druhviacparadigmový, interpretovaný, imperatívny, objektovo orientovaný
TvorcaDavid Nichols
Používané prípony.q, .qm, .qtest

Qore je interpretovaný, vysoko-úrovňový, univerzálne použiteľný, dynamický programovací jazyk používajúci garbage collector a ponúkajúci podporu pre code embedding, sandboxing, s voliteľným silným typovaním a dôrazom na natívnu podporu viacvláknového programovania a SMP škálovateľnosť.

Qore je unikátny vďaka tomu, že ide o interpretovaný skriptovací jazyk s natívnou podporou pre viac vlákien (teda môže v tej istej chvíli bežať viacero častí kódu súčasne) a tiež preto, že ponúka automatickú správu pamäte (programátori nemusia explicitne prideľovať a uvoľňovať pamäť). Okrem toho podporuje RAII idióm s deštruktormi pre blokovú správu zdrojov a "výnimkovo bezpečné" programovanie.[1] To je umožnené jedinečnou implementáciou Qore Garbage Collectoru, ktorý je schopný zbierať zdroje dopytovo.[2]

Qore skripty

Qore skripty majú spravidla nasledovné koncovky:

  • .q: Qore skripty
  • .qm: Qore užívateľské moduly
  • .qtest: Qore testové skripty

Spustiteľné Qore skripty pre Unixové operačné systémy typicky začínajú tzv. "hashbangom" na určenie interpreteru:

#!/usr/bin/env qore

Syntax

Syntax Qore je podobná a inšpirovaná syntaxou nasledujúcich jazykov:[3]

  • Perl: bez %new-style je Qore syntax veľmi podobná Perl, foreach výraz, splice, push, pop a chomp operátory, Perl5 kompatibilné regulárne výrazy a iné
  • Java: s %new-style sa Qore viac podobá na Javu,[4] kľúčové slovo synchronized, instanceof operátor a implementácia objektov a tried
  • C++: viacnásobná dedičnosť, spracovanie výnimiek, statické metódy, abstraktné metódy
  • D: on_exit, on_success, on_error výrazy poskytujú výnimkovú funkcionalitu podobnú v D používaných scope(exit) a scope(failure), umožňujúcu umiestnenie kódu ošetrujúceho výnimku vedľa kódu, ktorý ju vyvolal
  • Haskell: map, foldl, foldr a select operátory

Dátové typy

Základné typy sú: boolean, string, integer, float, date, binary,[5] list, hash (slovník / asociatívne pole), object[6] a code pre kód použitý ako dátový typ.[7]

Viacvláknové programovanie

Napriek tomu, že je Qore interpretovaný jazyk, bol vytvorený s podporou viacerých vlákien ako základným dizajnovým princípom. Všetky časti Qore sú vláknovo bezpečné a vo všeobecnosti bol jazyk navrhovaný s prihliadnutím na SMP škálovateľnosť. Z tohto dôvodu Qore programy a skripty nemusia byť obmedzované na podmnožinu Qore funkcionality a taktiež je to dôvod, prečo v Qore neexistuje globálny interpreterový zámok.[8]

Vláknová funkcionalita je v Qore poskytovaná POSIX knižnicou operačného systému.

Garbage Collection

Qore ponúka jedinečný prístup v súvislosti s garbage collectorom, tzv. "prompt collection"[2], ktorý dovoľuje spúšťať deštruktory objektov okamžite po tom, ako sa tieto ocitnú mimo pôsobnosti a to aj v prípade, že držia rekurzívne referencie na seba samých. To umožňuje Qore podporovať RAII idióm a tiež vykonávanie automatickej správy pamäte.

Podpora code embeddingu a sandboxingu

Qore bol navrhnutý tak, aby v aplikáciách podporoval code embedding a sandboxovú logiku. To platí ako v prípade aplikácií napísaných v Qore, tak aj pri aplikáciách používajúcich C++ API z Qore verejnej knižnice. Použitím Program triedy, ktorá reprezentuje logický kontajner so sandboxovým ovládaním, diskrétne objekty obsahujúce embedded code, ktoré môžu byť vytvárané a ničené za behu, na rozšírenie alebo pozmenenie aplikácie používateľom.[9]

Runtime knižnica

Štandardná Qore runtime knižnica podporuje mapovanie dát, API pre komunikáciu s databázami (vrátane vysoko-úrovňových API pre SQL operácie, správu schém a DBA akcie), klientské API a implementácie serverových infraštruktúr pre mnoho protokolov ako HTTP, REST, WebSocket, RPC protokoly a veľa protokolov na formátovanie súborov a na transfer súborov a dát.[10]

Testovanie

Qore podporuje testovanie prostredníctvom QUnit modulu ktorý zaobstaráva automatické testovanie a nepretržité integračné procesy pre kód napísaný v Qore.

Dostupnosť

Qore Git repozitár je na GitHube. Binárne balíky sú dostupné ako RPM, v MacPorts a vo FreeBSD Ports ako aj pre iné operačné systémy, vrátane Microsoft Windows. Viď General Source and Download Info na Qore wiki pre viac informácií.

Referencie

  1. Why use Qore? . Qore.org, 2016-06-13, . Dostupné online.
  2. a b Prompt Collection . Qore.org, 2016-06-14, . Dostupné online.
  3. qore/ABOUT at develop · qorelanguage/qore · GitHub . . Dostupné online.
  4. Qore Programming Language Reference Manual: Parse Directives . . Dostupné online.
  5. Qore Programming Language Reference Manual: Basic Data Types . Qore.org, . Dostupné online.
  6. Qore Programming Language Reference Manual: Container Data Types . . Dostupné online.
  7. Qore Programming Language Reference Manual: Code Data Types . . Dostupné online.
  8. Qore Programming Language Reference Manual: Threading online. Cit. 2016-08-10. Dostupné online.
  9. Qore Programming Language Reference Manual: Qore::Program Class Reference online. Qore.org, cit. 2016-11-04. Dostupné online.
  10. Modules · qorelanguage/qore Wiki · GitHub online. 2016-06-12, cit. 2016-11-04. Dostupné online.

Externé odkazyupraviť | upraviť zdroj

Zdroj:
Text je dostupný za podmienok Creative Commons Attribution/Share-Alike License 3.0 Unported; prípadne za ďalších podmienok. Podrobnejšie informácie nájdete na stránke Podmienky použitia.
Zdroj: Wikipedia.org - čítajte viac o Qore (programovací jazyk)





Text je dostupný za podmienok Creative Commons Attribution/Share-Alike License 3.0 Unported; prípadne za ďalších podmienok.
Podrobnejšie informácie nájdete na stránke Podmienky použitia.

Your browser doesn’t support the object tag.

www.astronomia.sk | www.biologia.sk | www.botanika.sk | www.dejiny.sk | www.economy.sk | www.elektrotechnika.sk | www.estetika.sk | www.farmakologia.sk | www.filozofia.sk | Fyzika | www.futurologia.sk | www.genetika.sk | www.chemia.sk | www.lingvistika.sk | www.politologia.sk | www.psychologia.sk | www.sexuologia.sk | www.sociologia.sk | www.veda.sk I www.zoologia.sk