Wybrane narzędzia wspomagające dokumentowanie programu



Podobne dokumenty
Javadoc. Piotr Dąbrowiecki Sławomir Pawlewicz Alan Pilawa Joanna Sobczyk Alina Strachocka

Kurs programowania. Wykład 7. Wojciech Macyna. 25 kwietnia 2017

Tworzenie dokumentacji

Tworzenie oprogramowania

Programowanie obiektowe. Literatura: Autor: dr inŝ. Zofia Kruczkiewicz

Sposoby tworzenia projektu zawierającego aplet w środowisku NetBeans. Metody zabezpieczenia komputera użytkownika przed działaniem apletu.

Java jako język programowania

Programowanie obiektowe zastosowanie języka Java SE

PLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH. KL III TI 4 godziny tygodniowo (4x30 tygodni =120 godzin ),

Laboratorium 01: Poznanie środowiska programowania w języku Java [2h]

PLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH. KL IV TI 6 godziny tygodniowo (6x15 tygodni =90 godzin ),

Inżynieria Oprogramowania

System zarządzający grami programistycznymi Meridius

1.Wstęp. 2.Generowanie systemu w EDK

Sphinx - system dokumentacji dla Pythona

Programowanie w Sieci Internet Blok 2 - PHP. Kraków, 09 listopada 2012 mgr Piotr Rytko Wydział Matematyki i Informatyki

Programowanie obiektowe

Extensible Markup Language (XML) Wrocław, Java - technologie zaawansowane

Programowanie w języku Java - Wyjątki, obsługa wyjątków, generowanie wyjątków

Wywoływanie metod zdalnych

16) Wprowadzenie do raportowania Rave

Backend Administratora

Wstęp Budowa Serwlety JSP Podsumowanie. Tomcat. Kotwasiński. 1 grudnia 2008

Język JAVA podstawy. wykład 1, część 2. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna

extensible Markup Language, cz. 1 Marcin Gryszkalis, mg@fork.pl

Architektury Usług Internetowych. Laboratorium 2. Usługi sieciowe

Praca w środowisku Visual Studio 2008, Visual C

Obiektowy model dokumentu. Katedra Mikroelektroniki i Technik Informatycznych

Doxygen. Bogdan Kreczmer. ZPCiR ICT PWr pokój 307 budynek C3.

Ćwiczenia nr 2. Edycja tekstu (Microsoft Word)

Programowanie Obiektowe GUI

Laboratorium Komputerowych Systemów Rozpoznawania Projekt 2. Lingwistyczne podsumowania baz danych

Wykład V. Rzut okiem na języki programowania. Studia Podyplomowe INFORMATYKA Podstawy Informatyki

Tomasz Boiński: 1. Pozycjonowanie stron i zastosowanie mod_rewrite

Podstawy programowania w Qt4

Instrukcja obsługi DHL KONWERTER 1.6

OpenLaszlo. OpenLaszlo

Wywoływanie metod zdalnych

Tworzenie i obsługa wirtualnego laboratorium komputerowego

Tworzenie gadgetów Windows Vista/7. Krzysztof Jeliński Toruń 2011

Podstawy programowania. Wprowadzenie

Ćwiczenie 1. Przygotowanie środowiska JAVA

Jak ustawić cele kampanii?

XQTav - reprezentacja diagramów przepływu prac w formacie SCUFL przy pomocy XQuery

METODY REPREZENTACJI INFORMACJI

Narzędzia i aplikacje Java EE. Usługi sieciowe Paweł Czarnul pczarnul@eti.pg.gda.pl

Przewodnik użytkownika (instrukcja) AutoMagicTest

JAVA. Java jest wszechstronnym językiem programowania, zorientowanym. apletów oraz samodzielnych aplikacji.

Rys. 1. Główne okno programu QT Creator. Na rysunku 2 oznaczone zostały cztery przyciski, odpowiadają kolejno następującym funkcjom:

Zakres treści Czas. 2 Określenie charakteru i tematyki strony. Rodzaje witryn. Projekt graficzny witryny. Opracowanie skryptów

Laboratorium 1 Temat: Przygotowanie środowiska programistycznego. Poznanie edytora. Kompilacja i uruchomienie prostych programów przykładowych.

Instrukcja obsługi Multiconverter 2.0

Laboratorium 03: Podstawowe konstrukcje w języku Java [2h]

