Stora ord och lösa tankar ...

Date: 2008-11-02 11:52:02 Created: null

Tydligare definition
Tillägg i notationen: markering av om en modul ingår i Mozilla eller är "unik" för den applikation som visas i modellen. Något med ramen kanske? Kanske bäst att markera på applikationens ramar, kan bli mindre att markera då ...

Vår modell ger möjlighet att visa hur olika komponenter och tekniker i Mozilla hänger samman med en valbar grad av detaljer. Modellen är inte begränsad till enbart Mozilla eller dess webbläsare utan kan appliceras på, åtminstone, alla applikationer som utnyttjar ramverket Mozilla. Det främsta syftet med modellen är att erbjuda en större överskådlighet, och den som är insatt i en applikation bör snabbt kunna placera in den i en modell och presentera den för andra.

Existerande begrepp inom Mozilla har undersökts och tolkats för att få platser i modellen som så mycket som möjligt överensstämmer med den allmäna uppfattnignen. Detta hade gissningsvis inte varit nödvändigt i ett klarare definierat och dokumenterat projekt, men inom Mozilla förekommer ett antal begrepp som avlöst varandra, ändrat innebörd och har olika betydelse beroende på vem man frågar. Dessa har vi tolkat och kommenterat.

På den mest övergripande nivån i modellen återfinns för Mozilla endast tre entiteter; Cross Platform Back-End (XPBE), Cross Platform Front-End (XPFE) samt kärnmoduler (Gecko). XPBE är ett eget bidrag till förkortningsfloran som innefattar NSPR och XPCOM, de plattformsberoende delarna av Mozilla. Varje entitet i modellen kan sedan ges egna delmodeller där ingående modulers sammanhang detaljeras efter behov.

Vi kommer att sortera in en del grejer under XPFE som aldrig varit där förut. Hela begreppsvärlden in under XPFE, eller vad? Nej, så kan vi ju inte ha det, men vi lägger in det vi tycker passar där i alla fall. Sånt som implementeras av kärnmoduler eller så tycker vi passar där.

De grundläggande kopplingarna mellan dessa fyra är att kärnmodulerna utnyttjar XPBE och implementerar XPFE. Detta eftersom XPBE är den plattform som modulerna faktiskt körs i, medan XPFE är en uppsättning tekniker som implementeras av olika kärnmoduler. För andra applikationer som bygger på Mozilla varierar innehållet i kärnmoduler i olika grad, och kopplingar till andra delar behöver inte heller vara lika. Webbläsaren Chimera använder exempelvis plattformsberoende bibliotek för sitt gränssnitt (närmare bestämt Cocoa för Mac OS X) och har därmed ingen koppling till XPFE i sin modell. Chimera använder fortfarande Gecko, och har i och med det förmodligen (tror inte att de har anpassat Gecko på den nivån) kapacitet att utnyttja XPFE, men använder inte funktionerna. Det är det faktiska användandet vår modell fokuserar på, så pilen till XPFE saknas för Chimera.

Modellen visar inte dataflöde eller detaljerade sammanhang utan begränsas till att visa utnyttjande av moduler och implementation av tekniker. Vi har inte prövat modellens användbarhet på andra områden än Mozilla, men det vore ett intressant område att utforska vidare.