Xtext - Xtext
tento článek potřebuje další citace pro ověření.Duben 2016) (Zjistěte, jak a kdy odstranit tuto zprávu šablony) ( |
Stabilní uvolnění | 2.22.0 / 2. června 2020 |
---|---|
Typ | Softwarový rámec |
Licence | Veřejná licence Eclipse |
webová stránka | xtext |
Xtext je open-source softwarový rámec pro vývoj programovací jazyky a jazyky specifické pro doménu (DSL). Na rozdíl od standardu generátory analyzátoru, Xtext generuje nejen a analyzátor, ale také třídní model pro abstraktní syntaxový strom, jakož i poskytování plně funkčního, přizpůsobitelného IDE založeného na Eclipse.[Citace je zapotřebí ]
Xtext se vyvíjí v Eclipse Project jako součást Eclipse Modeling Framework Projekt a je licencován pod Veřejná licence Eclipse.[Citace je zapotřebí ]
Dějiny
První verze Xtextu byla publikována v roce 2006 v projektu openArchitectureWare. Poslední verzí vydanou v rámci projektu oAW byla verze 4.3. Od začátku roku 2008 byl Xtext vyvíjen na Zatmění v rámci projektu Eclipse Modeling.[1]
Připojování Zatmění roční souběžné vydání, verze Xtext verze 0.7.0 (červen 2009), 1.0 (červen 2010), 2.0 (červen 2011), 2.3 (červen 2012), 2.5 (prosinec 2013), 2.6 (květen 2014) a 2.7 (září 2014) . Rámec vyvíjí hlavně německá společnost Itemis.[2]
Funkčnost
Chcete-li určit jazyk, musí vývojář napsat gramatiku v gramatickém jazyce Xtextu. Tato gramatika popisuje, jak Ecore model je odvozen z textové notace. Z této definice odvozuje generátor kódu ANTLR analyzátor a třídy pro objektový model. Oba lze použít nezávisle na Eclipse.
Xtext obsahuje funkce, které se dobře integrují s IDE založeným na Eclipse:
- Syntaxe zbarvení
- Dokončení kódu
- Statická analýza
- Obrysový pohled
- Navigace zdrojovým kódem
- Indexování
- Porovnat pohled
- Vznáší se
- Skládání kódu
- Přejmenujte refaktoring
Jazyky Xtext a IDE jsou vysoce konfigurovatelné, protože jazyková infrastruktura a IDE jsou propojeny pomocí injekce závislostí a Guice. Výchozí komponenty lze snadno nahradit vazbou přizpůsobených.
Od verze 2.0 Xtext usnadňuje vývoj jazyky specifické pro doménu pro Virtuální stroj Java, s odkazem na a kompilaci artefaktů Java s těsnou integrací do sady Eclipse Java Development Toolkit. Knihovna jazyků výrazů pro opakované použití umožňuje bohaté chování v rámci DSL.
A generátor kódů napsáno v Xtend lze připojit pro jakýkoli jazyk. U jazyků JVM stačí namapovat koncepty DSL na artefakty Java, abyste získali holistickou integraci Java. Alternativní tlumočník je také k dispozici.[je zapotřebí objasnění ]
Použití
V době psaní tohoto článku[když? ], domovská stránka Xtextu obsahovala přibližně 40 komerčních a nekomerčních projektů z několika domén aplikací využívajících Xtext.[3]
Univerzální jazyk Xtend je také postaven na Xtextu.[Citace je zapotřebí ]
Ocenění
- Eclipse Community Awards 2010: „Nejinovativnější nová funkce nebo projekt Eclipse“[4]
- Sebastian Zarnekow, komisař, Eclipse Community Awards 2011: „Top Committer“[5]
- Sven Efftinge, vedoucí projektu, Eclipse Community Awards 2012: „Top Committer“[6]
Viz také
Reference
- ^ Efftinge, Sven. „Xtext - jazykové inženýrství snadné!“. www.eclipse.org. Citováno 16. února 2018.
- ^ itemis. Citováno z http://www.itemis.com.
- ^ Citováno z http://www.eclipse.org/Xtext/community.html.
- ^ Gayowski, Lynn. „Vyhlášeni vítězové cen Eclipse Community Awards“. www.eclipse.org. Citováno 16. února 2018.
- ^ Skerrett, Iane. „Vyhlášeni vítězové cen Eclipse Community Awards“. www.eclipse.org. Citováno 16. února 2018.
- ^ Guindon, Christopher. „Vyhlášeni vítězové cen Eclipse Community Award“. www.eclipse.org. Citováno 16. února 2018.
Bibliografie
- Sven Efftinge; Jan Köhnlein; Peter Friese. „Vytvořte si svůj vlastní textový DSL s nástroji z projektu modelování Eclipse“. Eclipse Foundation. Citováno 2012-07-03.
- Sven Efftinge. „Fowlerův příklad DSL s Xtextem“. blog sven efftinge. Citováno 2012-07-03.