Joomla Bileşen Aracı mı, İskele mi?


12

Joomla 3.2 için birkaç eklenti oluşturdum ve son zamanlarda apartman kiralamalarını yönetmek için bir bileşene başladım. Ben bir bileşen hızla gidiyor almak için gerekli dosyaları ile zaten oluşturulmuş temel dosya / klasör yapısı vardı orada bir çerçeve olup olmadığını merak ediyordum.

Her başladığımda tekerleği yeniden oluşturmak istemiyorum ve bir bileşenin çalışmasını sağlamak için gerekli olan dosya ve sınıflar temel bir temel yapıya sahip. Dışarıda zaten bir tane var mı?

Eğer yoksa, hangi stok Joomla bileşeninin çalışması iyi bir örnek olur?

EDIT: Cevapları gördükten sonra, belki "çerçeve" terimlerin kötü bir seçim olduğunu düşünüyorum. Kendi kod temeli olan bir şey aramıyorum. Tüm Joomla bileşenleri için ortak olan ve denetleyici, görünümler klasörü, modeller klasörü vb.Gibi çalışması gereken dosya / klasör yapısına sahip bir şey arıyorum.

Ne arıyorum zaten Joomla çekirdek kodunun bir parçası olmayan hiçbir bağımlılıkları olmalıdır.

Joomla 1.5 için gerekli tüm dosyalara sahip bir tane buldum ve yapmanız gereken tek şey sınıfları ve dosyaları bileşeninizin ve kurulumunuzun adıyla eşleşecek şekilde yeniden adlandırmaktı ve temel bir yönetici görünümü, bir ön menü görünümü vb. ... orada birisinin


Bir joomla iskelesi arıyorsanız, mmleoni.net/joomla-component-builder öğesini deneyin .

Yanıtlar:


15

Geçmişte kullandığım araçlardan biri Bileşen Oluşturucu'dur: http://www.component-creator.com/en/ .

Bu araç, bir tabloyu ücretsiz olarak (ücretli bir pakete kaydolursanız daha fazla) ve bileşenin kendisiyle ilgili diğer genel bilgileri ana hatlarıyla belirlemenizi sağlar. Daha sonra bileşeni başlatmak için yüklenebilir bir zip dosyası indirebilirsiniz.

Zaten koda atlamaktan mutlu olanlar için, bu bileşen geliştirmeyi hızlı bir şekilde başlatmak için harika bir basit yöntem olabilir.


Diğer Joomla bileşenlerini geliştirmenize yardımcı olması için Joomla'ya yükleyebileceğiniz bazı uzantılar da vardır. Bu yardımcı stiline örnek olarak bu ücretsiz eklenti Easy Creator verilebilir: http://extensions.joomla.org/extensions/miscellaneous/development/5908

Bu, güzel bir pakette bir oluşturma aracıyla karıştırılmış bir test ortamı için harika bir eklenti olabilir.


Basit ve hızlı bileşen üretimi için Joomla Bileşen Jeneratörü adı verilen başka bir araç var. Ücretsiz olarak sınırsız tablo oluşturmanıza izin verir. Ücretli paketler var, ancak birden fazla görünüme ihtiyacınız yoksa satın almak gerekli değildir. İndirmek için de yüklenebilir bir zip dosyası oluşturur. Bir test bu jeneratörün faydalarını ortaya çıkarır. Oluşturulan koda ve girintiye bir göz atın.

http://www.componentgenerator.com/


Bileşen yaratıcısı umut verici görünüyor. Denemek için sabırsızlanıyorum.
Nestor Ledon

Bileşen Oluşturucu, birkaç dakika içinde kurulabilir bir MVC bileşeni "çerçevesi" elde etmek için gerçekten iyidir.
fruppel

Bileşen yaratıcısı güzel ve ücretsiz seviye için bile ihtiyacım olan şeyleri iyi bir şekilde sağlıyor.
pathfinder

8

Müşteriler için çok sayıda uzantı yazdıktan sonra, kendimi aynı desenleri tekrar tekrar takip ettim. Bazı şeyleri KURU tutmak için, yaptığım ortak görevlerin çoğunu ortadan kaldıran bir "bileşen çerçevesi" oluşturdum, ancak şimdiye kadar sadece şirketimde dahili olarak kullanıldı. Çok fazla özelliği yok, ancak ihtiyacım olan işi yapıyor.

Bunu söylemiştim - aynı şekilde kendi bileşen çerçevenizi geliştirin. Şu anda üretmekte olduğunuz kodun ortak özelliklerini alın ve onu OO hiyerarşisinde bir seviyeye yükseltin ve bileşeniniz ile Joomla arasında bulunan kendi katmanına taşıyın. Bu yaklaşımla Çad'ın bahsettiği “çerçeve çökerse” probleminden kaçınırsınız ve bunu daha iyi anlarsınız. Benim için şimdiye kadar iyi çalıştı.


