Portál motor [Megoldva]

Szasztok!

Akarok egy portál motort írni PHP-ban, de nem tudom, milyen legyen a felépítése (milyen elemekből épüljön fel (mag+modulok (like linux kernel :D)))

köszi. MysteryKe.

Hozzászólások

ilyen Drupal szerűséget akarok csinálni

S ebbe most ...öhm.. az a kérdés hogy milyen legyen a felépítése? ..Valami cél hogy mire lesz?... Pl blog?..Sajnos így sok mindent nem lehet hozzáfűzni. Drupal meg azért más kategória.. :)
_____________________________________
aurora @ 2.6.25-4.slh.3-sidux-amd64 | athena @ 2.6.24-generic-amd64

szerintem a diszkogombbel kellene osszehoznod...

Tyrael

Hasonló lenne a HUP-hoz, csak persze teljesen más témában.

Azért akarok sajátot, mert akkor annak ismerném részeltesen a forrádskódját, mert ha mondjuk egy alapvető változtatást kellen bevezetnem, akkor egy nem általam írt forrásbkódban az eléggé körülményes lenne.

főleg fórum lenne benne, de később fejlődhetne is, de főleg azért készül, ha mondjuk kellene csinálnom más portált is, akkor cask minimális változtatásokat kelljen ahhoz végrehajtanom.

Figyelj: Először is: ELég lesz csak _szerkeszteni_ a hozzászólásokat, másrészről: Használj a neten fellelhető sokfajta 'easy cms'-ből egyet, ami nagyon minimalisztikus, és pont ilyen célra íródott, csak az alapokat adja. Szerintem ilyen kell neked..

AZAZ KÉRETIK _SZERKESZTENI_ A !TOPIC!-ot VAGY A LEGUTOLSÓ !HOZZÁSZÓLÁSOD! ..köszi^^
_____________________________________
aurora @ 2.6.25-4.slh.3-sidux-amd64 | athena @ 2.6.24-generic-amd64

Mi kerüljön a "mag"-ba, és mi a modulokba, a magnak miből kellene állnia?
... stb.

felhasználók regisztrálhatnak, levél üzenet küldés, a rendszer eseményekről email-ben is értesítene, főleg fórum alapú lenne. (most még)

a főoldalra ugyanúgy kikerülnének a legújabb és frissen megválaszolt fórumtémák

hat.... igy a temaindito hozzaszolas alapjan.... szerintem inkabb naplot irjal...
jobb lesz mindenkinek.

t

na akkor térjünk komolyabb vizekre.. :D

hogyan álljak neki a tervezésnek?

eddig fórum lenne, felhasználók adminisztrációja és regisztrálása, főoldalon a friss topikok, esetleg szavazás. meg egyéb infók a főoldalon, blokkok.

a modulokban meg kiegészítő funkciók és szolgáltatások lennének, mittudoméjn, pl. dátum és idő mutatása, vagy mondjuk naptár esetleg ilyesmik.

de magának a rendszer felépítését milyennek tervezzem meg?

jah, meg persze blokkok is helyet foglalnának az oldalon.

egy kis alaprendszer lenne, és akkor később könnyen tudom bővíteni a modulokkal, de előfordúlna, hogy ha valamilyen nagyobb mértékü változtatást akarok, eszközölni, akkor azt az alap rendszerben kell megcsinálnom. ezért kérdezem, hogy milyen felépítés lenne a legoptimálisabb?

én igazán nem akarok rosszmájú lenni, de terveztél-e már nagyobb programot? biztos hogy PHP-ben akarod elkezdeni(folytatni)? nem lenne sokkal egyszerűbb és időtakarékosabb valami cms-t felhasználni?

hidd el ezeknek a rendszereknek a megismerése néhány óra. aztán többségük elég bővíthető, szval ha nagyon akarsz akkor utána még neki is eshetsz a programozásnak, és legalább lesz egy működő magod, ami köré építhetsz. [szerintem még így is jobban jársz mint ha írnál egy n+1-ik portál motort]

