pl.comp.lang.delphi
[Top] [All Lists]

Modelowanie w Delphi

Subject: Modelowanie w Delphi
From: "Wojciech \"Spook\" Sura"
Date: Wed, 30 Jul 2008 10:26:49 +0200
Newsgroups: pl.comp.lang.delphi


Witam!

Próbuję na potrzeby firmy rozpracować modelowanie i dokumentowanie kodu (w szczególności, livedoc) w Delphi. Jednak już podczas przygotowywania prezentacji dla programistów natrafiłem na problemy nie do przeskoczenia. Ot, dodałem do projektu moduł z klasą (wrzucę sam nagłówek, ale to wystarczy):

<code>
unit SpkVirtualFilesystem;

interface

uses SysUtils, Classes, ZlibEx;

type TObjectType = (otFile, otFolder);

type TVirtualObject = class(TObject)
    private
    ///<summary>Folder w którym znajduje się obiekt</summary>
      FParent : TVirtualObject;
    ///<summary>Nazwa obiektu</summary>
      FName : string;
    protected
    ///<summary>Setter dla własności Name</summary>
      procedure SetName(AName : string);
    ///<summary>Getter dla własności GetParent</summary>
      function GetParent: TVirtualObject;
    ///<summary>Setter dla własności Parent</summary>
      procedure SetParent(const Value: TVirtualObject);
    public
    ///<summary>Konstruktor</summary>
      constructor Create; virtual;
      class function CreateFromStream(Stream : TStream) : TVirtualObject;

    ///<summary>Metoda ładuje zawartość obiektu z pliku</summary>
      procedure LoadFromStream(Stream : TStream); virtual; abstract;
    ///<summary>Metoda zapisuje zawartość obiektu do pliku</summary>
      procedure SaveToStream(Stream : TStream); virtual; abstract;
    published
    ///<summary>Folder w którym znajduje się obiekt</summary>
      property Parent : TVirtualObject read GetParent write SetParent;
    ///<summary>Nazwa obiektu</summary>
      property Name : string read FName write SetName;
    end;

implementation

end.
</code>

Modelowanie na tej klasie kompletnie głupieje. Albo wyświetla klasę, która nie ma żadnych pól ani metod albo pokazuje tylko pierwsze pole a resztę pomija albo wręcz nie pokazuje całego modułu w modelowaniu. Dodam, że identycznie jest w przypadku w pełni zaimplementowanej klasy. Żeby było śmieszniej, problem naprawia usunięcie *wszystkich* komentarzy aż do metody klasowej włącznie.

Co więcej, livedoc też bardzo łatwo wysypać. Po zastosowaniu forwardów do klas, Livedoc pokazuje w podpowiedzi komentarz do pierwszego forwarda we wszystkich klasach, ich polach i metodach aż do pierwszej klasy, która zostanie zadeklarowana z jawnym "type".

Panowie z BSC/CodeGear, co Wy na to? Przy czym sugerowałbym nie odsyłać mnie do QC, (bo po pierwsze, po próbie wejścia do QC z głównej strony Codegear wyświetlana jest struktura klas ichniej aplikacji internetowej), bo takie rzeczy powinni wyłapać Wasi testerzy a nie końcowy użytkownik. To nie jest funkcjonalność, która ma kilka drobnych błędów, ale funkcjonalność, która nie działa.

A poza tym, czy ktoś z Grupowiczów korzysta z tej funkcjonalności? Czy są jeszcze jakieś problemy o których warto wiedzieć?

Pozdrawiam -- Spook.

--
! ._______. Warning: Lucida Console sig!    //)    !
! || spk ||    www.spook.freshsite.pl      / _ """*!
! ||_____||        spook at op.pl         / '  | ""!
! |  ___  |   tlen: spoko_ws gg:1290136  /. __/"\ '!
! |_|[]_|_| May the SOURCE be with you! \/) \ !

<Prev in Thread] Current Thread [Next in Thread>
Privacy Policy