Tworzenie aplikacji GIS w technologii Flex. Tomasz Turowski Esri Polska

Interfejsy. Programowanie obiektowe. Paweł Rogaliński Instytut Informatyki, Automatyki i Robotyki Politechniki Wrocławskiej

REFERAT PRACY DYPLOMOWEJ

Języki i metody programowania Java. Wykład 2 (część 2)

Środowisko publikacyjne oparte na XML-u. Szymon Zioło 1 maja 2004

Generated by Foxit PDF Creator Foxit Software For evaluation only. System Szablonów

Metody dostępu do danych

Informatyka I. Klasy i obiekty. Podstawy programowania obiektowego. dr inż. Andrzej Czerepicki. Politechnika Warszawska Wydział Transportu 2018

Cel: Przypisujemy przyciskom określone funkcje panel górny (Panel1)

WPROWADZENIE DO JĘZYKA JAVA

1. Zaczynamy! (9) 2. Edycja dokumentów (33)

dlibra 3.0 Marcin Heliński

DSL w środowisku Eclipse. Grzegorz Białek Architekt techniczny, Sygnity S.A.

Wymagania edukacyjne z informatyki dla klasy szóstej szkoły podstawowej.

Język JAVA podstawy. wykład 2, część 1. Jacek Rumiński. Politechnika Gdańska, Inżynieria Biomedyczna

Programowanie Multimediów. Programowanie Multimediów JAVA. wprowadzenie do programowania (3/3) [1]

Projektowanie baz danych za pomocą narzędzi CASE

INFORMATYKA, TECHNOLOGIA INFORMACYJNA ORAZ INFORMATYKA W LOGISTYCE

Środowisko NetBeans. Paweł Boguszewski

System KADRY. Konsolidacja danych kadrowych BKIP. Wystawianie pism do pracowników. Autor : Piotr Zielonka tel

Programowanie w Javie cz. 1 Wstęp. Łódź, 24 luty 2014 r.

JAX-RS czyli REST w Javie. Adam Kędziora

Podstawy i języki programowania

Aplikacje w środowisku Java

Zaawansowane aplikacje internetowe - laboratorium

Przewodnik użytkownika (instrukcja) AutoMagicTest

Zacznij Tu! Poznaj Microsoft Visual Basic. Michael Halvorson. Przekład: Joanna Zatorska

Dziedziczenie. Tomasz Borzyszkowski

Tworzenie aplikacji Web Alicja Zwiewka. Page 1

Jeśli chcesz łatwo i szybko opanować podstawy C++, sięgnij po tę książkę.

Struktury systemów operacyjnych

Automatyczne generowanie kodu. 4Developers, 26 marca 2010

Programowanie współbieżne i rozproszone

Część I Rozpoczęcie pracy z usługami Reporting Services

Technologie informacyjne - wykład 12 -

Uniwersytet Rzeszowski

Widżety KIWIPortal. tworzenie umieszczanie na stronach internetowych opcje zaawansowane. Autor: Damian Rebuś Data: Wersja: 1.

Java EE produkcja oprogramowania

Encje w Drupalu. Tworzenie własnych encji i ich wpływ na poprawę wydajności

I. Informacje ogólne. Jednym z takich systemów jest Mambo.

Doxygen. Bogdan Kreczmer.

GENERATOR OFERTY PDF DOKUMENTACJA UŻYTKOWA 1/20

Remote Method Invocation 17 listopada 2010

Format HTML. Wybrane działy Informatyki Stosowanej. Definicja i przeznaczenie Struktura dokumentu Znaczniki Formularze i komponenty

1. Przypisy, indeks i spisy.

Projekt inżynierski uwagi

Wykład 1: Wprowadzenie do technologii Java

Transkrypt:

Wybrane narzędzia wspomagające dokumentowanie programu Krzysztof Gogól Paweł Konieczny Uniwersytet Warszawski 18 III 2008

Plan prezentacji 1 Wprowadzenie 2 Wstęp Dobre praktyki Przykłady 3 - co to? - pierwsze kroki - podsumowanie 4 Wprowadzenie Działanie 5 Rozwiązanie komercyjne Koniec

Generator dokumentacji Generator dokumentacji (documentation generator) jest narzędziem programistycznym, którego zadaniem jest tworzenie dokumentacji na potrzeby programistów lub końcowych użytkowników systemu na podstawie zbioru specjalnie zakomentowanych plików źródłowych z kodem lub plików binarnych.

