Ben kendi CMS yazmak mı?

16 Cevap php

Öğrenciler hakkında bir topluluk: Ben bu Haziran benim ilk kişisel bir proje üzerinde çalışmaya başlamak için planlıyorum. Ne var istiyorum üniversiteler hakkında bilgi, haberler ile insanlar tartışmak bir forum ve bir blog, makale, vb, birbirleriyle entegre hepsi üç ile tam bir wiki vardır.

Şimdi gitmek için yol wordpress + + mediawiki'de bazı forum yazılımı gibi görünüyor ama ben bunu bir deneyin vermek ve kendi CMS yazma hakkında bu düşüncelere sahip olmuştur. Bazı RoR ve PHP bilgisine sahip ama kesinlikle ben özellikle tamamen sıfırdan, kendi CMS yazabilirsiniz noktaya.

Eğer bunu başarmak için beni alacağını ne kadar zaman düşünüyorsunuz? Ben her gün onunla çalışmaya 3-5 saat geçirebilirsiniz / tahmin düşünüyorum ve ben de sadece biraz zaman geçirmek için planlama gibi ben, bana çalışma yaklaşık 300 saat verir Ağustos (sonuna kadar tüm site ve çalışan istiyorum. .. hiçbir şey yapmadan: P).

Soru, buna değer olduğunu? Bu benim programlama becerilerini geliştirmelerine yardımcı olacak mı?

16 Cevap

Ne yapayım, kendi takdirine kalmıştır, ama ne should yapmak Drupal gibi bir şey uygulamak olduğunu.

Drupal topluluk siteleri için kullanılması amaçlanan bir CMS. Anlamak ve kullanmak için kolay bir sistem değil, ama çok özelleştirilebilir.

Here's some references that you could use to get started learning about Drupal: http://www.packtpub.com/drupal/book http://drupal.org/node/367131

Eğer kendiniz için bir şeyler yazma ve mevcut yazılımları kullanmak arasında seçim yapmak zorunda ne zaman hesaba gereken bilgi dört temel parçalar vardır.

  1. Nasıl Karmaşık olacak?
  2. Nasıl yakından Varolan sistem benim ihtiyaçlarını eşleşmiyor?
  3. Ne mevcut bir sistemi uygulamak Vs kendi yazmak için mal olacak
  4. Ne kadar sürede ben ihtiyacım var?

Bu çok karmaşık değilse, başka bir şey gerçekten iyi ihtiyaçlarınıza uygun, o (zaman ve para) oluşturmak için ucuz olacak ve hemen ardından devam edin ve kendi şey yapmak gerek yoktur.

Aksi halde, mevcut açık kaynak CMS kurulu bir atlama ve orada katkıda başlar. Deneyimli programcılar büyük geribildirim alırsınız, ancak bazı gerçekten harika bir yazılım parçası olacak değil.

Kolayca minimum çalışma ile Drupal başarılı olurdum gibi görünüyor hedeflerinize bakılırsa.

www.drupal.org

Forumlar ve bloglar kullanıcı inşa edilir ve ben bir yerde bir wiki modülünü gördüm eminim.

Eğer bir öğrenme deneyimi için gidiyoruz Ancak, - bunu yaparken kendinizi oldukça öğrenme deneyimi olacak. Aslında bunu başarmak olsun ya da olmasın bitirdiniz zaman daha RoR ve / veya PHP anlayacaksınız.

Kendi :) dışarı rulo

Eğer (paha biçilmez olduğu) tecrübe kazanacak, ve bunun üstüne şişirilmiş thats şey ile sona erecek ...

Ben küçük bir ölçekte de olsa, biraz benzer bir durum yaşıyorum. Ben net, bir blog yazılımı gerekir, ama mevcut olanlar gerçekten iyi değil, bu yüzden ben kendi başladım. İşte benim düşünceler şunlardır:

  1. Bir şeyin 01:01 kopyalarını yapmak için çalışmayın. Kendi çalışırken size sadece ihtiyacınız uygulamak ve her şeyi dışarı bırakmak için şans verir.
  2. Küçük başlayın. Wordpress ve Mediawiki arkalarında kodlama yıl var. Kendi üzerinde çoğaltmak için çalışmak işe gitmiyor.
  3. Bloglar ve Forumlar ilk derece basit, ama WYSIWYG Editörler, Anti-Spam teknikleri, Tarayıcı uyumluluk sorunları ve benzeri gibi şeylerle uğraşmak kez inanılmaz derecede karmaşık olsun.
  4. Bu dil ve "Kurumsal" teknolojileri ile ciddi deneyim elde etmek için harika bir yoldur, ama deneyimsiz ve bir süre üzerinde iseniz, gerçekten ilk piyasada zaten bir şey uzanan bakmak gerekir demektir.

Eğer başında bazı köşeleri kesmek için istekli iseniz, ben 300 saat içinde bir CMS inşa kesinlikle mümkün olduğunu düşünüyorum. Ama sonra bir eklenti mimarisi, Yönetici ve Belgeler için harika bir kullanıcı deneyimi gibi şeyler düşünmeye başlamak yok - bu noktaları iç kullanım için bu kadar değil diğer insanlar için CMS serbest bırakmak istiyorsanız gerçekten önemli, ama.

