# BDD nedir?

> Behavior-Driven Development

**Kategori:** Geliştirme  
**Son güncelleme:** 2026-07-12

Yazılımın nasıl davranması gerektiğini herkesin anlayabileceği basit cümlelerle tanımlayarak geliştirme süreci.

## Tanım
BDD, yazılım geliştirme sürecinde teknik olmayan kişilerin de sürece dahil olmasını sağlar. Yazılımın teknik detaylarından ziyade, kullanıcının ne yapacağı ve sistemin buna nasıl tepki vereceği üzerine odaklanır. Bu yöntem sayesinde geliştiriciler ve iş birimleri aynı dili konuşur.

## Bir benzetmeyle
Bir yemek tarifi düşünün; sadece malzemeleri yazmak yerine, yemeğin piştiğinde nasıl kokması ve tadının nasıl olması gerektiğini herkesin anlayacağı bir dille anlatmaya benzer.

## Nasıl çalışır?
Önce sistemin beklenen davranışı 'Eğer kullanıcı X yaparsa, Y sonucu oluşmalı' şeklinde yazılır. Ardından bu cümleler kodlanarak test edilir. Eğer kod bu davranışı karşılıyorsa yazılım doğru çalışıyor demektir.

## Nerede kullanılır?
Yazılım projelerinde, özellikle karmaşık özelliklerin geliştirilmesinde ve hata payını düşürmek için kullanılır.

## Sık karıştırılanlar
TDD ile karıştırılabilir; TDD kodun sağlamlığına odaklanırken, BDD işlevin kullanıcı gözündeki davranışına odaklanır.

## Sıkça sorulanlar

**BDD neden önemlidir?**  
Teknik ekip ile iş ekibi arasındaki iletişim kopukluğunu giderir.

**BDD için özel bir dil mi gerekir?**  
Genellikle Gherkin gibi, İngilizceye çok yakın ve herkesin okuyabileceği basit bir sözdizimi kullanılır.

## İlgili terimler
- [TDD](/dictionary/tdd/)
- [Testing Framework](/dictionary/testing-framework/)
- [Spec-driven Development](/dictionary/spec-driven-development/)

---
Kaynak: TreScout Teknoloji Sözlüğü · https://trescout.com/dictionary/bdd/
TreScout her gün GitHub, Hacker News ve HuggingFace trendlerini Türkçe özetler.