Typy dokumentów Wyróżniamy następujące typy dokumentów: Batch documents Interactive documents Text block correspondence Forms Każdy dokument należy do jednej z powyższych kategorii.

Typy dokumentów Wyróżniamy następujące typy dokumentów: Batch documents Interactive documents Text block correspondence Forms Każdy dokument należy do jednej z powyższych kategorii.

Typy dokumentów Wyróżniamy następujące typy dokumentów: Batch documents Interactive documents Text block correspondence Forms Każdy dokument należy do jednej z powyższych kategorii.

Typy dokumentów Wyróżniamy następujące typy dokumentów: Batch documents Interactive documents Text block correspondence Forms Każdy dokument należy do jednej z powyższych kategorii.

Typy dokumentów Wyróżniamy następujące typy dokumentów: Batch documents Interactive documents Text block correspondence Forms Każdy dokument należy do jednej z powyższych kategorii.

Typy dokumentów Wyróżniamy następujące typy dokumentów: Batch documents Interactive documents Text block correspondence Forms Każdy dokument należy do jednej z powyższych kategorii.

Wstęp Wprowadzenie Wstęp Dobre praktyki Przykłady Podobnie jak w innych dziedzinach życia, także przy pisaniu komentarzy poddanie się niewielkiej liczbie ograniczeń może zdziałać cuda. Podczas pisania dobrze jest mieć na uwadze parę zasad, dzięki którym dokumentacja staje się jasna i przejrzysta.

Wstęp Dobre praktyki Przykłady Formułowanie treści Pierwsze zdanie komentarza zazwyczaj wykorzystywane jest jako podsumowanie całego bloku, powinno więc być jednocześnie krótkie i samowystarczalne, ale także zawierać wszystkie kluczowe informacje. Dla ujednolicenia formy dokumentu, warto trzymać się zasady, że opis metody lub atrybutu pisany jest w 3-ciej osobie. Unikać zbędnych wprowadzeń, np: Sprawdza poprawność ruchu zamiast Ta metoda sprawdza poprawność ruchu.

Wstęp Dobre praktyki Przykłady Drobne uwagi Unikać odnośników do dobrze znanych elementów, do pozostałych wystarczy po jednym odnośniku (np ciągłe tworzenie odnośników do klasy String jest złym pomysłem). Odwołując się do określonej metody unikać pisania nawiasów i zestawu argumentów - chyba że chodzi o konkretną metodę spośród wielu o tej samej nazwie (np sprawdzzakresruchu, ale sprawdzzakresruchu(int, int, int, Pionek)). Unikać ujawniania szczegółów implementacyjnych - chyba że zależą one od platformy - wówczas można nadmienić w jaki sposób kawałek kodu działa na określonej platformie (np W systemie Windows działanie metody loadlibrary jest takie samo jak metody loadlibrary z Windows API. )

Wstęp Dobre praktyki Przykłady Jak pisać Komentarze do obiektu powinny być umieszczone bezpośrednio przed nim i zostać zawarte między znacznikami /** oraz */ Pisząc komentarz można używać elementów formatowania HTML, np. znacznika <p> do oznaczania akapitów. Odnośniki do innych części dokumentacji tworzy się używając znacznika {@link URL}, np bardzo niewskazane {@link String}. Między opisem, a listą tzw. tagów należy umieścić pojedynczą wolną linię. W metodzie implementującej interfejs lub przedefiniowującej jakąś metodę, dokumentacja jest automatycznie generowana z odpowiednim odnośnikiem (np. overrides lub implements), nie trzeba zatem kopiować komentarzy.

Wstęp Dobre praktyki Przykłady Tagi Lista tagów, które można umieścić w komentarzu (powinno się przestrzegać podanej kolejności): @param - argument metody. @return - wartość wyniku. @throws - wyjątki rzucane przez metodę. @author - autor (tylko w klasach i interfejsach) @version - wersja (tylko w klasach i interfejsach) @see - obiekty, z którymi warto się zapoznać dla zrozumienia działania metody. @deprecated - oznaczanie elementu jako przestarzały.

