Gobelin

Den aktuelle version af siden er endnu ikke blevet gennemgået af erfarne bidragydere og kan afvige væsentligt fra den version , der blev gennemgået den 8. oktober 2015; checks kræver 19 redigeringer .
Apache-tapet
Type webramme
Udvikler Apache Software Foundation
Skrevet i Java
Operativ system Cross-platform software
Første udgave 2000 [1] og 11. februar 2013 [2]
nyeste version 5.8.1 (25. januar 2021 ) ( 2021-01-25 )
Læsbare filformater Apache Tapestry Markup Language dokument [d]
Genererede filformater Apache Tapestry Markup Language dokument [d]
Stat Aktiv
Licens Apache-licens 2.0
Internet side tapestry.apache.org
 Mediefiler på Wikimedia Commons

Tapestry (fra  engelsk  -  "tapestry, woven fabric") er en objektorienteret Java - ramme til at skabe webapplikationer, der implementerer MVC -modellen . Tapestry blev skabt af Howard Lewis Ship og fortsætter med at blive aktivt udviklet. Rammen er et projekt på topniveau i Apache Software Foundation . Hovedvægten i Tapestry er på udviklerproduktivitet, brugervenlighed, umuligheden for programmører at skabe store stykker " limkode ". Tapestry tager en modulær tilgang til webudvikling ved at bruge bindinger mellem UI-komponenter (objekter) en webside og deres tilsvarende java - klasser. Denne komponentorienterede arkitektur hentede mange ideer fra WebObjects3

Tapestry 4

Den aktuelle stabile udgivelse af Tapestry er version 5.3.8. Version 4 og tidligere er ret ens, mens version 5 indeholder væsentlige ændringer.

Tapestry 4 opdeler webapplikationer i sider og komponenter. Sider beskriver komponentniveauet, mens komponenter definerer funktionalitet. Denne tilgang opdeler en komplet webapplikation i let håndterbare kodestykker, der styrer brugerinteraktion , tilstand Komponenter er også opdelt i grundlæggende ( kerne ) og yderligere ( supplerende ). Basiskomponenter er de grundlæggende byggeklodser i en applikation, såsom formularvalidatorer, grænsefladebyggere eller tilstandsobjekter. Yderligere komponenter definerer, hvordan en gruppe af basiskomponenter kan interagere med andre basiskomponenter i gruppen.

Komponentskabeloner i Tapestry er XHTML- filer. Typisk er kortlægningen mellem java-klasser og de XHTML-objekter, de administrerer, beskrevet i en XML -fil. Interaktionen mellem backend 'th (java-klasse) og frontend 'th (XHTML-objekt) udføres ved hjælp af OGNL . Sidemarkering udføres anderledes end PHP , ASP og JSP , som bruger specielle tags til at adskille skabelon- og kodevariabler.

Tapestry 5

Udviklingen af ​​den femte version af Tapestry begyndte kort efter udgivelsen af ​​version 4. Udviklerne indså, at den originale arkitektur, baseret på nedarvning fra basisklasser, gjorde det vanskeligt at forbedre og udvikle rammerne og samtidig bevare bagudkompatibiliteten i hver udgivelse. Derudover tillod det ikke at løse et stort antal problemer, der plagede udviklere, der brugte denne ramme. Den nye tilgang (og nye kodebase ) var baseret på POJO'er , annoteringer og navnekonventioner. Annoteringer og navnekonventioner har stort set erstattet XML- deskriptorfilerne fra tidligere versioner. Den eneste XML -fil , der kræves af projektet, er web.xml. Derudover er behovet for at omkompilere, arkivere, implementere og genstarte servlets med hver ændring i koden blevet elimineret. Denne funktion kaldes " live class reloading " . Alle disse funktioner gør Tapestry 5 til en ekstremt fleksibel webapplikationsudviklingsplatform.

Version 5 kombinerer Prototype- og script.aculo.us- rammerne med Tapestry-specifikke biblioteker for at understøtte Ajax -teknologi . Siden version 5.4 bruger Tapestry det mere moderne jQuery- bibliotek .

Tapestry 5.1 har forbedret ydeevne og reduceret hukommelsesforbrug samt yderligere funktioner til at forbedre ydeevnen, såsom automatisk trafikkomprimering ved hjælp af GZIP og JavaScript - biblioteksaggregering . På trods af et stort antal innovationer og forbedringer er Tapestry 5.1 fuldt bagudkompatibel med Tapestry 5.

Tapestry 5.2 integrerer JSR 303-specifikationen (datavalidering) med dens interne valideringsmekanismer. Genindlæsning af live klasse er blevet forbedret til også at understøtte genindlæsning af serviceimplementeringer (med service mener vi grænsefladen og implementeringsklassen).

Tapestry 5.3 forbedrer ydeevnen, reducerer hukommelsesforbruget, tilføjer nye komponenter. Den interne mekanisme til at arbejde med bytekode er blevet redesignet, fuld understøttelse af HTML5 .

Tapestry 5.4 er under aktiv udvikling og er kun tilgængelig som kildekode . Udgivelsen medfører store ændringer i arbejdet med JavaScript. Tapestry 5.4 inkluderer RequireJS, en asynkron JavaScript-indlæser, som alt arbejde med JS-filer (moduler og biblioteker) er baseret på. Den nye udgivelse understøtter også automatisk kompilering af MINDRE filer. Opdateret brugergrænseflade - Tapestry bruger Twitter Bootstrap UI-rammeværket.

Relaterede projekter

Integration med andre rammer

Tapestry 5 integreres som standard med

Noter

  1. https://books.google.at/books?id=sOVB8BFWbNAC&pg=PA1&lpg=PA1&dq=apache+tapestry+2000+webobjects&source=bl&ots=365LFI52VE&sig=ACfU3U0OlzVzGCezJvKb5s04kwmUkh-Wnw&hl=de&sa=X&ved=2ahUKEwi_1Pyl2MznAhUzpHEKHc4NDGoQ6AEwAnoECAkQAQ#v=onepage&q=apache%20tapestry %202000%20webobjects&f=false
  2. https://projects.apache.org/json/projects/tapestry.json
  3. Tapestry in Action - Forord Arkiveret 26. november 2009 ved Wayback Machine af Howard Lewis Ship
  4. Apache Tapestry - Tapestry Ajax Support Arkiveret 1. juli 2010.
  5. SymbolConstants (Tapestry API-dokumentation) . Hentet 11. september 2012. Arkiveret fra originalen 22. december 2012.
  6. Tapestry5-jQuery (downlink) . Hentet 11. september 2012. Arkiveret fra originalen 2. september 2012. 
  7. jQuery UI - Hjem . Dato for adgang: 11. september 2012. Arkiveret fra originalen den 29. februar 2012.
  8. Fællesskab - Apache-tapet . Dato for adgang: 11. september 2012. Arkiveret fra originalen den 29. august 2012.
  9. Jump Start Home . Hentet 11. september 2012. Arkiveret fra originalen 1. september 2012.

Litteratur

Links