[Biococoa-dev] BCSequence

John Timmer jtimmer at bellatlantic.net
Sun Aug 22 14:01:18 EDT 2004


This is primarily directed to Koen, but the answers will be relevant to
everybody, so I'll post it to the list:

I'm looking over BCSequence in order to start implementing BCSequenceDNA.
There's a couple of places where I'm not entirely sure what your long term
intentions are, so I thought I'd clarify things before digging in.

I'm not entirely sure about the use of the following variables -
SequenceCountedSet
range
startposition, endposition

It looks like you use them to report back information generated by calling
other methods, with a process that looks like:
Call method, store information in these variables
Call other methods to get information
Reset information when 1st method is called again

Is that correct?  My big worry about this approach is what might happen with
a threaded app, where the first method might be called from a different
thread before the information could be retrieved.


The "sequenceString" variable appears to be separate from the sequence
itself - what is it used for?  I know Alex asked, but I can't seem to find
the email.


If we're going to have a generic "initWithString" method, we're going to
have to define some order of preference for what type of sequence to
generate.  Maybe try DNA, if that doesn't work for all letters, try RNA, if
that doesn't work, try protein?  If we keep a BCSequenceType variable, then
something like:
- (void)insertSymbolsFromString:(NSString *)s atIndex:(int)index;
Can use that in order to decide what type of sequence to add.


For a consistent naming convention:
When setting/getting an array of symbols, use SymbolArray in the method
name.
When setting/getting a sequence object, use Sequence in the method name.

It's probably worth creating both types of methods for all the methods like
"partialSequence", since we don't know what's going to be most useufl for
the users.


Think that's it for now -

John


_______________________________________________
This mind intentionally left blank





More information about the Biococoa-dev mailing list