Sign in Join
Wiki copytemporary

IDE Window: Extract Procedure/de

Deutsch · English · Español · Français · Slovenčina · Suomi · Русский · 中文(中国)

Kurz gefasst: "Prozedur extrahieren" nimmt einige ausgewählte Pascal Anweisungen und erzeugt eine neue Prozedur/Methode aus diesem Code. Dieses Werkzeug ist hilfreich, um große Prozeduren aufzuteilen oder um leicht eine neue Prozedur aus einigem Code zu erzeugen.

Ein einfaches Beispiel:

pascal
procedure DoSomething;
     begin
       CallSomething;
     end;

Markieren sie die Zeile "CallSomething;" und wählen "Prozedur extrahieren". Ein Dialog erscheint und sie können den Typ und Namen der zu erstellenden Prozedur wählen. Zum Beispiel: procedure, "NewProc". Ergebnis:

pascal
procedure NewProc;
     begin
       CallSomething;
     end;
     
     procedure DoSomething;
     begin
       NewProc;
     end;

Sie können sehen, dass die neue Prozedur "NewProc" erzeugt wurde mit der Abgrenzung als Rumpf und der alte Code durch einen Aufruf ersetzt wurde.

Lokale Variablen und Parameter:
"Prozedur extrahieren" scannt nach verwendeten Variablen und erzeugt automatisch die Parameterliste und lokalen Variablen. Beispiel:

pascal
procedure TForm1.DoSomething(var Erni, Bert: integer);
     var
       i: Integer; // Kommentar
     begin
       Erni:=Erni+Bert;
       for i:=Erni to 5 do begin
       |
       end;
     end;

Markieren sie die for Schleife und erzeugen eine neue Prozedur "NewProc". Die lokale Variable i wird nur in der Auswahl verwendet, daher wird sie in die neue Prozedur verschoben. Erni wird auch im übrigen Code verwendet. Daher wird er ein Parameter.

Ergebnis:

pascal
procedure NewProc(const Erni: integer);
     var
       i: Integer; // Kommentar
     begin
       for i:=Erni to 5 do begin
       |
       end;
     end;
     
     procedure TForm1.DoSomething(var Erni, Bert: integer);
     begin
       Erni:=Erni+Bert;
       NewProc(Erni);
     end;

Sie können sehen, dass "i" in die neue Prozedur verschoben wurde (Anmerkung: inklusive des Kommentars) und Erni.

Grenzen:

Pascal ist eine sehr mächtige Sprache. Erwarten sie daher nicht, dass es mit jedem Code funktioniert. Aktuelle Limits/ToDos:


From the Free Pascal wiki, page "IDE Window: Extract Procedure/de", as the Internet Archive kept it on 2021-04-21, last changed on 2020-05-09. Copyright stays with the author who wrote it, according to the old wiki's Licensing page. If you have concerns about this material, message the admin.

Revision 2, last changed by WikiArchive .

Talk about this page

Nobody has opened a bench for this page yet. Sign in to open one.