bu aradığım şey. Joomla 1.5 için tam olarak neden bahsettiğinizi yapan güzel bir tane vardı.
pathfinder

1
Joomla'nın FOF (Framework on Framework) adlı yeni sürümleriyle birlikte gelen bir DRY bileşen çerçevesi vardır, belki de ona bir göz atmak istersiniz: Documentation , Google Group
fruppel

FOF'un farkındayım, ancak boyutu açısından oldukça ağır olduğundan ve sevmediğim bir çok yerde Singleton ve Statik gibi eski uygulamaları kullandığından kullanmak istemiyorum.
Don Gilbert

Merhaba Don, ben de aynı şeyi yaptım ve çok mutluyum. Bunu yapmak için başka gelişmeler de öneririm.
Piero Marsilio

5

Çeşitli nedenlerle bu tür şeyler için herhangi bir 'çerçeve' önermekten hoşlanmıyorum:

1) CMS'nin bir 'çerçevesi' vardır ve keşke uzantıları yazmayı kolaylaştırmak gerekirse, 3. taraf öğeleri yazmak yerine temel çerçeve koduna odaklanacağız.

2) Uzantınızı geçersiz hale gelen bir çerçeveye yazarsanız, oldukça sıkılırsınız.

3) Çekirdeği kullanmak ideal olarak güncellemeleri daha iyi hale getirecektir. Bu HER ZAMAN durum böyle olmamıştır, bu yüzden bunun için 3. taraf çerçeveler vardır, ancak durumun daha fazla ısrar edip olmasını bekleriz, aslında o kadar fazla olur. Eğer buna odaklanmazsak, asla gelişmeyecektir.

-

Bununla birlikte, Joomla'da FoF (çerçeve çerçevesi) adı verilen bir "RAD Çerçevesi" var. Ben kullanmadım ama zamandan tasarruf sağlayan bir araç olduğu söyleniyor. Burada bazı belgeler var:

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

Not - FoF, Joomla 3.2'nin dağıtımına DAHİLDİR, bu nedenle uzantınız Joomla 3.2+ içinse yüklemenize gerek yoktur.

Son olarak - çekirdekte kalmak ve çekirdek MVC sınıflarını kullanmak istiyorsanız, şu anda hala eski MVC sınıflarını kullanmaya teşvik edilmektedir (yeni MVC iyice sıkıştırıldığında değişecektir). Bakmak için iyi bir temel uzantı gerçekten com_contact veya com_banners bileşenidir. Oldukça basittirler ve JForm ve özel modeller gibi şeyleri bu şekilde alabilirsiniz.


@Chad ile hemfikirim. Gerçekten bir çerçeve ile gitmek istiyorsanız, o zaman FOF denemenizi öneririm. Diğer çerçevelerden çok daha iyi.
Ramesh Elamathi

4

Cook Self Service tavsiye . Küçük bir ücret olduğuna inanıyorum, ancak büyük eğitim bileşenimizin yaklaşık% 85'ini oluşturdu, başlamak için 1000 $ tasarruf sağladı ve oluşturduğu kod, modifikasyonumuz için güzel ve temizdi.


3

Joomla Hello World bileşenine bir göz attınız mı? Henüz bakmadım, ancak bir bileşen oluşturmak için gereken minimum dosyalara sahip gibi görünüyor. Ayrıca Joomla 3.2, Çerçeve Çerçevesi (FOF) içerdiğinden, Yapılacaklar FOF örnek bileşenine baktınız mı? Yapılacaklar listeme özel bir Joomla 3.x bileşeni yazdığımı biliyorum ve bunlar projeye başlarken kullanmayı planladığım iki örnekti. Umarım, onlar da sizin için çalışacaktır.


1
  1. Joomla'nın üstünde RB Framework'ü geliştirdik. Bileşen geliştirmemiz için kullanıyoruz (PayPlans, PayInvoice, vb.) ( Https://github.com/readybytes/rbframework )

  2. Bunun için bir bileşen oluşturucumuz var ( https://github.com/readybytes/component-builder )

Yukarıdaki çerçeve, aynı şeyleri tekrar tekrar yapma stresini azaltır.

İth:

  1. Dokümantasyon mevcut değil. Mevcut bileşenlerle öğrenmeniz gerekiyor.
  2. O kadar güçlü ki web sitemiz bloglama ve dokümantasyon için özel olarak oluşturulmuş bir bileşene sahip (bir gün içinde geliştirildi).

Sadece nasıl kullanılacağına dair bazı işaretçiler verebilirseniz benioku içinde harika olurdu. Şu anda nereden başlayacağımı bilemezdim.
Valentin Despa
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.