Joomla Frameworkin ja Joomla Platformin erot, artikkelin käännös

  • Kharadus
  • Kharadus hahmo Aiheen kirjoittaja
  • Vieras
  • Vieras
22.03.2013 12:04 - 22.03.2013 12:05 #4841 : Kharadus
Kharadus loi aiheen: Joomla Frameworkin ja Joomla Platformin erot, artikkelin käännös
Alkuperäinen artikkeli löytyy osoitteesta magazine.joomla.org/issues/issue-mar-2013/item/113...-framework-and-joomla-platform

Erot Joomla sovelluskehyksen (Joomla Framework) ja Joomla sovellusalustan (Joomla Platform) välillä

Mikä on Joomla sovelluskehys, ja miksi tarvitsemme sitä, kun meillä jo on Joomla sovellusalusta.

Seuraava sukupolvi

Pohjimmiltaan Joomla sovelluskehyksen voi nähdä Joomla sovellusalustan seuraavana sukupolvena. Valtavat muutokset, joita joudutaan tekemään edistysaskelten, kuten nimiavaruuksien (namespace) käytön vuoksi, aiheuttavat pahoja taaksepäin yhteensopivuusongelmia CMS:n ja nykyisen sovellusalustan välillä, joka käytännössä pakottaisi CMS:n pysyvästi sovellusalustan sen hetkiseen versioon. Tämä muutos tarjosi mahdollisuuden luoda uusi hautomo tulevalle kehitykselle, jota voitaisiin käyttää CMS:n lisäksi niiden toimesta, jotka kehittävät sovelluksia Joomla sovellusalustaan, ja jopa laajemman PHP-yhteisön käyttöön.

Nykyinen sovellusalusta on muotoa kaikki tai ei mitään, joko käytät sitä kokonaisuutena tai et lainkaan. Tämän uuden lähestymistavan kautta jokainen voi valita, mitä osia kokonaisuudesta he haluavat käyttää. Komponenttipohjainen sovelluskehys (Symfony-sovelluskehyksen - symfony.com/components - komponentti, toisin kuin mihin komponentti-sanalla yleensä CMS-ympäristössä viitataan) mahdollistaa uuden koodin lisäämisen ja testaamisen sekä helpon yhtenäistämisen alemman tason käyttäjien käyttöön. Toteutuessaan se tekee esimerkiksi Diana’s Oauthin ja JTwitterin integroinnin huomattavasti helpommaksi.


Sulautuuko sovellusalusta osaksi itse CMS:ää?

Se tarkoittaa, että kaikki tähän mennessä tehty työ, nimiavaruus-toimintoa lukuun ottamatta, voidaan palauttaa takaisin CMS:n hallitsemaksi. Tämä on hyväksi CMS:lle, koska se vähentää tällä hetkellä vielä tarpeellisen kaksoiskäsittelyn tarvetta bugien korjaamisessa.


Tarkoittaako tämä, että liitännäiset saattavat hajota tai että ne joudutaan uudelleen kirjoittamaan CMS:n seuraavaan versioon?


Ei, itse asiassa muutos estää tämän. CMS:lle annetaan vapaus esitellä osia uudesta sovelluskehyksestä tarpeen vaatiessa tavalla, joka ei aiheuta yhteensopivuusongelmia olemassa olevien liitännäisten kanssa.

On kuitenkin tärkeää muistaa, ettemme ole tekemässä Joomla sovelluskehyksestä taaksepäin yhteensopivaa Joomla sovellusalustan kanssa. Puhdistamme kaiken vanhaksi menneen koodin osana tätä muutosta, sekä poistamme jäljellä olevan CMS-koodin ja huonosti ylläpidetyt paketit. Uskomme tämän olevan hyvä suunnitelma, koska nimiavaruuteen vaihtaminen on iso asia (sinun on muutettava koodiasi). Sen lisäksi vaihtaminen Composeriin ( getcomposer.org/ ) pakottaa kehittäjät aloittamaan alusta joka tapauksessa.


Miksi luoda uusi säilytystila tälle, kun Joomla sovellusalustalle jo kerran on omansa? Eikö tämä ole turhan sekavaa käyttäjille?


