Difference between revisions of "IDE Window: Extract Procedure/es"
(New page: {{IDE Window: Extract Procedure}} category:Castellanocategory:Español Abstract: "Extract Procedure" takes some selected pascal statements and creates a new procedure/method from t...) |
|||
Line 1: | Line 1: | ||
{{IDE Window: Extract Procedure}} | {{IDE Window: Extract Procedure}} | ||
[[category:Castellano]][[category:Español]] | [[category:Castellano]][[category:Español]] | ||
− | |||
− | + | Resumen: "Extraer Procedimiento" toma las sentencias pascal seleccionadas y crea un nuevo procedimiento o método con ese código. Esta utilidad | |
− | < | + | takes some selected pascal statements and creates a new procedure/method from this code. Esta herramienta es útil para dividir procedimientos muy grandes, o para crear fácilmente un nuevo procedimiento a partir de algo de código. |
− | + | ||
+ | Ejemplo básico: | ||
+ | <delphi> procedure DoSomething; | ||
begin | begin | ||
CallSomething; | CallSomething; | ||
− | end; | + | end;</delphi> |
− | </ | + | |
Select the line "CallSomething;" and do Extract Proc. A dialog pop ups and | Select the line "CallSomething;" and do Extract Proc. A dialog pop ups and | ||
you can select the type and name of the procedure to create. For example: | you can select the type and name of the procedure to create. For example: |
Revision as of 09:37, 3 July 2008
│
Deutsch (de) │
English (en) │
español (es) │
suomi (fi) │
français (fr) │
русский (ru) │
slovenčina (sk) │
中文(中国大陆) (zh_CN) │
Resumen: "Extraer Procedimiento" toma las sentencias pascal seleccionadas y crea un nuevo procedimiento o método con ese código. Esta utilidad takes some selected pascal statements and creates a new procedure/method from this code. Esta herramienta es útil para dividir procedimientos muy grandes, o para crear fácilmente un nuevo procedimiento a partir de algo de código.
Ejemplo básico: <delphi> procedure DoSomething;
begin CallSomething; end;</delphi>
Select the line "CallSomething;" and do Extract Proc. A dialog pop ups and you can select the type and name of the procedure to create. For example: procedure, "NewProc". Result:
<pascal>
procedure NewProc; begin CallSomething; end; procedure DoSomething; begin NewProc; end;
</pascal>
You can see, that the new procedure "NewProc" was created with the selection as body and the old code was replaced by a call.
Local Variables and Parameters:
"Extract Proc" scans for used variables and automatically creates the
parameter list and local variables. Example:
<pascal>
procedure TForm1.DoSomething(var Erni, Bert: integer); var i: Integer; // Comment begin Erni:=Erni+Bert; for i:=Erni to 5 do begin | end; end;
</pascal>
Select the for loop and create a new Procedure "NewProc". The local variable i is only used in the selection, so it will be moved to the new procedure. Erni is also used in the remaining code, so it will become a parameter.
Result:
<pascal>
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;
</pascal>
You can see "i" was moved to the new procedure (Note: including its comment) and Erni.
Limitations:
Pascal is a very powerful language, so don't expect it will work with every code. Current limits/ToDos:
- check if selection bounds on statement bounds
- "with" statements