Czy istnieje oprogramowanie do wizualizacji skomplikowanego kodu zrodlowego?

0

Witam, mam pytanie - czy istnieje oprogramowanie do wizualizacji skomplikowanego kodu zrodlowego? Cos typu: kazda klasa to np kolko, jesli zawiera referencje do innych klas - kolka sa polaczone liniami czy strzalkami, pola czy metody jakostam wyswietlane, mozna przyblizyc czy oddalic widok zeby obejrzec szczegoly albo calosc, itd? Pytanie dodatkowe - jesli istnieje, to dla jakich jezykow? Interesuje mnie java, javascript, xml.
Ostatnie pytanie - czy trudno byloby napisac wlasny kawalek oprogramowania ktory by cos takiego robil? Zeby zobrazowac dzialanie: program skanuje dany katalog/system plikow -> wybiera pliki z kodem zrodlowym -> wylapuje odniesienia do innych plikow -> wszystko to rysuje jakos, odpowiednio laczy liniami. Pod koniec widac cala architekture skanowanego oprogramowania.
Programista jeszcze nie jestem, zaledwie przeczytalem ksiazke o javie i javascript/html/css, przerobilem troche przykladow i cwiczen. Jesli takie oprogramowanie nie isnieje - moglby ktos podpowiedziec jak zabrac sie za pisanie czegos takiego? Czy bedzie to bardzo trudne do zrealizowania?

Z gory dzieki za wszelka pomoc.

0

Hmm, dowolne porządne IDE? Polecam IntelliJ IDEA.

Są w niej bajery do robienia diagramów powiązań klas, aczkolwiek jeszcze mi się to nie przydało. Ale normalnie używa się zwykłych rzeczy typu np Find Usages.

0

A może UML ? Idealny do Javy. A soft to coś z Visual Paradigm UML....

0

Dzieki za podpowiedzi - sprawdze podane programy. Fajnie by tez bylo gdyby dany program mogl grupowac pliki np w zbiory odpowiedzialne za polaczenia z baza danych, czy za generowanie interfejsu uzytkownika. Takze przydatne byloby gdyby mogl tworzyc wizualizacje jednoczesnie javy, javascriptu i xml, poniewaz z tego sklada sie system ktory staram sie "ogarnac".

0

Fajnie by tez bylo gdyby dany program mogl grupowac pliki np w zbiory odpowiedzialne za polaczenia z baza danych, czy za generowanie interfejsu uzytkownika.

Chyba nie ma automatu który by to sensownie ogarniał. Takie grupowanie robi się na etapie projektowania systemu, np w Javie dedykuje się konkretne paczki Javowe/ moduły Mavenowe/ etc do konkretnych funkcjonalności.

0
  1. UML
  2. Da się dość prosto napisać narzędzie które takie cos tworzy
  3. Taki podział powinien wynikać ze struktury projektu, jak już Wibowit zauważył.

1 użytkowników online, w tym zalogowanych: 0, gości: 1