Pohjimmiltaan tämä tehtiin, koska on huomattavasti helpompaa tehdä kaikki pohjatyö uuteen säilytystilaan. Kävimme pitkiä keskusteluja asiasta, ja tulimme siihen lopputulokseen, että viittaaminen ”vanhaan sovellusalustaan” ja ”uuteen sovellusalustaan” oli varsin sekavaa. Nimen ja säilytystilan muuttaminen mahdollisti vanhan, jähmeän Joomla sovellusalustan erottamisen uudesta, nimiavaruutta tukevasta, Composerin tunnistavasta koodista Joomla sovelluskehyksestä.

Puramme myös jokaisen paketin omaan säilytystilaansa, jotta ne voitaisiin asentaa Composerin kautta missä tahansa ympäristössä, jossa se on tarpeen. Esimerkiksi Laravelilla koodaava saattaisi haluta käyttää meidän Github-koodiamme (koska se on mahtavaa). Tämänhetkisellä Joomla sovellusalustalla se on mahdotonta. Joomla sovelluskehyksellä se taas on täysin tehtävissä, koska se on erotettu sovellusalustasta ja on näin käyttökelpoinen erillisenä tietyin rajoituksin.


Selvä, kuulostaa hyvältä. Milloin se valmistuu? Mihin CMS:n versioon se on tulossa?

Hyvä kysymys! Tavoitteenamme on ainakin saada hommat taas toimimaan, mutta myös mahdollistaa sen, että voit asentaa yksittäisiä paketteja niin, että Composer hoitaa riippuvaisuudet puolestasi.

CMS ei tule sisältämään osia uudesta sovelluskehyksestä. Se synkronoi kaiken, minkä se pystyy nykyisestä sovellusalusta, jonka jälkeen todennäköisesti lopetamme Joomla sovellusalustan käsittelyn erikseen ylläpidettynä kokonaisuutena. Kaikki uusi sisältö tullaan luomaan suoraan CMS:ään tai Joomla sovelluskehykseen.


Mitä mahdollisuuksia ja uusia haasteita tämä tuo projektille?

Mahdollisuudet:

1.Siirtää ylläpitämisen pois pieneltä sovellusalustan ylläpitoryhmältä, josta tulee helposti pullonkaula päivityksiä tai muutoksia arvioitaessa. On huomattavasti helpompaa keskittyä pienten osa-alueiden koodin arvioimiseen ja hyväksymiseen.
2.Antaa kehittäjien valita juuri omaan tarkoitukseensa sopivia osia sovellustansa luomiseen, riippumatta heidän käyttämästään ohjelmakirjastosta.
3.Pysyy uskollisena Joomla-brändille.
4.Mahdollistaa päivittämättä jätettyjen tai käyttämättömien pakettien käytön lopettamisen helpommin.
5.Joomlan johtoryhmän tarvitsee vain pitää huolta oikeiden työkalujen tarjoamisesta ja käytäntöjen säätämisestä.

Haasteet:

1. Uusien säilytystilojen ja käyttöoikeuslistojen ylläpito nostaa järjestelmärasitusta. Git sub-split on auttanut tässä jonkin verran, mutta muita tapoja tutkitaan vielä.
2. Meidän on löydettävä tapa hyväksyä uusia paketteja, tämä on vielä työn alla.
3. Todennäköisesti kasa muita ongelmia joihin emme vielä ole törmänneet.


Mistä löydän tietoja Joomla-viitekehyksestä?

Osoitteesta github.com/joomla löydät säilytystiloja, jotka alkavat Joomla Framework-liitteellä.


Kuulostaa hienolta! Miten voisin ottaa osaa tähän?

Meillä on oma työlista asioista, joita meidän on tehtävä ennen kuin sovelluskehyksen versio 1.0 on julkaisukunnossa. Siinä ei välttämättä ole kaikkea, mutta github.com/joomla/joomla-framework/issues?state=open kattaa jo paljon tekemättömistä asioista.


Minulla on lisää kysymyksiä, missä ne olisi parasta esittää?

Joomla Platform Development list on ainakin tällä hetkellä paras paikka.


//Kääntäjän huomautus: artikkeli on varsin vaikealukuinen niin käännöksenä kuin originaalimuodossaan, sikäli kun kerkeän saatan tulevaisuudessa kirjoittaa käännöksestä muokatun version.//
Last Edit: 22.03.2013 12:05 : Kharadus.

Kirjaudu tai Rekisteröidy liittyäksesi keskusteluun.

Valvojat: jkwebdesignGamossJiiKoo
Sivu luotiin ajassa: 0.031 sekuntia