Zitat von
DGL-luke:
Hab ich das ganze damit angemessen gekapselt?
Du hast da gar nix gekapselt, bzw. zu sehr gekapselt.
Keiner deiner Werte ist außerhalb der Instanz sichtbar!
Code:
public class MushText
{
EscapeCode _Code
public EscapeCode Code
{
get{ return _Code;}
};
string _LiteralText;
public string LiteralText
{
get{ return _LiteralText;}
}
readonly List<MushText> _SubTexts = new List<MushText>();
public IEnumerable<MushText> SubTexts
{
get{ return _SubTexts;}
}
protected MushText() {}
public static IEnumerable<MushText> ParseMushTexts(Stream stream)
{
using(StreamReader rdr = new StreamReader(stream)
{
string line;
while((line = rdr.ReadLine()) != null)
{
MushText item = new MushText();
// fill here
yield return item;
}
}
}
}
btw: Der Bleistift hier is als immutable gedacht. Es sah ganz so aus als würdest du das ganze unveränderlich haben wollen.
Aber vllt weißt du ja gar nicht was du willst?