[Biococoa-dev] Design question
Alexander Griekspoor
mek at mekentosj.com
Tue Aug 10 02:01:42 EDT 2004
>> Properly the first option if we go for shared symbols, as you can
>> either add a property to all serines or none in this approach. The
>> alternative option is to keep a modification dictionary (modification
>> and position) associated at the sequence level instead of the symbol
>> one.
> The second option is they way to go, I think. If I remember correctly,
> both the 'Singleton' and this approach are one of the 'Design
> Patterns', first described by the Gang of Four. I forgot the name of
> the second one, but you should check out that book in your local
> bookstore/library. One of the bibles of OOP.
Thanks Koen, I will check it out, I find myself in "programming land"
so new that I seriously miss a lot of historic knowledge...
The fact that I was trained as a biologist instead of IT guy doesn't
help much either ;-)
Yesterday I was still thinking a bit more about the two options I
presented, and indeed the modification dictionary seems the best way to
go. I think it's a very nice approach to keep this in a similar way as
for instance the genbank records show features associated with the
sequence. I believe John also mentioned something about this. The
hierarchy would be something along the lines of a dictionary containing
BCAnnotation objects (biojava does this as well), that would describe
the positions in simple NSRanges and the type perhaps as
BCFunctionalGroup objects. One of the problems will be to keep the
system such that new (for us unknown) modifications/features are easily
added...
Another thought I would like you to comment on is the addition of a
"history/editing dictionary" which keeps track of who added/edited a
sequence and when/what things were edited. In general, I think it would
be nice if we would go for the "non-destructive editing approach"
wherever possible. My would-be Biococoa based DNAStrider-like app would
for instance allow the user to cut and paste fragments and vectors, and
it would be very nice if many of the editing could always be undone,
and the original sequence could always be viewed. Think along the lines
of a modern video editing approach, the files are unchanged, only the
displayed parts are changed. This could save a lot of memory/disk
reusal/writing as well. Of course there must be methods to "crop" your
file as it has no use to keep a complete genome around if your only
interested in one gene right...
These are things we have to build in the core BCSequence class....
Alex
*********************************************************
** Alexander Griekspoor **
*********************************************************
The Netherlands Cancer Institute
Department of Tumorbiology (H4)
Plesmanlaan 121, 1066 CX, Amsterdam
Tel: + 31 20 - 512 2023
Fax: + 31 20 - 512 2029
AIM: mekentosj at mac.com
E-mail: a.griekspoor at nki.nl
Web: http://www.mekentosj.com
Windows is a 32-bit patch to a 16-bit shell for an 8-bit
operating system, written for a 4-bit processor by a 2-
bit company without 1 bit of sense.
*********************************************************
*********************************************************
** Alexander Griekspoor **
*********************************************************
The Netherlands Cancer Institute
Department of Tumorbiology (H4)
Plesmanlaan 121, 1066 CX, Amsterdam
Tel: + 31 20 - 512 2023
Fax: + 31 20 - 512 2029
AIM: mekentosj at mac.com
E-mail: a.griekspoor at nki.nl
Web: http://www.mekentosj.com
Mac vs Windows
65 million years ago, there were more
dinosaurs than humans.
Where are the dinosaurs now?
*********************************************************
More information about the Biococoa-dev
mailing list