---
title: "Intégrer une variable temporaire"
type: "refactoring-technique"
slug: "inline-temp"
url: "http://localhost:3000/fr/inline-temp.md"
category: "Composing Methods"
description: "Problème : Vous avez une variable temporaire à laquelle est affecté le résultat d’une simple expression, et rien de plus. Solution : Remplacez les références à cette variable par l’expression elle-même."
languages: ["java", "csharp", "php", "python", "typescript"]
---
# Intégrer une variable temporaire

> Problème : Vous avez une variable temporaire à laquelle est affecté le résultat d’une simple expression, et rien de plus. Solution : Remplacez les références à cette variable par l’expression elle-même.

## Problem

Vous avez une variable temporaire à laquelle est affecté le résultat d’une simple expression, et rien de plus.

## Solution

Remplacez les références à cette variable par l’expression elle-même.

## Why Refactor

L’intégration des variables locales s’utilise presque toujours dans le cadre de [Remplacer une variable temporaire par une requête](/fr/replace-temp-with-query) ou pour préparer le terrain à [Extraire une méthode](/fr/extract-method).

## Benefits

* Cette technique de refactoring n’apporte presque aucun avantage en soi. Cependant, si la variable reçoit le résultat d’une méthode, vous pouvez légèrement améliorer la lisibilité du programme en vous débarrassant de la variable superflue.

## How to Refactor

1. Trouvez tous les endroits qui utilisent la variable. À la place de la variable, utilisez l’expression qui lui avait été affectée.
2. Supprimez la déclaration de la variable ainsi que sa ligne d’affectation.
## Relations

**Helps you do**

- [Remplacer une variable temporaire par une requête](/fr/replace-temp-with-query.md)
- [Extraire une méthode](/fr/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;
}
```