Przykład Wprowadzenie Wstęp Dobre praktyki Przykłady / Returns an Image object that can then be painted on the screen. The u r l argument must s p e c i f y an a b s o l u t e { @ l i n k URL}. The name argument i s a s p e c i f i e r t h a t i s r e l a t i v e to t h e u r l argument. <p> This method always r e t u r n s immediately, whether or not the image e x i s t s. When t h i s applet attempts to draw the image on t h e s c r e e n, t h e data w i l l be l o a d e d. The g r a p h i c s p r i m i t i v e s t h a t draw t h e image w i l l i n c r e m e n t a l l y p a i n t on t h e s c r e e n. @param u r l an a b s o l u t e URL g i v i n g t h e base l o c a t i o n o f t h e image @param name t h e l o c a t i o n o f t h e image, r e l a t i v e to t h e u r l argument @ r e t u r n t h e image a t t h e s p e c i f i e d URL @see Image / p u b l i c Image getimage (URL url, String name ) { t r y { return getimage ( new URL( url, name ) ) ; } catch ( MalformedURLException e ) { r e t u r n n u l l ; } }

Kontrprzykład Wprowadzenie Wstęp Dobre praktyki Przykłady / S e t s t h e t o o l t i p t e x t. @param t e x t t h e t e x t o f t h e t o o l t i p / p u b l i c v o i d s e t T o o l T i p T e x t ( S t r i n g t e x t ) {}

- co to? - pierwsze kroki - podsumowanie Czym jest? jest systemem tworzenia dokumentacji obsługujący języki: C++, C, Java, Objective-C, Python, IDL (Corba and Microsoft flavors), Fortran, VHDL, PHP, C#

- co to? - pierwsze kroki - podsumowanie Po co z niego korzystać? generuje dokumentację w postaci strony (w HTMLu) oraz jako maunal napisany w Latex u na podstawie dowolnego zbioru plików źródłowych. Wynikiem jego działania mogą również być pliki RTF (MS-Word), PostScript, PDF lub strony uniksowego podręcznika. Dzięki odpowiednim ustawieniom możliwe jest wygenerowanie dokumentacji opisującej niezakomentowany kod. Możliwość tworzenia dokumentacji nie tylko na podstawie plików z kodem. Dodatkowo istnieje możliwość zilustrowania zależności między klasami za pomocą różnych diagramów.

- co to? - pierwsze kroki - podsumowanie Po co z niego korzystać? generuje dokumentację w postaci strony (w HTMLu) oraz jako maunal napisany w Latex u na podstawie dowolnego zbioru plików źródłowych. Wynikiem jego działania mogą również być pliki RTF (MS-Word), PostScript, PDF lub strony uniksowego podręcznika. Dzięki odpowiednim ustawieniom możliwe jest wygenerowanie dokumentacji opisującej niezakomentowany kod. Możliwość tworzenia dokumentacji nie tylko na podstawie plików z kodem. Dodatkowo istnieje możliwość zilustrowania zależności między klasami za pomocą różnych diagramów.

- co to? - pierwsze kroki - podsumowanie Po co z niego korzystać? generuje dokumentację w postaci strony (w HTMLu) oraz jako maunal napisany w Latex u na podstawie dowolnego zbioru plików źródłowych. Wynikiem jego działania mogą również być pliki RTF (MS-Word), PostScript, PDF lub strony uniksowego podręcznika. Dzięki odpowiednim ustawieniom możliwe jest wygenerowanie dokumentacji opisującej niezakomentowany kod. Możliwość tworzenia dokumentacji nie tylko na podstawie plików z kodem. Dodatkowo istnieje możliwość zilustrowania zależności między klasami za pomocą różnych diagramów.

Na jakich systemach działa? - co to? - pierwsze kroki - podsumowanie jest rozwijany pod Linuxem i Mac OS X, ale jest programem łatwo przenośnym. Działa również pod innymi Unix flavors a nawet pod Windowsem.

- co to? - pierwsze kroki - podsumowanie Przykładowe projekty Przykłady wykorzystania a: The KDevelop API Documentation The Xerces-C++ Documentation D-Bus documentation Yahoo Music Engine IBM s International Components for Unicode

- co to? - pierwsze kroki - podsumowanie Przykładowe projekty Przykłady wykorzystania a: The KDevelop API Documentation The Xerces-C++ Documentation D-Bus documentation Yahoo Music Engine IBM s International Components for Unicode

