---
title: "Acoplamento sequencial"
type: "antipattern"
slug: "sequential-coupling"
url: "http://localhost:3000/pt-br/antipatterns/sequential-coupling.md"
description: "Problema de design na programação orientada a objetos"
---
# Acoplamento sequencial

> Problema de design na programação orientada a objetos

Na [programação orientada a objetos](https://en.wikipedia.org/wiki/Object-oriented%5Fprogramming "Object-oriented programming"), o **acoplamento sequencial** (também conhecido como **acoplamento temporal**) é uma forma de [acoplamento](https://en.wikipedia.org/wiki/Coupling%5F%28computer%5Fprogramming%29 "Coupling (computer programming)") em que uma [classe](https://en.wikipedia.org/wiki/Class%5F%28computer%5Fscience%29 "Class (computer science)") exige que seus [métodos](https://en.wikipedia.org/wiki/Method%5F%28computer%5Fscience%29 "Method (computer science)") sejam chamados em uma sequência específica. Isso pode ser um [antipadrão](https://en.wikipedia.org/wiki/Anti-pattern "Anti-pattern"), dependendo do contexto.

Métodos cujo nome começa com Init, Begin, Start, etc. podem indicar a existência de acoplamento sequencial.

Usando um [carro como analogia](https://en.wikipedia.org/wiki/Car%5Fanalogy "Car analogy"), se o usuário pisar no acelerador sem antes ligar o motor, o carro não trava, não falha nem lança uma exceção - ele simplesmente não acelera.

O **acoplamento sequencial** pode ser refatorado com o [padrão template method](https://en.wikipedia.org/wiki/Template%5Fmethod%5Fpattern "Template method pattern") para superar os problemas decorrentes do uso desse [antipadrão](https://en.wikipedia.org/wiki/Anti-pattern "Anti-pattern").
