Builder.cz - Informacni server o programovani

Odběr fotomagazínu

Fotografický magazín "iZIN IDIF" každý týden ve Vašem e-mailu.
Co nového ve světě fotografie!

 

Zadejte Vaši e-mailovou adresu:

Kamarád fotí rád?

Přihlas ho k odběru fotomagazínu!

 

Zadejte e-mailovou adresu kamaráda:

Factory method

Seznam témat     Nová odpověď

Přihlásit se     Registrace     Zapomenuté heslo

Re: Factory method

Autor: zis

12:27:29 23.07.2008

ja bych rekl ze stoprocentne

metoda Ovoce Nahrej() je tovarni metoda
{
.
.
.

if (ovoceId == 1) return Banan.Nahrej(s);
if (ovoceId == 2) return Hruska.Nahrej(s);
.
.
.
}

zbytečné to tu rozepisovat, blíže o vzoru
[url]http://objekty.vse.cz/Objekty/Vzory-Factory[/url]

Citovat příspěvek

 

Factory method

Autor: himalaya

15:35:26 31.05.2008

Dal by se nasledujici kod pokladat za vzor Tovarni metody?

[code]
class Ovoce
{
protected string jmeno;

public string Jmeno { get { return jmeno; } }

public static Ovoce Nahrej(Stream s)
{
BinaryReader br = new BinaryReader(s);
int ovoceId = br.ReadInt32();

if (ovoceId == 1) return Banan.Nahrej(s);
if (ovoceId == 2) return Hruska.Nahrej(s);

return null;
}
}

class Banan : Ovoce
{
public static new Ovoce Nahrej(Stream s)
{
BinaryReader br = new BinaryReader(s);
Banan b = new Banan();
b.jmeno = br.ReadString();

return b;
}
}

class Hruska : Ovoce
{
public static new Ovoce Nahrej(Stream s)
{
BinaryReader br = new BinaryReader(s);
Hruska b = new Hruska();
b.jmeno = br.ReadString();

return b;
}
}

class Program
{
static void Main(string[] args)
{
using (FileStream fs = new FileStream("ovoce", FileMode.Open))
{
Ovoce.Nahrej(fs);
}
}
}
[/code]

Citovat příspěvek

 

 

 

Přihlášení k mému účtu

Uživatelské jméno:

Heslo: