it-swarm-eu.dev

Joomla Component Tool o Scaffold?

Ho creato un paio di plugin per Joomla 3.2 e recentemente ho avviato un componente per gestire l'affitto di appartamenti. Mi chiedevo se esiste un framework là fuori che aveva già creato la struttura di file/cartelle di base con i file necessari per far funzionare rapidamente un componente.

Non voglio ricreare la ruota ogni volta che avvio e i file e le classi necessari per far funzionare un componente hanno una struttura necessaria di base. Ce n'è già uno là fuori?

In caso contrario, quale componente Joomla di serie sarebbe un buon esempio su cui lavorare?

EDIT: Dopo aver visto le risposte, penso che forse "framework" è stata una cattiva scelta di termini. Non sto cercando nulla che abbia una base di codice propria. Stavo cercando qualcosa che abbia la struttura di file/cartelle che è comune a tutti i componenti di Joomla e necessaria per l'esecuzione, come il controller, la cartella delle visualizzazioni, la cartella dei modelli, ecc.

Quello che sto cercando non dovrebbe avere dipendenze che non fanno già parte del codice core di Joomla.

Ne ho trovato uno per joomla 1.5 che aveva tutti i file necessari e tutto quello che dovevi fare era rinominare le classi e i file in modo che corrispondessero al nome del componente e all'installazione e avresti avuto una vista di amministrazione di base, una vista del menu front-end, ecc. ... Spero che qualcuno là fuori ne abbia creato uno

12
pathfinder

Uno strumento che ho usato in passato è Component Creator: http://www.component-creator.com/en/ .

Questo strumento ti consente di delineare gratuitamente una tabella (di più se ti registri per un pacchetto a pagamento) e altre informazioni generali sul componente stesso. È quindi possibile scaricare un file Zip installabile per avviare il componente.

Per coloro che sono felici di saltare nel codice, questo può essere un metodo molto semplice per avviare lo sviluppo dei componenti.


Ci sono anche alcune estensioni che puoi installare in Joomla per aiutarti a sviluppare altri componenti Joomla. Un esempio di quello stile di supporto è questa estensione gratuita Easy Creator: http://extensions.joomla.org/extensions/miscellaneous/development/5908

Questo può essere un ottimo componente aggiuntivo per un ambiente di test combinato con uno strumento di compilazione in un unico pacchetto Nice.


Esiste un altro strumento chiamato Joomla Component Generator per la generazione di componenti semplice e veloce. Ti permette di creare tavoli illimitati gratuitamente. Esistono pacchetti a pagamento ma non è necessario acquistare a meno che non siano necessarie più viste. Genera anche un file Zip installabile per il download. Un test rivela i vantaggi di questo generatore. Dai un'occhiata al codice generato e al rientro.

http://www.componentgenerator.com/

15
David Fritsch

Dopo aver scritto numerose estensioni per i clienti, mi sono ritrovato a seguire sempre gli stessi schemi. Per mantenere le cose ASCIUTTE, ho creato un "framework di componenti" che astrae la maggior parte delle attività comuni che svolgo, ma finora è stato utilizzato solo internamente nella mia azienda. Manca molte funzionalità, ma fa il lavoro per quello che mi serve.

Ho detto questo per dire questo: sviluppare il proprio framework di componenti allo stesso modo. Prendi i punti in comune del codice che stai attualmente producendo e spostalo di un livello nella gerarchia OO nel suo livello che si trova tra il tuo componente e Joomla. Con questo approccio, eviti il ​​" se il quadro fallisce "problema menzionato da Chad, e tu lo capisci molto meglio. Finora ha funzionato bene per me.

8
Don Gilbert

Non mi piace raccomandare alcun tipo di "framework" per questo genere di cose per diversi motivi:

1) Il CMS ha un 'framework', e vorrei che se fosse necessario rendere 'più semplice' la scrittura delle estensioni, ci concentreremmo sul codice del framework principale invece di scrivere elementi di terze parti.

2) Se scrivi la tua estensione su un framework defunto sei piuttosto fregato.

3) L'utilizzo del core migliorerà idealmente gli aggiornamenti. Questo non è SEMPRE stato il motivo per cui ci sono quadri di terze parti per questo, ma più insistiamo sul fatto che ci si aspetta e ci aspettiamo che sia, più sarà effettivamente. Se non ci concentriamo su di esso, non migliorerà mai.

-

Detto questo, in Joomla esiste un "Framework RAD" chiamato FoF (framework on framework). Non l'ho usato ma si dice che sia uno strumento per risparmiare tempo. C'è della documentazione qui:

https://www.akeebabackup.com/documentation/fof/getting-started-with-fof.html

Nota: FoF è INCLUSO nella distribuzione di Joomla 3.2, quindi non è necessario installarlo se l'estensione è per Joomla 3.2+.

Infine, se si desidera rimanere nel core e utilizzare le classi MVC core, attualmente è ancora incoraggiato a utilizzare le classi MVC legacy (cambierà non appena il nuovo MVC sarà completamente controllato). Una buona estensione di base da guardare è davvero il componente com_contact o com_banners. Sono abbastanza semplici e puoi raccogliere cose come JForm e modelli personalizzati in quel modo.

5
Chad Windnagle

Consiglio vivamente Cook Self Service . Credo che ci sia un piccolo costo, ma ha generato circa l'85% della nostra componente di istruzione principale, risparmiando $ 1000 per iniziare, e il codice che ha generato era bello e pulito per la nostra modifica.

4
GDP

Hai dato un'occhiata al componente Joomla Hello World ? Non l'ho ancora visto, ma sembra che abbia i file minimi necessari per costruire un componente. Inoltre, poiché Joomla 3.2 include Framework on Framework (FOF), hai esaminato il componente To-Do FOF example ? So di aver scritto un componente Joomla 3.x personalizzato nella mia lista di cose da fare e questi erano i due esempi che stavo pianificando di usare per iniziare il progetto. Speriamo che funzionino anche per te.

3
RRYontz
  1. Abbiamo sviluppato RB Framework, oltre a Joomla. Lo usiamo per lo sviluppo dei nostri componenti (PayPlans, PayInvoice, ecc.) ( https://github.com/readybytes/rbframework )

  2. Abbiamo un generatore di componenti per lo stesso ( https://github.com/readybytes/component-builder )

Il framework sopra riduce molto lo stress di fare le stesse cose ancora e ancora.

Imp:

  1. La documentazione non è disponibile. Devi imparare dai componenti esistenti.
  2. È così potente che il nostro sito Web ha componenti personalizzati per blog e documentazione (sviluppati in un giorno).
1
Shyam