Posted By: martas (Ach jo , no jo :-))) on 'CZprogram'
Title: Re: Java: Implemntace metody v definici tridy?
Date: Thu Oct 21 12:29:25 2004
> > IMHo mas problemy v OO mysleni. A obecne delat 65k velky soubory je
> zverstvo
> > (ono to obcas jinak nejde, ale...)
>
> Na zaklade ceho jsi k tomu dosel? :) Fakt je ze sem to nikdy extra
> nestudoval,
> ale v Delphi sem toho napsal opravdu hodne.ale mozna to Borlandi delaji
> nejak
> spatne a ja to od nich chytil.
No, Delphi maji k OO programovani dost daleko, spis nuti pohodlneho
programatora psat strukturovane programy s objektovou syntaxi (vlastni
nekolikaleta zkusenost).
> Ja zadnej 65k soubor nevyrobil, to Sunove :) No a me nejak prijde ze je to
> desive neprehledny... byl jsem zvykly na jazyky kde jsou definice trid
:-) ..... jestli jsi v Netbeans vytvoril 65k soubor, tak bych rekl ze stejne
velka by byla i implementace te tridy v C++ nebo Delphi. 4 z 5 javistu by
doporucili refactoring.
> oddeleny od samotny implemenace. Jako uzivatele konkretni tridy me zridka
> zajima jak je to udelany. No zkoumam Javu tri dny... takze fakt tapu :)
>
> Mam dojem ze k tomu co jsem chtel slouzi
>
> public interface ClassName {
> ...
Jo, to by slo. Udelas si knihovnu, kde budes mit tridu ClassName ktera nebude
public a bude implementovat public interface ClassInterface. Pak si akorat
udelas jeste tzv. factory tridu, ktera ti vytvori a vrati objekt te tridy.
public interface ClassInterface {
...
}
class ClassName implements ClassInterface {
...
// musi obsahovat vsechny metody nadefinovane v ClassInterface
}
public class ClassNameFactory {
public static ClassInterface getInstance(){
return new ClassName();
}
}
Ten kdo bude tvoji knihovnu pouzivat, neprijde s tridou ClassName vubec do
styku, potrebuje pouze ten interface. Akorat teda jestli by ta trida ClassName
mela mit 65k, tak ji opravdu rozloz do nekolika mensich.
>
> Diky
>
> Semik
Martas