Pogledajte određenu poruku
Staro 23. 08. 2006.   #3
Pedja
Predrag Supurović
Grand Master
 
Datum učlanjenja: 24.01.2006
Lokacija: Užice
Poruke: 791
Hvala: 3
200 "Hvala" u 12 poruka
Pedja is on a distinguished roadPedja is on a distinguished roadPedja is on a distinguished road
Default

Sve se svodi na to da uvedes standardizovan nacin komunikacije aplikacije sa plugin-om. Mozes tako kako si zamislio sa klasama, a mozes i preko procedura.

Tesko je ulaziti u detalje, jer to sve zavisi od konkretne implementacije i uopstenosti koju zelis da postignes.

U principu potrebno je da core aplikacije zna da primi zahtev za odredjeni plugin (modul), da moze da prosledi informaciju koja tacno opcija modula treba da se pokrene, da toj opciji prosledi custom parametre i naravno da moze da proveri da li korisnik ima dovoljne privilegije da pristupi opciji plugin-a.

Kada sam razvijao takav sistem isao sam prilicno siroko tako da svaka opcija u pluginu moze da definise sadrzaj za title, keywords, description, i druge sadrzaje koji idu cak i u HTTP header, sve kroz standardizovan mehanizam.

Dobra stvar koju valja da uradis to je da svaku opciji plugina podelis na dva dela: apliativni i vizuelni deo. Apliaktivni izvrsis pre nego sto uopste pocnes kreiranje HTML strane, a vizuelni u toku genersianja dokumenta. Tako dobijas velike mogucnosti da uradis prakticno bilo kakvu apliakciju, a pre svega to da opcija plugina moze da utice na celu aplikaciju, bas zato sto se njen aplikativni deo izvrsi pre nego sto pocne generisanje HTML-a, kada uvek imas prostora da promenis ponasanje bilo kog dela aplikacije.

Takodje, treba da ozbedis mehanizam da jedna opcija plugina moze da inkluduje bilo koju drugu opciju bilo kog plugina u aplikaciji.
Pedja je offline   Odgovorite uz citat