Apache Tapestry | |
---|---|
Tyyppi | verkkokehys |
Kehittäjä | Apache Software Foundation |
Sisään kirjoitettu | Java |
Käyttöjärjestelmä | Monialustainen ohjelmisto |
Ensimmäinen painos | 2000 [1] ja 11. helmikuuta 2013 [2] |
uusin versio | 5.8.1 (25. tammikuuta 2021 ) |
Luettavat tiedostomuodot | Apache Tapestry Markup Language -asiakirja [d] |
Luodut tiedostomuodot | Apache Tapestry Markup Language -asiakirja [d] |
Osavaltio | Aktiivinen |
Lisenssi | Apache-lisenssi 2.0 |
Verkkosivusto | tapestry.apache.org |
Mediatiedostot Wikimedia Commonsissa |
Tapestry ( englanniksi - "tapestry, woven fabric") on oliopohjainen Java - kehys MVC -mallia toteuttavien web-sovellusten luomiseen . Tapestry loi Howard Lewis Ship ja sitä kehitetään edelleen aktiivisesti. Kehys on Apache Software Foundationin huipputason projekti . Tapestryn pääpaino on kehittäjien tuottavuudessa, helppokäyttöisyydessä, ohjelmoijien mahdottomuudessa luoda suuria " liimakoodin " kappaleita. Tapestry ottaa verkkokehitykseen modulaarisen lähestymistavan käyttämällä sidoksia web-sivun käyttöliittymäkomponenttien (objektien) ja niitä vastaavien Java - luokkien välillä. Tämä komponenttilähtöinen arkkitehtuuri veti paljon ideoita WebObjectsista3
Tapestryn nykyinen vakaa julkaisu on versio 5.3.8. Versio 4 ja aiemmat ovat melko samanlaisia, kun taas versio 5 sisältää merkittäviä muutoksia.
Tapestry 4 jakaa verkkosovellukset sivuiksi ja osiin. Sivut kuvaavat komponenttitason, kun taas komponentit määrittävät toiminnallisuuden. Tämä lähestymistapa jakaa täydellisen verkkosovelluksen helposti hallittaviin koodinpätkiin, jotka hallitsevat käyttäjän vuorovaikutusta , tilaa Komponentit on myös jaettu perus ( ydin ) ja lisäosat ( täydentävä ). Peruskomponentit ovat sovelluksen perusrakennuspalikoita, kuten lomakkeen tarkistajia, rajapintojen rakentajia tai tilaobjekteja. Lisäkomponentit määrittävät, kuinka peruskomponenttien ryhmä voi olla vuorovaikutuksessa ryhmän muiden peruskomponenttien kanssa.
Tapestryn komponenttimallit ovat XHTML - tiedostoja. Tyypillisesti Java-luokkien ja niiden hallitsemien XHTML-objektien välinen yhdistäminen kuvataan XML - tiedostossa. Vuorovaikutus taustajärjestelmän 'th (java-luokka) ja käyttöliittymän 'th (XHTML-objekti) välillä tapahtuu OGNL :n avulla . Sivun merkintä tehdään eri tavalla kuin PHP , ASP ja JSP , joissa käytetään erityisiä tunnisteita malli- ja koodimuuttujien erottamiseen.
Tapestryn viidennen version kehitys alkoi pian version 4 julkaisun jälkeen. Kehittäjät ymmärsivät, että alkuperäinen arkkitehtuuri, joka perustui perusluokkien periytymiseen, vaikeutti kehyksen parantamista ja kehittämistä säilyttäen samalla yhteensopivuuden taaksepäin jokaisessa julkaisussa. Lisäksi se ei mahdollistanut useiden tätä kehystä käyttävien kehittäjien vaivanneiden ongelmien ratkaisemista. Uusi lähestymistapa (ja uusi koodikanta ) perustui POJO : ihin , huomautuksiin ja nimeämiskäytäntöihin. Merkinnät ja nimeämiskäytännöt ovat suurelta osin korvanneet aiempien versioiden XML -kuvaustiedostot. Ainoa projektin vaatima XML- tiedosto on web.xml. Lisäksi tarve kääntää, arkistoida, ottaa käyttöön ja käynnistää uudelleen servlettejä jokaisen koodin muutoksen yhteydessä on poistettu. Tätä ominaisuutta kutsutaan " live-luokan uudelleenlataukseksi" . Kaikki nämä ominaisuudet tekevät Tapestry 5:stä erittäin joustavan verkkosovelluskehitysalustan.
Versio 5 yhdistää Prototype- ja script.aculo.us- kehykset Tapestry-kohtaisiin kirjastoihin tukemaan Ajax -tekniikkaa . Versiosta 5.4 lähtien Tapestry on käyttänyt nykyaikaisempaa jQuery -kirjastoa .
Tapestry 5.1 on parantanut suorituskykyä ja vähentänyt muistin kulutusta sekä lisäominaisuuksia, jotka parantavat suorituskykyä, kuten automaattinen liikenteen pakkaus GZIP- ja JavaScript - kirjastojen yhdistämisen avulla. Lukuisista innovaatioista ja parannuksista huolimatta Tapestry 5.1 on täysin taaksepäin yhteensopiva Tapestry 5:n kanssa.
Tapestry 5.2 integroi JSR 303 -määrityksen (tietojen validointi) sisäisiin validointimekanismeihinsa. Live-luokan uudelleenlatausta on parannettu tukemaan myös palvelutoteutusten uudelleenlatausta (palvelulla tarkoitetaan käyttöliittymää ja toteutusluokkaa).
Tapestry 5.3 parantaa suorituskykyä, vähentää muistin käyttöä ja lisää uusia komponentteja. Sisäinen mekanismi tavukoodin kanssa työskentelyyn on suunniteltu uudelleen, ja siinä on täysi tuki HTML5 :lle .
Tapestry 5.4 on aktiivisesti kehitteillä ja se on saatavilla vain lähdekoodina . Julkaisu tuo suuria muutoksia JavaScriptin kanssa toimimiseen. Tapestry 5.4 sisältää RequireJS:n, asynkronisen JavaScript-lataimen, johon kaikki JS-tiedostojen (moduulit ja kirjastot) työskentely perustuu. Uusi julkaisu tukee myös VÄHEMMÄN tiedostojen automaattista kääntämistä. Päivitetty käyttöliittymä - Tapestry käyttää Twitter Bootstrap -käyttöliittymäkehystä.
Tapestry 5 integroituu oletusarvoisesti
Apache Software Foundation | |||||||
---|---|---|---|---|---|---|---|
Huipputason projektit |
| ||||||
Osaprojektit |
| ||||||
Apache Web |
| ||||||
Muut projektit | |||||||
Kehitysprojektit ( hautomo ) |
| ||||||
Käytöstä poistetut projektit ( ullakko ) | |||||||
|