- co to? - pierwsze kroki - podsumowanie Przykładowe projekty Przykłady wykorzystania a: The KDevelop API Documentation The Xerces-C++ Documentation D-Bus documentation Yahoo Music Engine IBM s International Components for Unicode

- co to? - pierwsze kroki - podsumowanie Przykładowe projekty Przykłady wykorzystania a: The KDevelop API Documentation The Xerces-C++ Documentation D-Bus documentation Yahoo Music Engine IBM s International Components for Unicode

- co to? - pierwsze kroki - podsumowanie Przykładowe projekty Przykłady wykorzystania a: The KDevelop API Documentation The Xerces-C++ Documentation D-Bus documentation Yahoo Music Engine IBM s International Components for Unicode

- co to? - pierwsze kroki - podsumowanie Przykładowe projekty Przykłady wykorzystania a: The KDevelop API Documentation The Xerces-C++ Documentation D-Bus documentation Yahoo Music Engine IBM s International Components for Unicode

Przepływ informacji Wprowadzenie - co to? - pierwsze kroki - podsumowanie Przepływ informacji w

Konfiguracja Wprowadzenie - co to? - pierwsze kroki - podsumowanie generuje dokumentację na podstawie pliku konfiguracyjnego. Każdy projekt powien posiadać własny plik konfiguracyjny. Projekt może składać się z jednego pliku lub drzewa katalogów. Do łatwego i szybkiego tworzenia pliku konfiguracyjnego służy komenda: doxygen -g <config-file > Plik konfiguracyjny a ma podobna budowę do Makefile a. Składa się z wielu przypisań postaci: TAGNAME = VALUE lub TAGNAME = VALUE1 VALUE2...

Doxywizard Wprowadzenie - co to? - pierwsze kroki - podsumowanie Dla osób, które nie chcą konfigurować programów za pośrednictwem edytorów tekstowych powstał DOXYWIZARD GUI systemu. Umożliwia on tworzenie, czytanie i pisanie do pliku konfiguracyjnego doxygen za pośrednictwem miłych dla oka okienek.

Pierwsze kroki Wprowadzenie - co to? - pierwsze kroki - podsumowanie Do generowania dokumentacji służy komenda: doxygen <config-file > W zależności od ustawień program wygeneruje katalog html, rtf, latex, xml lub man w wyjściowym katalogu. Tak jak sugerują nazwy, te katalogii zawierają wygenerowaną dokumentację w HTML, RTF, XML lub Unix-Man page format. Domyślnie OUTPUT jest umieszczany w katalogu, w którym jest uruchamiany. Ustawinia te można zmienic w pliku konfiguracyjnym (OUTPUTDIRECTORY ).

- co to? - pierwsze kroki - podsumowanie Podsumowanie jest prostym w obsłudze narzędziem wspomagającym dokumentację. Jest w pełni zgodny z i QT-doc. Dzięki możliwości tworzenia dokumentacji nawet na podstawie nieudokumentowanego kodu, w łatwy i przyjazny sposób można poznać strukturę projektu.

- co to? - pierwsze kroki - podsumowanie Podsumowanie jest prostym w obsłudze narzędziem wspomagającym dokumentację. Jest w pełni zgodny z i QT-doc. Dzięki możliwości tworzenia dokumentacji nawet na podstawie nieudokumentowanego kodu, w łatwy i przyjazny sposób można poznać strukturę projektu.

- co to? - pierwsze kroki - podsumowanie Podsumowanie jest prostym w obsłudze narzędziem wspomagającym dokumentację. Jest w pełni zgodny z i QT-doc. Dzięki możliwości tworzenia dokumentacji nawet na podstawie nieudokumentowanego kodu, w łatwy i przyjazny sposób można poznać strukturę projektu.

- co to? - pierwsze kroki - podsumowanie Gdzie szukać informacji? Strona główna a http://www.stack.nl/ dimitri/doxygen/ Podręcznik użytkownika http://www.stack.nl/ dimitri/doxygen/manual.html Lista wszystkich poleceń specjalnych http://www.stack.nl/ dimitri/doxygen/commands.html

- co to? - pierwsze kroki - podsumowanie Gdzie szukać informacji? Strona główna a http://www.stack.nl/ dimitri/doxygen/ Podręcznik użytkownika http://www.stack.nl/ dimitri/doxygen/manual.html Lista wszystkich poleceń specjalnych http://www.stack.nl/ dimitri/doxygen/commands.html

