Przeglądarka klas
Przeglądarka klas to funkcja zintegrowanego środowiska programistycznego (IDE), która umożliwia programiście przeglądanie, nawigację lub wizualizację struktury kodu programowania obiektowego .
Historia
Większość nowoczesnych przeglądarek klasowych zawdzięcza swoje pochodzenie Smalltalk , jednemu z najwcześniejszych zorientowanych obiektowo języków i środowisk programistycznych. Typowa „pięciopanelowa” przeglądarka Smalltalk to seria poziomo stykających się paneli wyboru umieszczonych nad panelem edycji, panele wyboru pozwalają użytkownikowi najpierw określić kategorię, a następnie klasę, a następnie zawęzić wybór, aby wskazać konkretny metoda klasy lub instancji, której implementacja jest prezentowana w okienku edycji do wglądu lub modyfikacji.
Większość kolejnych języków zorientowanych obiektowo różniła się od Smalltalk tym, że były kompilowane i wykonywane w dyskretnym środowisku wykonawczym , zamiast być dynamicznie integrowane z monolitycznym systemem, takim jak wczesne środowiska Smalltalk. Niemniej jednak koncepcja przeglądarki tabelarycznej lub graficznej do nawigacji w hierarchii klas przyjęła się.
Wraz z popularnością C++ , która rozpoczęła się pod koniec lat 80., nowoczesne IDE dodały przeglądarki klas, początkowo w celu prostego poruszania się po hierarchiach klas, a później, aby pomóc w tworzeniu nowych klas. Wraz z wprowadzeniem języka Java w połowie lat 90. przeglądarki klasowe stały się oczekiwaną częścią każdego graficznego środowiska programistycznego.
W nowoczesnych IDE
Wszystkie główne środowiska programistyczne dostarczają w jakiś sposób przeglądarki klas, w tym
- Apple Xcode dla systemu macOS
- Cincom Smalltalk
- CodeWarrior dla systemu Microsoft Windows , klasycznego systemu Mac OS i systemów wbudowanych
- Dolphin Smalltalk
- Zaćmienie
- Embarcadero Delphi
- Embarcadero JBuilder
- IBM WebSphere
- POMYSŁ IntelliJ
- KDevelop
- Microsoft VisualStudio
- NetBeans
- Pharo Smalltalk
- Reflektor Red Gate .NET
- Smalltalk MT
- Piskliwy Smalltalk
- Oszczep o krok do przodu [1]
- Mocna mowa
- Prolog wizualny
- Visual Smalltalk Enterprise
- Zeus dla Windows IDE [2]
Nowoczesne przeglądarki klasy dzielą się na trzy ogólne kategorie: przeglądarki kolumnowe , przeglądarki konturów i przeglądarki diagramów .
Przeglądarki kolumnowe
Kontynuując tradycję Smalltalk, przeglądarki kolumnowe wyświetlają hierarchię klas od lewej do prawej w szeregu kolumn. Często skrajna prawa kolumna jest zarezerwowana dla metod instancji lub zmiennych klasy liścia.
Zarys przeglądarek
Systemy z korzeniami w systemie Microsoft Windows zwykle używają przeglądarki w formie konspektu, często z kolorowymi (choć tajemniczymi) ikonami oznaczającymi klasy i ich atrybuty.
Przeglądarki diagramów
We wczesnych latach XXI wieku przeglądarki klas zaczęły przekształcać się w narzędzia do modelowania, w których programiści mogli nie tylko wizualizować swoją hierarchię klas jako diagram, ale także dodawać klasy do swojego kodu, dodając je do diagramu. Większość z tych systemów wizualizacji została oparta na jakiejś formie Unified Modeling Language (UML).
Przeglądarki klasy refaktoryzacji
Ponieważ środowiska programistyczne dodają funkcje refaktoryzacji , wiele z tych funkcji zostało zaimplementowanych w przeglądarce klas, a także w edytorach tekstu. Przeglądarka refaktoryzująca może pozwolić programiście przenieść zmienną instancji z jednej klasy do drugiej, po prostu przeciągając ją w graficznym interfejsie użytkownika lub łączyć lub rozdzielać klasy za pomocą gestów myszy, a nie dużej liczby poleceń edytora tekstu.
Przeglądarki logiczne
Wczesnym dodatkiem do Digitalk Smalltalk była przeglądarka logiczna dla reguł Prologu zawartych w klauzulach w klasach. Nowsze przeglądarki logiki pojawiły się jako BackTalk i SOUL (Smalltalk Open Unification Language with LiCor lub biblioteka do rozumowania kodu) dla Squeak i VisualWorks Smalltalk. Przeglądarka logiczna zapewnia interfejs do Prologu zaimplementowanego w Smalltalk ( Lisp były często implementowane w Smalltalk). Porównywalną przeglądarkę można znaleźć w regułach ILog i niektórych systemach produkcyjnych OPS. Visual Prolog i XPCE zapewniają porównywalne przeglądanie reguł. W przypadku SOUL, VisualWorks jest wyposażony zarówno w przeglądarkę zapytań, jak i przeglądarkę klauzul; Backtalk zapewnia przeglądarkę ograniczeń. Komentarze Alana Kaya na temat podobieństw Smalltalk i Prologu pojawiły się w tym samym przedziale czasowym, ale z bardzo małą wzajemną inspiracją. Zainteresowanie prologiem XSB dla XUL i migracją AMZI! prolog do Eclipse IDE to aktualne ścieżki ewolucji przeglądarki logicznej. Reguły zamknięte w klasach można znaleźć w Logtalk i kilku wariantach OOP Prolog, takich jak LPA Prolog , Visual Prolog i AMZI! jak również głównego nurtu SICStus .
Wersje internetowe
Jeden wariant platformy internetowej Seaside w Smalltalk pozwala na otwieranie przeglądarki klas w czasie wykonywania w uruchomionej przeglądarce internetowej: edycja metody ma natychmiastowy efekt w uruchomionej aplikacji internetowej. W przypadku Vistascript (Vista Smalltalk) dla Microsoft IE7 kliknięcie prawym przyciskiem myszy w tle otwiera ClassHierarchyBrowser. Przypomina to trochę edytowanie JavaScript w przeglądarce internetowej lub klas Ruby , Groovy lub Jython w IDE działającym w JVM .