Difference between revisions of "IDE Window: Extract Procedure/sk"

From Free Pascal wiki
Jump to navigationJump to search
m (vytvorenie / preklad)
 
m (Fixed syntax highlighting)
 
(2 intermediate revisions by 2 users not shown)
Line 5: Line 5:
  
 
Základný príklad:
 
Základný príklad:
<pascal>
+
<syntaxhighlight lang=pascal> procedure DoSomething;
procedure DoSomething;
 
 
  begin
 
  begin
 
   CallSomething;
 
   CallSomething;
  end;
+
  end;</syntaxhighlight>
</pascal>
 
  
 
Vyberte riadok "CallSomething;" a urobte Extrahovať procedúru. Vyskočí dialógové okno, v ktorom môžete zvoliť typ a meno procedúry, ktorá á byť vytvorená. Napríklad: procedure, "NewProc".
 
Vyberte riadok "CallSomething;" a urobte Extrahovať procedúru. Vyskočí dialógové okno, v ktorom môžete zvoliť typ a meno procedúry, ktorá á byť vytvorená. Napríklad: procedure, "NewProc".
  
 
Výsledok:
 
Výsledok:
<pascal>
+
<syntaxhighlight lang=pascal> procedure NewProc;
procedure NewProc;
 
 
  begin
 
  begin
 
   CallSomething;
 
   CallSomething;
Line 24: Line 21:
 
  begin
 
  begin
 
   NewProc;
 
   NewProc;
  end;
+
  end;</syntaxhighlight>
</pascal>
 
  
 
Môžete vidieť, že bola vytvorená nová procedúra "NewProc", do jej tela bol vložený výber a starý kód bol nahradený volaním novej procedúry.
 
Môžete vidieť, že bola vytvorená nová procedúra "NewProc", do jej tela bol vložený výber a starý kód bol nahradený volaním novej procedúry.
Line 32: Line 28:
  
 
Nástroj Extrahovať procedúru hľadá použité premenné a automaticky vytvára zoznam parametrov a lokálnych premenných. Príklad:
 
Nástroj Extrahovať procedúru hľadá použité premenné a automaticky vytvára zoznam parametrov a lokálnych premenných. Príklad:
<pascal>
+
<syntaxhighlight lang=pascal> procedure TForm1.DoSomething(var Erni, Bert: integer);
procedure TForm1.DoSomething(var Erni, Bert: integer);
 
 
  var
 
  var
 
   i: Integer; // Comment
 
   i: Integer; // Comment
Line 41: Line 36:
 
   |
 
   |
 
   end;
 
   end;
  end;
+
  end;</syntaxhighlight>
</pascal>
 
  
 
Vyberte slučku for a vytvorte novú procedúru "NewProc". Vo výbere je použitá len lokálna premenná i, tak bude presunutá do novej procedúry. Premenná Erni je použitá aj vo zvyšku kódu, tak sa z nej stane parameter.
 
Vyberte slučku for a vytvorte novú procedúru "NewProc". Vo výbere je použitá len lokálna premenná i, tak bude presunutá do novej procedúry. Premenná Erni je použitá aj vo zvyšku kódu, tak sa z nej stane parameter.
  
 
Výsledok:
 
Výsledok:
<pascal>
+
<syntaxhighlight lang=pascal> procedure NewProc(const Erni: integer);
procedure NewProc(const Erni: integer);
 
 
  var
 
  var
 
   i: Integer; // Comment
 
   i: Integer; // Comment
Line 61: Line 54:
 
   Erni:=Erni+Bert;
 
   Erni:=Erni+Bert;
 
   NewProc(Erni);
 
   NewProc(Erni);
  end;
+
  end;</syntaxhighlight>
</pascal>
 
  
 
Vidno ako je "i" presunutá do premennej, vrátane komentára, a z Erni je vytvorený parameter.
 
Vidno ako je "i" presunutá do premennej, vrátane komentára, a z Erni je vytvorený parameter.
  
Obmedzenia:<br>
+
;Obmedzenia:
 
Pascal je veľmi výkonný jazyk, tak nemožno očakávať, že to bude pracovať s každým kódom. Momentálne limity/ToDo:
 
Pascal je veľmi výkonný jazyk, tak nemožno očakávať, že to bude pracovať s každým kódom. Momentálne limity/ToDo:
 
* kontrola, či hranice výberu korenšpondujú s hranicou príkazu
 
* kontrola, či hranice výberu korenšpondujú s hranicou príkazu
 
* príkazy "with"
 
* príkazy "with"

Latest revision as of 10:43, 17 February 2020

Deutsch (de) English (en) español (es) suomi (fi) français (fr) русский (ru) slovenčina (sk) 中文(中国大陆)‎ (zh_CN)

(Extract Procedure)

Extrahovať procedúru vystrihne vybratú časť kódu Pascalu a z neho vytvára novú procedúru/metódu. Tento nástroj je užitočný na rozdelenie veľkých procedúr alebo na jednoduché vytvorenie novej procedúry z nejakého kódu.

Základný príklad:

 procedure DoSomething;
 begin
   CallSomething;
 end;

Vyberte riadok "CallSomething;" a urobte Extrahovať procedúru. Vyskočí dialógové okno, v ktorom môžete zvoliť typ a meno procedúry, ktorá á byť vytvorená. Napríklad: procedure, "NewProc".

Výsledok:

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

Môžete vidieť, že bola vytvorená nová procedúra "NewProc", do jej tela bol vložený výber a starý kód bol nahradený volaním novej procedúry.

Lokálne premenné a parametre:

Nástroj Extrahovať procedúru hľadá použité premenné a automaticky vytvára zoznam parametrov a lokálnych premenných. Príklad:

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

Vyberte slučku for a vytvorte novú procedúru "NewProc". Vo výbere je použitá len lokálna premenná i, tak bude presunutá do novej procedúry. Premenná Erni je použitá aj vo zvyšku kódu, tak sa z nej stane parameter.

Výsledok:

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

Vidno ako je "i" presunutá do premennej, vrátane komentára, a z Erni je vytvorený parameter.

Obmedzenia

Pascal je veľmi výkonný jazyk, tak nemožno očakávať, že to bude pracovať s každým kódom. Momentálne limity/ToDo:

  • kontrola, či hranice výberu korenšpondujú s hranicou príkazu
  • príkazy "with"