---
title: "Incorporar variable temporal"
type: "refactoring-technique"
slug: "inline-temp"
url: "http://localhost:3000/es/inline-temp.md"
category: "Composing Methods"
description: "Problema: Tienes una variable temporal a la que se asigna el resultado de una expresión simple y nada más. Solución: Sustituye las referencias a la variable por la propia expresión."
languages: ["java", "csharp", "php", "python", "typescript"]
---
# Incorporar variable temporal

> Problema: Tienes una variable temporal a la que se asigna el resultado de una expresión simple y nada más. Solución: Sustituye las referencias a la variable por la propia expresión.

## Problem

Tienes una variable temporal a la que se asigna el resultado de una expresión simple y nada más.

## Solution

Sustituye las referencias a la variable por la propia expresión.

## Why Refactor

La incorporación de variables locales casi siempre se utiliza como parte de [Reemplazar variable temporal con consulta](/es/replace-temp-with-query) o para allanar el camino a [Extraer método](/es/extract-method).

## Benefits

* Esta técnica de refactorización apenas ofrece beneficio por sí sola. No obstante, si a la variable se le asigna el resultado de un método, puedes mejorar marginalmente la legibilidad del programa deshaciéndote de la variable innecesaria.

## How to Refactor

1. Busca todos los lugares que usan la variable. En lugar de la variable, usa la expresión que se le había asignado.
2. Elimina la declaración de la variable y su línea de asignación.
## Relations

**Helps you do**

- [Reemplazar Variable Temporal por Consulta](/es/replace-temp-with-query.md)
- [Extraer método](/es/extract-method.md)

## Code Examples

### java

```java
// Before
boolean hasDiscount(Order order) {
  double basePrice = order.basePrice();
  return basePrice > 1000;
}

// After
boolean hasDiscount(Order order) {
  return order.basePrice() > 1000;
}
```

### csharp

```csharp
// Before
bool HasDiscount(Order order)
{
  double basePrice = order.BasePrice();
  return basePrice > 1000;
}

// After
bool HasDiscount(Order order)
{
  return order.BasePrice() > 1000;
}
```

### php

```php
// Before
$basePrice = $anOrder->basePrice();
return $basePrice > 1000;

// After
return $anOrder->basePrice() > 1000;
```

### python

```python
// Before
def hasDiscount(order):
    basePrice = order.basePrice()
    return basePrice > 1000

// After
def hasDiscount(order):
    return order.basePrice() > 1000
```

### typescript

```typescript
// Before
hasDiscount(order: Order): boolean {
  let basePrice: number = order.basePrice();
  return basePrice > 1000;
}

// After
hasDiscount(order: Order): boolean {
  return order.basePrice() > 1000;
}
```

