[python] kterak vhodne resit architekturu IMAP klienta

Jan Matejka matejka na cat.cz
Neděle Září 17 21:56:59 CEST 2006


> > IMHO oddelovat UI od mailboxu frontou nemá smysl protože UI 
> potrebuje 
> > pro zobrazovaní okamzitou odpoved relevantnich dat nebo 
> odpoved "data 
> > nejsou k dispozici".
> 
> Potrebuju chovani "ok, mas tu data", "data budou za chvili" 
> nebo "chyba".
Ano.
> 
> > Naopak parser bych nechal bezet ve zvlastnim threadu.
> 
> Jake by to melo vyhody?

Tak jak jsem se na to dival je mailbox z pohhledu UI modul ktery je schopen
okamzite synchronne odpovidat na pozadavky UI. Pokud by UI melo komunikovat
s mailboxem pres frontu, tak by UI muselo, aby mohlo  fungovat, přebírat
funkci cache, kterou chceme mit v mailboxu. 
Uvazoval jsem ze zmeny ke kterym v mailboxu dojde by byly oznamovany ve
stejnem threadu jako bezi UI formou synchronnich zprav, ktere by UI
zachycovalo, tzn. fronta by nebyla nutna. 
Z pohledu parseru by mailbox slouzil jako databaze pro ukladani vysledku
nactenych dat, ukladat by je tam mohl přes frontu. Podobně pozadavky na
komunikaci s imap serverem by si parser odebiral z fronty ktera by byla
plnena mailboxem.

> 
> > Snazil
> > bych se o to, aby daval data v takove podobe, aby sly 
> rychle zaradit 
> > do datovych struktur mailboxu, aby aktualizacemi mailboxu nebylo 
> > blokovano UI.
> 
> Mno, mne se libi to, ze Parser fakt jenom parsuje. Kvuli 
> celkem komplikovane architekture IMAPu se dost brutalni 
> logice v Mailboxu nevyhnu.
> 

Pro seriozni diskusi by to asi chtelo rozdelit na vetsi mnozstvi funkcnich
bloku, s tim ze nektere bloku budou moci byt v řešení sloučeny. 
Jan Matejka



Další informace o konferenci Python