Hayır.

"Sen Tekerlekler Hakkında Öğrenme planlayın sürece, tekerleği yeniden icat etmeyin".

Ben araçları her biri hakkında öğrenme ve nasıl yerine CMS yazma, bunları birlikte entegre edebilirsiniz odaklanmak istiyorum.

Gerçek bir geliştirici olarak, özelleştirmeler büyük miktarlarda arzuları olacaktır. Önceden paketlenmiş CMS / bloglar bir çok eklenti sistemleri var, ama ben bir veritabanı girişi üzerinden sistem ile benim kod kayıt olduğunda bana hepsi biraz garip hissediyorum.

Dürüst olmak gerekirse, ben wordpress blog, PHP kendi yeniden yazdı yaşadım, ve sonra Django içinde iki kez yeniden yazdım beri ettik.

Her zaman hızlı olur, daha fazla bir şey, ve çok büyük projeleri hazırlandı insanlar geçmek zorunda olduğu tüm kullanılabilirlik ve güvenlik konularında kendiniz öğrenmek her zaman yapmak istediğiniz her zaman.

Yeniden yazar değerli bir deneyim oldu, ve ben "tekerleği yeniden icat etmeyin," argüman almak asla. Ben bir tekerlek bakmak ve onunla yanlış ne olduğunu size söyleyebilirim sanki ben = P ben şahsen icat düşünüyor, hissediyorum

O zaman dilimi içinde olası size raylar ve php üzerinde yakut ile ne kadar iyi bağlı.

Ancak, ben sadece orada neler kullanmak istiyorsunuz. Kendi yapmak için tüm bu zaman gerçekten değer mi?

Aksi halde ben sadece bir araya getirmek için mevcut araçları kullanmak, bu programlama bilginizi ilerletmek ve yeni bir şey bunun için gitmek ve ona kendini inşa öğrenmek için ise neden bunu yapıyorsun düşünün söyleyebilirim.

Zaman dilimi gelince? Ben kendi becerileri tahminlerinde bok değilim, bu yüzden senin tahmin şansı yok :)

Eğer öğrenme deneyimi için ona gitmek istiyorsanız o zaman gerektiğini düşünüyorum. Phil Haack sen de kaçıyorum konularda iyi bir liste ile adında iyi bir blog yazısı Rolling Your Own Blog Engine yazdı.

Birçok ses yapmak için çalışın o kadar kolay değil. Gerçek şu ki, can Bir kaç saat içinde çok az bir blog motoru yazmak olmasıdır (bazı dakika söylüyorlar, ancak the Rails video gerçekten kendi geliştirme süresi olarak sayılmaz birlikte takip) ama herkes ama kendinizi çok kullanmak olmaz. Diğer kullanıcılar, daha fazla özellik talep edecek.

Sadece kurtarmak ve eğer gerekiyorsa B Planı (wordpress + + mediawiki bazı forum yazılımı) ile gitmek için kendinize yeterli zaman bırakın emin olun.

Sana http://stackoverflow.com/questions/559843/good-resources-for-developing-a-bug-tracking-tool benzer yanıtlar bulacaksınız düşünüyorum

Orada söylediğim gibi, gerçekten sizin nihai hedefi bağlıdır.

Ben birçok zaten söylediklerini kabul ederken - neden tekerleği yeniden icat? - Sizin için yararlı olacak bir cevap yapmanız çalıştığınız ne bağlı olacak.

Point #1:
If [you|your company] just need a CMS, there are numerous tools out there, free and otherwise, high quality and otherwise, why program your own?

Point #2:
If you are looking for a learning experience, looking for some something to learn [ChoiceLanguage] with, and/or just looking to learn more about wheels, there are a number of articles and there are a number of open source projects you can peek at the code to see how they work (or not as the case may be).

Ben bazen bir açık kaynak projesi ile başlayan bana en az yolumdan kod büyük bir parça almak yardımcı olduğunu tespit ettik. Bir Klasik ASP forum paketi almış ve bir CMS içine Morphed - ama bir yıl kadar sürdü ve ben bunu yapmak için ödendi. YMMV

In the end:
If the latter is your ultimate goal, then by all means, read the articles, do the research, and code away.

Onun eski, zaten bitmiş thats şeye bakmak isteyebilirsiniz - unless its going to be your businesses core competency.

Sonuçta, elde cevap sormak soruya bağlıdır gidiyor. Net varlık-olsun gitmek uzun bir yol gidecek. ;)

Açıkçası, ne var kaynakların ne kadar iyi bilmek ya da yok gibi ne kadar zaman faktörü, cevap mümkün değildir. Ama, muhtemelen atıf yapılan her örnek en az bunun arkasında bin adam saat vardır diyecekler, ve çok çok muhafazakar ediliyor.

Kendi geliştirmeli eğer gibi? Evet, bu gerçekten başarmak istediğini bağlıdır. Zaman sizin kullanımında verimli olmak ister misiniz? Tüm yollarla, HAYIR! Önceden varolan bir çözümü kullanın. Daha iyi programlama öğrenmek için bir vaka çalışması ister misiniz? Tamamen farklı bir senaryo bu.