amúgy meg válaszolva kérdésedre:
http://ikon.inf.elte.hu/wiki/index.php?title=MVC

azért gonltam sajátra, mert ha mondjuk alaposan kiismerem a drupalt, és javítgatok, változtatgatok benne, működik. aztán megjelenik az újabb verzió, ahol csinálhatom megismét ugyanezeket, vagy ha abban van egy nagyobb változás, akkor ismerhetem ki újból, és ahhoz igazítani a változtatásaimat stb. stb...

Így van. Vagy bekerülsz a fejlesztők közé (ezt egyelőre kétlem...), vagy a specifikációknak (API) megfelelően fogsz kódolni, és akkor a saját modulokat kell "csak" karbantartanod. Egyébként egy jól megírt rendszerhez készített saját add-on/plugin/modul/akármi, ha jól van megírva, akkor nem, vagy nem nagyon borul meg egy-egy verzióváltáskor.

Mi számít egyébként nagyobb változtatásnak? 15-20k érdemi patch (diff) még nem az :-P azt végig lehet egy levegővel olvasni...

kétlem hogy a drupal kódjában bármit is kotorásznod kellene, mármint, ha valami újat funkciót akarsz akarsz, töltesz egy modult, vagy többet és kombinálsz. esetleg programozol... de ekkor is van gyönyörű APIja aminek segítségével leprogramozhatod és az egy verziónál tuti állandó, tehát nem kell átírnod a kódodat.

ha meg sajátot írsz úgyis az lesz hogy miután megtervezted, leimplemetálod, rájössz hogy nem volt elég általános mert hát egy új funkció milyen jó lenne, de hát sehogy se lesz szép a kód, meg tele van buggal így inkább újra tervezed és megint implementálsz és megint rájössz, hogy valami... szval így múködnek a dolgok nálad is meg drupaléknál.

imho csak nekik már nagyon sok tapasztalatuk van, és érdemes lenne ezzel valamit kezdeni. nem?

mármint vess egy pillantást egy létező jól működő rendszerre próbáld meg használni, és ha már úgy érzed hogy ok már ismered, akkor nézegesd a forráskódját, dokumentációját, és ha még ezek után is eltökélten sajátot akarsz, tiéd a pálya!

Ha moduláris dolgot akarsz, akkor a következő irányelvek vezéreljenek:
- nincs hackelgetés, ha valamit nem tudsz megoldani, akkor tervezési hiba
- szépen el kell különíteni a részeket (keret, modul, adatbázis, kimenet [tipp: SMARTY, vagy drupal-szerű phptemplate])
- kell egy nagyon rugalmas API, amivel a különálló részek képesek úgy együttműködni, hogy minél kevesebb függőséget generáljon egy modul

Drupal felépítéséből sokat lehet tanulni, rengeteg jó ötlet van benne (meg van mit javítani is :P).

Ha nem megy magától, felejtsd el. Ez a leghasznosabb tanács, amit adni tudok.

---
http://xkcd.com/258/

Apple MacBook
CD 1.83 | 1.25GB 667MHz | 60GB SATA | 2.36 kg | 5400mAh @ 12.5V

Én csak azt tudom javasolni, csináld azt amit én anno. Tanulmányozd mások kódját (portál szoftvereket), és amíg azok tervezési irányelveit nem érted, addig ne tervezz sajátot. Mások hibáiból nagyon sokat lehet tanulni! Mire ezzel megvagy, észre sem veszed és már nem lesz szükséged arra, hogy ilyesmit kérdezz :-) Egyszerűen jönni fognak az ötletek!

Ezen az oldalon találsz egy cikksorozatot arról, hogy egy portál kb. hogyan épül fel. Nem egy nagy etwas, elindulásnak viszont hasznos.