MMX Code Explorer

Aktuální verze RAD Studia 13 přinesla mnoho vylepšení. Co zde ale aktuálně nenajdeme, je podpora refaktoringu kódu. Jako refaktoring označujeme proces úpravy struktury zdrojového kódu, který zlepšuje čitelnost, udržovatelnost nebo výkon kódu, ale nemění přitom jeho funkčnost. Sbohem jsme museli dát i podpoře UML modelování. Pokud Vám minimálně jedna z těchto součástí chybí, doporučuji vyzkoušet MMX Code Explorer.

MMX Code Explorer poskytuje podporu refaktoringu pro Delphi 12 Athens a pro Delphi 13 Florence. Funkce MMX Exploreru jsou dostupné přímo v editoru (přes hlavní nebo vyskakovací nabídky, lištu rychlých voleb nebo klávesové zkratky). Jako praktický pomocník se MMX Explorer osvědčil i při práci s třídami.

Nástroj si můžete nainstalovat přímo z IDE prostřednictvím GetIt Package Managera (hlavní nabídka Tools => GetIt Package Manager…). K dispozici je pouze pro Delphi, C++Builder má integrovaný Visual Assist.

Funkce pro refaktoring kódu:

Extrakce metod (Ctrl+Shift+X): Vybraná část kódu se automaticky přesune do nové metody, čímž se zvyšuje modularita a čitelnost.

Přejmenování: Bezpečné přejmenování proměnných, parametrů nebo polí tříd s automatickou propagací změn v celém projektu.

Rychlé přidání nových proměnných, polí tříd nebo metod s inteligentním odhadem typu a umístění.

Obalení vybrané části kódu šablonami jako „try..finally“, „if..then“, nebo vlastními definovanými bloky.

Synchronizace Deklarace/Implementace (Ctrl+Shift+Y): Automatické sladění hlaviček metod mezi deklarací a implementací. Ušetříte tak čas potřebný pro přepnutí na implementaci nebo deklaraci a úpravu kódu.

Rozšiřující funkce pro editor

Pro všechny typy textových souborů (nejen pro zdrojové soubory v Pascalu) je k dispozici řada užitečných příkazů:

Většina příkazů je celkem standardní. Zaujali mě ale například příkazy pro práci s řádky kódu, jako „Duplicate“, nebo „Reverse Lines“. Za velmi dobrý nápad považuji „Reverse Assignment“ (Alt + Shhift + R), který prohodí strany v přiřazení. Tedy například z

currDodavatel.Dodavatel := q.FieldByName('DODAVATEL').AsString;

převede na

q.FieldByName('DODAVATEL').AsString := currDodavatel.Dodavatel;

Pokud potřebujete zkopírovat metodu nebo funkci, potěší vás volba Select Method Body – ta označí všechny řádky funkce nebo procedury mezi „begin“ a „end“.

Náhrada UML modelování

Podle společnosti Embarcadero nebyla možnost UML modelování příliš využívána. Důvod může být podobný, jako je tomu u databázových modelů. Ocení je zpravidla jen tam, kde pracují s rozsáhlými a často měnícími se systémy. Pro většinu vývojářů se tak jedná o „práci navíc“.

MMX Explorer přichází s mnohem praktičtějším konceptem. Nepředpokládá, že vývojář řeší objektový model aplikace komplexně, ale pomáhá při každodenní rutinně.

Strukturu tříd zobrazuje ne jako model, ale jako stromovou strukturu. MMX Explorer komunikuje s editorem, takže pokud pomocí Exploreru definujete nové třídy, rozhraní a metody, nebo je editujete, vše se propíše do zdrojového kódu. Při označení třídy, metody a podobně se zároveň kurzor v editoru přesune na odpovídající oblast kódu. Explorer podporuje také „Drag & Drop“ přeuspořádání.

Další výhodou jsou vlastní „průvodci“. Přehledně, na jednom formuláři, máte všechna použitelná nastavení, parametry a přepínače a nemusíte přemýšlet nad jejich korektním zápisem.

MMX umožňuje přetahování členů mezi třídami, jejich kopírování, přesun nebo konverzi (např. z procedury na metodu). To je extrémně užitečné při reorganizaci kódu. Zajímavá je rovněž možnost změny řazení funkcí a metod v sekci deklarace a implementace:

Úpravy lze samozřejmě provádět nejen v Exploreru, ale také přímo z Editoru kódu. Vývojář si tak může zvolit nejvhodnější přístup podle kontextu – buď rychlé úpravy v editoru, nebo strukturované změny v rámci tříd.

Závěr

MMX Code Explorer je silný nástroj, který dělá vývoj v Delphi pohodlnějším a efektivnějším. Je skvělým pomocníkem při vývoji a údržbě rozsáhlejších projektů. Autorem MMX Exploreru je Uwe Raabe. V roce 2018 převzal vývoj a distribuci tohoto nástroje od původního tvůrce – firmy ModelMaker Tools BV, která se začala soustředit na jiný produkt (SimpleMind). Od té doby je MMX Explorer dostupný zdarma, ale zůstává uzavřeným softwarem.