Wordpress + + mediawiki'de bazı forum yazılımı olarak aynı kalitede bir şey yaratmak için saat binlerce alacaktı.

Kendinizi kullanmak için sadece o bina konum Ama eğer bu size zamandan tasarruf edeceksiniz rastlamak edeceğiz "iyi enoughs" bir yeri vardır. Yani 1.000 saatin altında ... söyleyebilirim. O değil mi tür belirsiz sesler? Ben 14 yıldır programlama oldum ve ben lol, projeler için zaman tahmin hala korkunç değilim. Tabii ki projenin tanımı da oldukça muğlak.

Onu gerçekten kendiniz için bir soru değer ise soruyu cevaplamak için. Bunu yaparken hakkında heyecan duyuyoruz şey varsa o zaman büyük bir öğrenme fırsat olabilir. Yaklaşık 7 yıl önce (Google Analytics gün önce) Ben oldukça güçlü web trafiği izleme yazdı & istatistik motor. Bu benim için büyük bir öğrenme deneyimi oldu ve ben bunu yaparken pişman değilim. Tabii ki, diğer taraftan, sadece kendim gibi, sizden herhangi bir para kazanma şansı var olacak bir şey içine bir sürü dökülen olacak.

Bu gün başarılı topluluk web siteleri amaca olduğunu bana görünüyor. Bunlar gereksiz önemsiz bir sürü yok, gezinmek kolay ve eğlenceli kullanmak için. StackOverflow burada iyi bir örnektir. Web sitesi başarılı olabilmesi için kullanıcı arayüzü çok önemli olacaktır.

Eğer kullanıcı arabirimi üzerinde nihai kontrol istiyorsanız, o zaman en iyi bahis kendi üzerine inşa etmektir. İstediğiniz şey kod tabanı ile başlar, ya da en azından bir çalışma örneği olarak kullanabilirsiniz.

Makul bir öğrenme eğrisi örtülmüştür sonra Neyse ki, sürece bu gün mevcut olan web araçları ile başlamak uygun programlama becerileri gibi çok verimli yapabilirsiniz.

Eğer kendiniz inşa eğer günün sonunda, çok esnek, ve istediğiniz tam olarak nasıl görünen bir web sitesi olacak. Başkasının kodunu kullanırsanız, size ve daha fazla özellik ile hızlı web sitesi kadar alırsınız, ama o kadar esnek olmayacak ve muhtemelen bakmak bazı tavizler ve hissetmek gerekir.

Ben tekerleği yeniden icat etmek değil barfoon yorumuna stres gerekiyor. Başkasının CMS alma ve kullanımı ve buna karşı geliştirilmesi için öğrenme içinde olduğu bir öğrenme deneyimi bol miktarda var.

Ayrıca, bir açık kaynak projesi alırsak çok şey öğrenmek ve onların ürün tasarımı karar nasıl bakar. Then, onların nasıl çalıştığını anlamak üzerine, projeye katkıda bulunabilir ya da hatta kendi üzerinde şube, ama bu şekilde birçok avantajı vardır:

  • Eğer içine alıyoruz bilmek (CMS büyük bir görev olabilir)
  • Hangisini bağlı olarak, değerli mevcut CMS ürünler için toplum desteğinin iyi bir miktar var
  • Büyük olasılıkla kendi kod görerek iyi bir yaklaşım öğrenmiş olacak
  • Kendi ürün / kodu öğrenme, kendi bina daha az zaman alır, bu yüzden size sıfırdan bir bina başladı eğer daha motivasyon kaybetmek daha az olasıdır

O dedi, ben şahsen Magnolia bir göz atın öneririz. Bu Open Source, toplum desteği vardır ve kaliteli bir sistem.

G'luck

Ben tanımladığınız ediyorum proje kapsamı için WordPress kendim ile gitmek istiyorum. Simple Press Forum WordPress için sağlam, tam özellikli bir forum eklentisi ve MediaWiki'yi entegre etmek oldukça kolaydır. Bir WordPress wiki plugin project Eğer işlemek için istekli gibi görünüyor saat kullanabilirsiniz da bulunuyor. WordPress bir hafta içinde tarif ettik her şeyi yapabilirsiniz.

Sen deneyim kazanmak için yeniden icat güle git gerekmez.

I'd go for Wordpress. I'm using it for my website (www.norwegianfashion.no), and I believe I have a fairly advanced website. I've certainly increased my PHP programming skills.

Ben de Drupal etrafında başımı almak denedim. Çok iyi CMS, ama eşek bir ağrı öğrenmek için.

Hatta diğer CMS sistemleri (. NET) gelişmekte 5 yıl, ben çalışıyorum 1 ay sonra Drupal ana mümkün değildi.

Ben hayır hardcore programcı değilim, ama bir CMS kullanımı oldukça kolay olması gerektiğine inanıyoruz.

So I've chosen Wordpress. It has it's limitations, but you can create your own plugins to compensate for this.