- co to? - pierwsze kroki - podsumowanie Gdzie szukać informacji? Strona główna a http://www.stack.nl/ dimitri/doxygen/ Podręcznik użytkownika http://www.stack.nl/ dimitri/doxygen/manual.html Lista wszystkich poleceń specjalnych http://www.stack.nl/ dimitri/doxygen/commands.html

Wstęp Wprowadzenie Wprowadzenie Działanie jest częścią komponentu SDK do tworzenia aplikacji w języku Java firmy Sun Microsystems. Oznacza to, że nie wymaga instalowania żadnego dodatkowego oprogramowania i można się spodziewać, że narzędzia programistyczne dla środowiska Java będą go obsługiwać. Potrafi generować nie tylko dokumentację API programu, ale także dla calego pakietu lub zastawu pakietów. Działa pod wszystkimi popularnymi systemami operacyjnymi, jednak rozpoznaje tylko język Java, zaś standardowo generuje dokumentację jedynie w formacie HTML.

Opis Wprowadzenie Wprowadzenie Działanie wymaga kompilatora Javy, aby działać. Najpierw wykonuje część instrukcji javac, aby wygenerować drzewo analizy składniowej (parse tree). Na jego podstawie powstaje dokumentacja. Wykonywane instrukcje kompilatora zupełnie ignorują kod źródłowy, możliwe jest więc wygenerowanie dokumentacji dla pustego interfejsu, bez treści metod. Zastosowanie takiej techniki umożliwia tworzenie dokumentacji dokładnie odzwierciedlającej implementację - np. kompilator sam tworzy domyślne konstruktory dla klas, jeśli żaden nie został zdefiniowany, po czym umieszcza go w opisie API programu.

Konfiguracja Wprowadzenie Wprowadzenie Działanie Konfigurowanie działania wymaga zmiany jego kodu źródłowego, a konkretnie edycji plików Standard.java, ClassWriter.java, HtmlStandardWriter.java, PackageWriter.java, PackageIndexWriter.java Zazwyczaj jednak domyślna konfiguracja jest dobrze wypracowanym kompromisem. Zmiana wyglądu dokumentacji jest już dużo łatwiejsza - jako że dokument jest w formacie HTML, wystarczy wykorzystać pliki ze stylami CSS. W katalogu z wygenerowaną dokumentacją należy umieścić plik stylesheet.css i w standardowy sposób modyfikować wygląd poszczególnych znaczników HTML.

Wprowadzenie Działanie Za mało informacji? Strona domowa http://java.sun.com/j2se/javadoc/ Ładny opis na Wikipedii http://en.wikipedia.org/wiki/ Poradnik odnośnie konwencji pisania http://java.sun.com/j2se/javadoc/writingdoccomments/

Wprowadzenie Działanie Za mało informacji? Strona domowa http://java.sun.com/j2se/javadoc/ Ładny opis na Wikipedii http://en.wikipedia.org/wiki/ Poradnik odnośnie konwencji pisania http://java.sun.com/j2se/javadoc/writingdoccomments/

Wprowadzenie Działanie Za mało informacji? Strona domowa http://java.sun.com/j2se/javadoc/ Ładny opis na Wikipedii http://en.wikipedia.org/wiki/ Poradnik odnośnie konwencji pisania http://java.sun.com/j2se/javadoc/writingdoccomments/

Rozwiązanie komercyjne Koniec Doc-O-Matic Jest to komercyjny generator dokumentacji, działający wyłącznie pod systemem Windows. Jego zalety: Znaczną liczbę rozpoznawanych języków programowania. Spory wybór formatów wyjściowych dokumentacji. Jednym z formatów wyjściowych jest WinHelp. Potrafi naśladować działanie innych generatorów, aby uniknąć zmieniania konwencji pisania. Posiada miły dla oka interfejs. Dostarcza narzędzi do wizualizacji hierarchii klas i elastyczny system raportowania.

Ze względu na platformę Rozwiązanie komercyjne Koniec

Ze względu na obsługiwane języki Rozwiązanie komercyjne Koniec

Rozwiązanie komercyjne Koniec Ze względu na obsługiwane języki - c.d.

Ze względu na format wyjściowy Rozwiązanie komercyjne Koniec

Koniec Wprowadzenie Rozwiązanie komercyjne Koniec Dziękujemy za uwagę.