---
title: "C++26 DIS Oylamasının Sonucu ve Sözleşmelerin (Contracts) Geleceği"
url: https://blog.edumints.com/c-26-dis-oylamasinin-sonucu-ve-sozlesmelerin-contracts-gelecegi
category: "Backend"
date: 2026-10-26T09:05:00.555Z
publisher: Edumints Blog
lang: tr-TR
source_name: "Hacker News"
source_url: https://train-it.eu/blog/cpp26-contracts-the-ballot-result/
---

# C++26 DIS Oylamasının Sonucu ve Sözleşmelerin (Contracts) Geleceği

C++26, Uluslararası Taslak Standart (**DIS - Draft International Standard**) oylamasında başarısız oldu. Bilindiği kadarıyla bu, bir DIS oylamasını geçemeyen ilk C++ taslağıdır. C komitesi başkanı Robert Seacord, daha önce SC22 bünyesindeki hiçbir dil standardının oylamada başarısız olmadığını belirtirken; WG21 Yönlendirme Grubu üyesi Daveed Vandevoorde (**P5000R1**), önceki hiçbir C++ taslağının tek bir ret oyu bile almadığını ifade etti.

Bu sonuçla birlikte **reflection** (yansıma), `std::execution`, kütüphane güçlendirme (**library hardening**) ve **contracts** (sözleşmeler) gibi kritik özellikler henüz ISO tarafından onaylanmamış bir taslakta bekliyor ve gecikmenin ne kadar süreceği bilinmiyor. 23 Ekim 2026'da kapanan oylamanın sonuçları ertesi gün Robert Seacord tarafından paylaşıldı.

## Duruşum ve Yazılım Geliştirme Açısından Önemi

Oylama süreci devam ederken tarafsız kalan yazar, oylama bittikten sonra sözleşmeler (**contracts**) fikrini ne kadar desteklediğini ve C++20'den çıkarıldıklarından beri eksikliğini hissettiğini vurguluyor. LEWG (Kütüphane Evrimi Çalışma Grubu) üyesi olarak API tasarımı, iyi arayüzler ve kütüphaneler üzerine odaklanan bir geliştirici gözüyle sözleşmelerin iki temel faydası öne çıkıyor:

- **Doğrulama (Checking):** Program kendi varsayımlarını çalışma zamanında doğrudan doğrulayabilir.
- **Yaşayan Dokümantasyon:** Fonksiyon imzasındaki bir ön koşul (**precondition**) veya son koşul (**postcondition**), API tasarımcısının niyetini doğrudan koda kaydeder. Böylece kullanıcılar fonksiyonu nasıl kullanacaklarını bilir ve Doxygen veya cppreference.com gibi araçlar bunu doğrudan gösterebilir. Yorum satırları zamanla koddan kopup güncelliğini yitirebilirken, sözleşmeler kodun bir parçasıdır; derleyici tarafından fonksiyonla birlikte kontrol edilir ve kontroller açıkken bir ihlal durumunda yüksek sesle hata verir.

C++ dünyasında **Concepts** (Kavramlar), bir fonksiyonun kabul ettiği türler için derleme zamanında hem kontrol hem dokümantasyon sağlar. **Contracts** ise aynı görevi çalışma zamanındaki değerler için üstlenen eksik parçadır. `mp-units` gibi modern kütüphanelerde ve eğitimlerde şimdiden yer bulan bu özelliğin standartta kalması ve bu süreç sonunda tasarımının daha da iyileşmesi yazılım mühendisliği pratikleri açısından büyük önem taşıyor.

## Sayılarla Oylama Sonuçları

Bir DIS taslağının onaylanması için karşılaması gereken iki koşul vardır ve C++26 taslağı her ikisinde de başarısız olmuştur:

- **Oy kullanan (P-) üyelerin lehte oyları:** En az üçte iki (%66,6) olması gerekirken, 20 üyeden 12'si lehte oy kullandı (**%60**). Geçmesi için en az 14 kabul oyu gerekiyordu.
- **Oy kullanan tüm kurumların aleyhte (negatif) oyları:** En fazla dörtte bir (**%25**) olması gerekirken, 22 kurumdan 9'u ret oyu verdi (**%41**). En fazla 5 ret oyuna izin veriliyordu.

Bu iki koşuldan yalnızca birinin bile sağlanamaması taslağın reddedilmesi için yeterliydi.

## Hangi Ülkeler Nasıl Oy Kullandı?

Resmi sonuçlara göre ülkelerin oy dağılımı ve süreç şu şekildedir:

- **Hayır (Ret) Oyu Verenler (9 Ülke):** Danimarka, Finlandiya, İran, İtalya, Japonya, Lüksemburg, Romanya, İspanya ve İsveç. Bu ülkelerin tamamı oylarıyla birlikte yorumlarını da gönderdi.
- **Çekimser Kalanlar:** Fransa ve İrlanda çekimser kaldı ancak yorum gönderdi (böylece toplam 11 ülke yorum yapmış oldu). Polonya ve Amerika Birleşik Devletleri ise çekimser kaldı.

Yorumların metinleri henüz erişime açılmadı. **ISO/IEC Yönergeleri** (Bölüm 1, madde 2.6.5), oylamanın bitiminden itibaren 12 hafta içinde sonuçları, komite başkanının kararını ve yorumların tam metnini içeren kapsamlı bir rapor sunulmasını zorunlu kılar.

---

**Kaynak:** Hacker News (https://train-it.eu/blog/cpp26-contracts-the-ballot-result/)
**Yayıncı:** [Edumints Blog](https://blog.edumints.com) · Alıntılarken bu URL'ye bağlantı verin: https://blog.edumints.com/c-26-dis-oylamasinin-sonucu-ve-sozlesmelerin-contracts-gelecegi
